pdiddo
Goto Top

Batch minimiert starten

Hi,

ich möchte gerne mein Batch minimiert starten. Es soll kein schwarzes Fenster aufploppen!

Ich möchte aber nicht mit einer batch "b.bat" eine batch "a.bat" starten, da das schwarze Fenster von b.bat (wenn auch nur kurz) aufploppt. --> also start /min a.bat

Content-ID: 339828

Url: https://administrator.de/contentid/339828

Ausgedruckt am: 22.11.2024 um 17:11 Uhr

rubberman
Lösung rubberman 05.06.2017 um 17:55:01 Uhr
Goto Top
Erstelle eine Verknüpfung zu deiner Batchdatei und stelle dort in den Eigenschaften bei "Ausführen:" Minimiert ein.

Grüße
rubberman
pdiddo
pdiddo 05.06.2017 um 17:59:40 Uhr
Goto Top
Bester Weg!

Und ich hab mich blöd gegoogelt!

Aber rein aus interessen, kann ich ich meiner a.bat einen Befehl einfügen, der sie dann beim ausführen minimiert ausführt?

LG

pdiddo
rubberman
rubberman 05.06.2017 um 18:06:55 Uhr
Goto Top
Nein. Du kannst zwar den Batchcode quasi aus sich selbst minimiert neu starten, da bist du aber nach wie vor beim Aufblitzen des Fensters.
Andere Möglichkeiten wären, die Datei aus einem Script zu starten das kein Fenster hat (zB. VBScript) oder nicht interaktiv aus der Aufgabenplanung. Ist aber wieder aufwändiger als mit der Verknüpfung ...

Grüße
rubberman
Hovawart
Hovawart 20.02.2020 um 15:53:17 Uhr
Goto Top
Der Beitrag hier ist zwar schon eine Weile alt, auch kann nachfolgende Lösung nicht das "Aufploppen" verhindern.
Allerdings erspart sie den zweiten Batch zum minimierten Aufruf, denn sie ruft den gleichen Batch aus sich selbst heraus noch einmal auf.

if not defined MINI set mini=1 & start "" /min "%~dpnx0" %* & exit  
... Produktiv-Code des Scripts

1. if not defined MINI set mini=1 verhindert den mehrfachen Neustart bzw. eine Endlosschleife, denn sobald MINI definiert ist (=1), wird der weitere Code der Zeile nicht mehr ausgeführt und das nachfolgende Skript abgearbeitet (soll der Batch in der selben Umgebung mehrfach minimiert gestartet werden, sollte "MINI"an anderer Stelle wieder "geleert" werden (set MINI=), damit der minimierte Aufruf in der gleichen Umgebung nicht dauerhaft verhindert wird.)
2. start "" /min "%~dpnx0" %* startet den Batch aus sich selbst heraus noch einmal
2a. "" ist der leere Titel des CMD-Fensters (Der Titel kann in Anführungszeichen angegeben werden)
2b. /min ist die Anweisung für den Start als minimiertes Fenster
2c. "%~dpnx0" übergibt den komplette Pfad des Batchaufrufes
2d. %* übergibt alle beim ersten Aufruf definierten Startparameter (%1, %2, ...)
2e. & exit beendet den ursprünglichen, ersten Script-Aufruf (Kurz "aufploppendes" Fenster)

Fundstelle: https://stackoverflow.com/questions/9232308/how-do-i-minimize-the-comman ...