Taskpalner - Batchdatei minimiert

cumulonimbus8

Fleet Admiral
Registriert
Apr. 2012
Beiträge
19.326
Hallo!

Mir scheint ich sehe den Wald vor lauter Bäumen nicht - oder laufe ich da auf eine Mine auf? Ich meiner nämlich mich erinnern zu können, dass dies hier eine Macke des Taskplaners ist.

Der Taskplaner öffnet eine Batchdatei als CMD-Fenster (C:\WINDOWS\system32\cmd.exe /c W:\Aktion\ED\EDStep.bat) wobei allein das /c nötig ist damit sich die Aktion wieder selbstständig beendet. Ein EXIT in der Batch wird geflissentlich ignoriert.

Nun hätte ich das gerne dezent minimiert damit mir das Fenster nicht vor die Nase poppt. Den Taskplaner wie folgt zu füttern scheitert weil das Fenster offen bleibt: C:\WINDOWS\system32\cmd.exe /c start "EDStep" /low /min W:\Aktion\ED\EDStep.bat
Das /low wäre mir durchaus recht da eine mit Kopieren beschäftige ›DOS-Box‹ ihren Tribut fordert.

Den unteren Befehl über Start • Ausführen abzusetzen funktioniert weil sich diese Eingabe nach Auslösen freundlicherweise wieder verabschiedet. Der Task-Planer wartet aber auf das Ende des Tasks und START scheint so eine Selbstbeendigung nicht bewerkstelligen zu können. START direkt im Taskplaner geht natürlich auch wieder nicht…

Ist mein Wunsch dennoch irgendwie zu erfüllen oder komme ich um das Fenster nicht herum?

CN8
 
Ich mag es vielleicht nicht ganz verstanden haben, aber was spricht dagegen, die BAT-Datei direkt auszuführen?
Dann geht das Cmd auch nach Ausführung wieder zu...
 
Dagegen spricht recht einfach die Tatsache, dass es automatisch (zeitgesteuert) passieren soll & muss ;)

CN8
 
In meiner Windows 8.1 Aufgabenplanung kann ich ohne Probleme eine BAT-Datei als ausführbare Datei/Script auswählen.
Ich meine mal, dass das schon bei Windows XP so ging?
 
Sollte es so einfach sein?!?
Ich lüge mal dreist, dass ich zwar eine Programm, aber keine Verknüpfung per TaskPlaner in Gang setzen kann. Hier an 8.1 kann ich das nicht schlüssig testen.

@3murmeln
Der Vollständigkeit halber: genau so mache ich es ja jetzt ;)

Die besagte Verknüpfung manuell zu starten ist kein Thema, da habe ich diverse Kandidaten liegen.
Deswegen mal anders angepackt - ich könnte (was m.E. nach keinen Unterschied zu .BAT macht..?!) eine .CMD auslösen. Oder beispielsweise ein .VBS als Container die auch nur (minimiert halt) die Batch anstößt. Gibt es da Erfahrungswerte? Vielleicht mir noch anderen Containern die so schnell wieder weg sind, dass sie nicht auffallen?

CN8
 
mit Start löst du eine 2. Instanz aus, die auf das Ende der 1. Instanz wartet. Start bietet aber die Möglichkeit, auch in der 1. Instanz zu arbeiten.

Mit VBS kann man das aber sicher eleganter lösen, als mit Batch.
 
VBS startet also die Batch… Und der TaskPlaner direkt die VBS, oder braucht das auch wieder eine Startumgebung (nie ist XP zur Hand wenns mans bräuchte…)
Syntax für die VBS habe ich, das wäre weiter kein Problem.

CN8
 
ich meinte das eigendlich so, statt der Batch einen VB Script schreiben, wenn es möglich ist von den Befehlen in der Batch. Eine andere Möglichkeit wäre Cmdow zu verwenden.

Beispiel um eine Batch per Cmdow versteckt zu starten.

Cmdow /Run /Hid X:\Deinebatch.bat

http://www.commandline.co.uk/cmdow/
 
Klingt nett, das Tool. Aber ich glaube, ich schaffs auch rein mit Bordwerkzeug; ein Test schien gut zu verlaufen :)

Task [Ausführen:] = W:\Aktion\ED\EDStep.VBS
(Nicht mal Aufrufpfade zu CMD als Startrampe nötig!)

W:\Aktion\ED\EDStep.VBS:
Code:
Dim WSHShell
Set WSHShell = WSCRIPT.CreateObject("WScript.Shell")
WshShell.Run "W:\Aktion\ED\EDStep.bat", 2, True
Was dann in der W:\Aktion\ED\EDStep.bat steht lasse ich mal lieber weg… …und schon fragt sich der Bastler, ob sich den Inhalt der Batch nicht gleich als VBS-Code realisieren sollte :heilig:

CN8
 
Zurück
Oben