Batch Datei Problem
Tach,
ich möchte in einer Batch Datei zwei Programme starten. Das zweite soll aber erst starten, wenn das erste geschloßen wird!
Vorab: Ich nutze Vista, die User XP Pro.
Ich nutze folgenden Code in der Batch Datei:
start /WAIT C:\Pfad\Datei.lnk <-- (.lnk weil die .exe noch einige Paramater besitzt)
start /WAIT \\Hh-2k3-ts1\freigegebener ordner\Datenbank.mde
Der Sinn der Sache ist, ich muss einen Datenbankabgleich nach Programmschluß tätigen. Also nachdem Programm 1 geschloßen wird, öffnet sich die .mde auf unserem Terminalserver und eine Datenbanksynchronisation findet statt. Dies sollte nach Möglichkeit auch automatisch geschehen, sprich nach Beendigung des Programms.
Es wäre natürlich möglich eine bat Datei zu schreiben, bei der der User den Abgleich manuell startet aber dies kommt für mich bei den Usern nicht in Frage.
Bei mir funktioniert der oben aufgeführte Code ohne Probleme. Bei den XP Usern allerdings werden beide Befehle (Programme) nacheinander gestartet und nicht wie gewollt, das 2. nach dem 1.
Woran kann das liegen bzw. wie kann ich dieses Problem umgehen? Evtl. mit einer Schleife? Und wenn ja, wie muss sie aussehen?
Bin für jeden Rat dankbar!
Gruß,
hufi
ich möchte in einer Batch Datei zwei Programme starten. Das zweite soll aber erst starten, wenn das erste geschloßen wird!
Vorab: Ich nutze Vista, die User XP Pro.
Ich nutze folgenden Code in der Batch Datei:
start /WAIT C:\Pfad\Datei.lnk <-- (.lnk weil die .exe noch einige Paramater besitzt)
start /WAIT \\Hh-2k3-ts1\freigegebener ordner\Datenbank.mde
Der Sinn der Sache ist, ich muss einen Datenbankabgleich nach Programmschluß tätigen. Also nachdem Programm 1 geschloßen wird, öffnet sich die .mde auf unserem Terminalserver und eine Datenbanksynchronisation findet statt. Dies sollte nach Möglichkeit auch automatisch geschehen, sprich nach Beendigung des Programms.
Es wäre natürlich möglich eine bat Datei zu schreiben, bei der der User den Abgleich manuell startet aber dies kommt für mich bei den Usern nicht in Frage.
Bei mir funktioniert der oben aufgeführte Code ohne Probleme. Bei den XP Usern allerdings werden beide Befehle (Programme) nacheinander gestartet und nicht wie gewollt, das 2. nach dem 1.
Woran kann das liegen bzw. wie kann ich dieses Problem umgehen? Evtl. mit einer Schleife? Und wenn ja, wie muss sie aussehen?
Bin für jeden Rat dankbar!
Gruß,
hufi
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 61130
Url: https://administrator.de/contentid/61130
Ausgedruckt am: 22.11.2024 um 20:11 Uhr
17 Kommentare
Neuester Kommentar
Moin,
Das wird es höchstwahrscheinlich sein.
Die Verknüpfung ist kein eigenes Programm bzw. beendet sich mit dem Moment, in dem die exe des Programms aufgerufen wird. Damit ist die aufgerufene .lnk nicht mehr aktiv und somit merkt auch start /WAIT, dass die .lnk nicht mehr ausgeführt wird und führt den nächsten Befehl aus.
Wenn du die exe des ersten Programms direkt, mit den Parametern direkt dahinter, in der bat aufrufst, sollte es eigentlich funktionieren, sofern die exe nicht auch wiederum nur eine ander bzw. sich selbst mit anderen / weiteren Parametern aufruft (habe ich schon öfters in Setups erlebt, dass z.B. die exe nur die msi mit Parametern aufgerufen hat)
Versuche also einfach mal den direkten Aufruf aus der bat. Es sollte funktionieren.
MfG,
VW
[edit]
mal wieder nur 2. Post. Ich bin immernoch zu langsam bzw. schreib zu viel.
[/edit]
eventuell liegt es auch daran, dass du eine Verknüpfung aufrufst.
Das wird es höchstwahrscheinlich sein.
Die Verknüpfung ist kein eigenes Programm bzw. beendet sich mit dem Moment, in dem die exe des Programms aufgerufen wird. Damit ist die aufgerufene .lnk nicht mehr aktiv und somit merkt auch start /WAIT, dass die .lnk nicht mehr ausgeführt wird und führt den nächsten Befehl aus.
Wenn du die exe des ersten Programms direkt, mit den Parametern direkt dahinter, in der bat aufrufst, sollte es eigentlich funktionieren, sofern die exe nicht auch wiederum nur eine ander bzw. sich selbst mit anderen / weiteren Parametern aufruft (habe ich schon öfters in Setups erlebt, dass z.B. die exe nur die msi mit Parametern aufgerufen hat)
Versuche also einfach mal den direkten Aufruf aus der bat. Es sollte funktionieren.
MfG,
VW
[edit]
mal wieder nur 2. Post. Ich bin immernoch zu langsam bzw. schreib zu viel.
[/edit]
Habe noch folgendes gefunden:
Selbst die INI-Dateien können einen zum Narren halten.
Z.B. werden im Falle Strobel Aufrufe einer Access-Runtime-Anwendung sowohl vom Windows-Programm-Manager wie auch vom DOS-Shell-Menü ausgeführt. Die Anweisung der auszuführenden Befehleszeile
c:\strobel\msarn200.exe e:\bestatt\bestatt.mdb /ini e:\bestatt\bestatt.ini
sowie das entsprechende Arbeitsverzeichnis 'e:\bestatt' sind in beiden Fällen identisch hinterlegt. Trotzdem gelingt der Aufruf aus dem DOS-Shell-Menü heraus nicht so richtig, da in der ini-Datei hinterlegte Bezüge auf z.B. Icons, Bibliotheksdatenbanken und SplashUp-Logos nicht gefunden werden, während das vom Programm-Manager aus gelingt. Auf Jangos Netzmaschine kam es sogar zu so richtig schönen Netz-###fehlern. Erst das explizite Hinterlegen der entsprechenden Pfadangaben für diese Dateien in dieser ini-Datei beendete diesen Spuk.
Den ganzen Artikel findest du hier:
http://www.breitenbuecher.de/info/infobase/daten/S018.HTM
Viel Glück!
- * * *
Selbst die INI-Dateien können einen zum Narren halten.
Z.B. werden im Falle Strobel Aufrufe einer Access-Runtime-Anwendung sowohl vom Windows-Programm-Manager wie auch vom DOS-Shell-Menü ausgeführt. Die Anweisung der auszuführenden Befehleszeile
c:\strobel\msarn200.exe e:\bestatt\bestatt.mdb /ini e:\bestatt\bestatt.ini
sowie das entsprechende Arbeitsverzeichnis 'e:\bestatt' sind in beiden Fällen identisch hinterlegt. Trotzdem gelingt der Aufruf aus dem DOS-Shell-Menü heraus nicht so richtig, da in der ini-Datei hinterlegte Bezüge auf z.B. Icons, Bibliotheksdatenbanken und SplashUp-Logos nicht gefunden werden, während das vom Programm-Manager aus gelingt. Auf Jangos Netzmaschine kam es sogar zu so richtig schönen Netz-###fehlern. Erst das explizite Hinterlegen der entsprechenden Pfadangaben für diese Dateien in dieser ini-Datei beendete diesen Spuk.
- * * *
Den ganzen Artikel findest du hier:
http://www.breitenbuecher.de/info/infobase/daten/S018.HTM
Viel Glück!