Ich habe bereits das opsi-Handbuch und die Suchfunktion hier verwendet, aber leider hat mir beides nicht geholfen.
Es geht um den Modifier /WaitForProcessEnding für ein WinBatch_ Abschnitt.
Ursprünglich bin ich davon ausgegangen, dass dieser Befehl das Opsi-Skript so lange "anhält", wie ein bestimmter Prozess läuft. Sobald dieser abgeschlossen ist, wird das Skript weiter ausgeführt. Hier schon die erste Frage, ist das überhaupt so?
Ich habe bisher das folgende Konstrukt:
Code: Alles auswählen
[Actions]
Files_Copy
WinBatch_Install /WaitForProcessEnding "Setup.exe"
Files_Cleanup
[WinBatch_Install]
Setup.exe mit den Silentparametern
Opsi startet die Installation und diese läuft problemlos durch. So weit so gut, jedoch registriert opsi nicht, dass die Installation abgeschlossen ist. Daher kam mir die Idee, dass ich dafür den /WaitForProcessEnding Befehl verwende. Wenn ich das Skript ausführe, wird auch der Setup.exe Prozess erfolgreich erkannt und beobachtet. Es wird sogar registriert, dass der Prozess beendet wurde, aber das Skript läuft einfach nicht weiter und führt mein Files_Cleanup nicht aus. Ich kann das natürlich mit einem TimeOut umgehen, aber dann kann ich mir eigentlich auch das WaitForProcessEnding sparen...
Das ist ein Ausschnitt aus meinem Log:
Code: Alles auswählen
Waiting until process "Setup.exe" started and has ended
Start process as invoker: SYSTEM
Waiting for start if "Setup.exe"
Waiting for process "Setup.exe" ending
Process "Setup.exe" ended
VG
Daniel