Aktionen

Batch Programm nur starten wenn es noch nicht gestartet ist - zum Beispiel in Aufgabenplanung Task Scheduler

Aus znilwiki

Version vom 6. August 2017, 20:51 Uhr von BLinz2 (Diskussion | Beiträge) (Textersetzung - „<comments>“ durch „<comments />“)
(Unterschied) ← Nächstältere Version | Aktuelle Version (Unterschied) | Nächstjüngere Version → (Unterschied)

Nachfolgende Batch-Datei startet Notepad.exe nur wenn noch kein Prozess mit diesem Namen läuft.

@echo off
REM Beispiel-Batch das ein Programm nur startet wenn es noch nicht läuft
REM 2016 Bernhard Linz @ znil.net

REM Testen ob Notepad.exe schon gestartet ist:
tasklist | findstr "notepad.exe"
IF ERRORLEVEL 1 (
    REM Starten was auch immer wir starten wollen
    echo Starte Notepad.exe
    c:\Windows\System32\notepad.exe
    REM Soll die Batch nicht auf die Ausführung warten dann
    REM c:\Windows\System32\notepad.exe
    REM exit 0
) ELSE (
    REM etwas anderes tun
    echo Notepad.exe ist schon aktiv!
    REM exit 1
)

Die Zeilen mit exit solltet Ihr scharf schalten (REM entfernen) wenn Ihr diese Batch über die Aufgabenplanung / Task Scheduler von Windows startet.
Dadurch ist das saubere beenden gesichert - Zudem erhaltet Ihr den Status in der Aufgabenplanung zurück.

Wenn Ihr eine .cmd oder .bat über die Windows Aufgabenplanung ab Windows Vista / Windows Server 2008 starten wollt so müsst Ihr zwingend die cmd.exe mit angeben:
ClipCapIt-160908-114843.PNG
Bei Programm also

C:\Windows\system32\cmd.exe

und bei Argumente

/c Pfad-zur-eurer-Batch-Datei




Loading comments...