Workflow-Banner

Verknüpfung: Prüfen ob Programm schon läuft

Hier nur kurz und knapp eine von vielen Möglichkeiten vorgestellt, mit denen man Windows-Verknüpfungen mit PowerShell-Befehlen verbessern kann.

Problemstellung

Cloud-Dienste wie beispielsweise DropBox, OneDrive und OwnCloud bieten Client-Programme unter Windows an. Startet man diese Programme über die vorgegebenen Verknüpfungen werden zum Beispiel bei OneDrive und DropBox die synchronisierten Ordner geöffnet, wenn das Programm bereits lief. Bei OwnCloud ist das im Moment aber leider nicht der Fall.

Lösungsansatz

Verknüpfung dahingehend verändern, dass zunächst abgefragt wird, ob das Programm schon läuft. Wenn ja, dann soll der synchronisierte Ordner geöffnet werden. Dafür bearbeitet man die OwnCloud-Verknüpfung und fügt eine If-Kondition ein:

Ziel: powershell if(Get-Process owncloud*){ ii 'D:\OwnCloud' } else { ii 'C:\Program Files (x86)\ownCloud\owncloud.exe'}

Erklärung

  • Der Befehl „powershell“ wird in den Standardverzeichnissen gesucht und automatisch in den vollen Pfad umgewandelt
  • Get-Process owncloud* sucht nach Prozessen, die dem Suchmuster entsprechen und gibt nichts zurück, falls nichts gefunden wird
  • ii ist ein Alias für Invoke-Item und führt eine Standardaktion auf das im Pfad angegebene Element aus (wie ein Doppelklick)
  • Anweisung: wenn Prozess gefunden, dann Ordner öffnen, sonst Prozess starten

Links

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.