phirie
Goto Top

Msiexec -forcerestart funktioniert nicht

Guten Morgen,

ich habe folgende Batchdatei erstellt, diese wird als Startskript vor der Benutzeranmeldung ausgeführt. Das funktioniert auch alles bestens aber ich habe ein Problem. Nachdem der SafeGuard Client installiert wird macht der Rechner keinen Neustart obwohl ein /forcerestart mitgegeben wurde. Bei einem anderen Rechner wollte er den Restart machen aber währen er den Neustart vorbereitete lief das Skript weiter und wollte die Client Configuration installieren, kann ich das mit einer Pause verhinder ( Ping auf Localhost) oder einfach mit exit das Skript an dieser Stelle beenden

Im folgenden mein Skritp

@echo off
echo===============================================
echo SafeGuard Update auf Version 5.50 laeuft
echo BITTE SCHALTEN SIE DEN COMPUTER NICHT AB
echo===============================================

reg query HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\{B9DAF3F5-547C-4D13-B6CE-50075D9B27C5} /v DisplayName
If not errorlevel 1 (

echo Safe Guard 5.40 Client Configuration wird deinstalliert...
msiexec /x {B9DAF3F5-547C-4D13-B6CE-50075D9B27C5} /passive

)else (

echo keine Safe Guard 5.40 Client Configuration entdeckt
echo es wird mit der Installation von 5.50 begonnen....

reg query HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\{CDBAAE82-1725-4BDF-9770-69EA174318F1} /v DisplayName
If not errorlevel 1 (

echo Safe Guard 5.50 Client Preinstallation entdeckt
echo Es wird mit der Client Installation fortgefahren

)else (

echo Safe Guard Client Preinstallation Package wird installiert....
msiexec /i "\\srvsafe01\SafeGuard\V5_50\1. SafeGuard_Client_Install\1_SGxClientPreinstall.msi" /passive

)

reg query HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\{6267109C-50D2-4667-9FF6-03FB9A94A771} /v DisplayName
If not errorlevel 1 (

echo Safe Guard 5.50 Client Installation entdeckt
echo Es wird mit der Client Configuration fortgefahren


)else (

echo Safe Guard Client wird installiert....
msiexec /i "\\srvsafe01\SafeGuard\V5_50\1. SafeGuard_Client_Install\2_SGNClient.msi" /passive /forcerestart

)

reg query HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\{AE0661BF-1AD5-4F87-B2E2-113644478453} /v DisplayName
If not errorlevel 1 (

echo Safe Guard 5.50 Client Configuration entdeckt
echo Safe Guard vollstaendig installiert

)else (

echo Safe Guard Client Configuration wird installiert....
msiexec /i "\\srvsafe01\SafeGuard\V5_50\1. SafeGuard_Client_Install\3_SGN_Client_Config_5_50.msi" /passive /forcerestart

)

)
exit

Content-ID: 161053

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

Ausgedruckt am: 22.11.2024 um 15:11 Uhr

Mad-Eye
Mad-Eye 18.02.2011 um 08:28:12 Uhr
Goto Top
Morgen Phirie,

hast du das msiexec mal mit "/log" gestartet und geschaut was das Setup rausbrüllt?

Gruß
Mad-Eye
Phirie
Phirie 18.02.2011 um 10:21:12 Uhr
Goto Top
Hallo,

danke die Logfile hat mir weitergeholfen. SafeGuard brach die Installation aufgrund eines Fehlers kurz vor Installationsende ab, somit konnte kein Neustart durchgeführt werden. Dieses Problem ist also behoben, vielen Dank nochmal an May-Eye

Nun aber zu meiner weiteren Frage, nachdem die Installation durchgelaufen ist und der Restart erzwungen wird, dauert es ein paar Sekunden bis Windows sich beendet hat und tatsächlich runterfährt. In dieser Zeit wird aber das Skript fortgesetzt und schon versucht das nächste Paket zu installieren.

Wie kann ich das verhindern? Ist es möglich nach der Installation des ersten Pakets das den Restart benötigt eine pause einzubauen (pause befehl oder ping? es wäre ja sogar ein exit möglich) oder wird dann das Herunterfahren verhindert?

Also ungefähr so:

...
)else (

echo Safe Guard Client wird installiert....
msiexec /i \"\\\\srvsafe01\\SafeGuard\\V5_50\\1. SafeGuard_Client_Install\\2_SGNClient.msi\" /passive /forcerestart
pause, exit, ping -n 20 localhost>nul

)

reg query HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Uninstall\\{AE0661BF-1AD5-4F87-B2E2-113644478453} /v DisplayName
If not errorlevel 1 (

echo Safe Guard 5.50 Client Configuration entdeckt
echo Safe Guard vollstaendig installiert

)else (

echo Safe Guard Client Configuration wird installiert....
msiexec /i \"\\\\srvsafe01\\SafeGuard\\V5_50\\1. SafeGuard_Client_Install\\3_SGN_Client_Config_5_50.msi\" /passive /forcerestart

)

)
exit
Mad-Eye
Mad-Eye 18.02.2011 um 10:33:36 Uhr
Goto Top
nach msiexec ein goto und zum ende der Batch springen?
Phirie
Phirie 18.02.2011 um 13:11:08 Uhr
Goto Top
Habs mit dem goto gemacht, funktioniert!

Dankeschön!!!
DerWoWusste
DerWoWusste 19.02.2011 um 11:21:53 Uhr
Goto Top
Mal eine Dumme Frage: Safeguard nutzt Du vermutlich zur Vollverschlüsselung der Platte. Kann man die 5.40 deinstallieren, ohne die Platte vorher entschlüsselt zu haben? Ich kenne gar keine Verschlüssler, die das anbieten.
Auch würde ich beim Support nach der empfohlenen Vorgehensweise beim Upgrade fragen oder die Doku lesen.
Phirie
Phirie 19.02.2011 um 11:46:27 Uhr
Goto Top
Hi,

auf der Clientseite besteht SafeGuard aus zwei Komponenten. Einmal das Client-Paket, das sozusagen das komplette Grundprogramm beinhaltet und zum anderen das Client Config Paket, das angibt mit welchem Server der Client sich verbinden soll, welche Richtlinien nach der Installation gelten usw... Es ist möglich das Client Config Paket zu deinstallieren ohne die Verschlüsselung des Notebooks aufzuheben, dann ist aber keine Serververbindung mehr möglich. Erst nachdem das Client Paket ebenfalls deinstalliert wird wird der Client auch automatisch entschlüsselt.

Es geht hier lediglich darum die Clientinstallation zu automatisieren, wie sie im Grunde abläuft und was gemacht werden muss ist mir durchaus bewusst. Die Dokumentation zum Upgrade habe ich ausführlich gelesen, es wird im Grunde Empfohlen die 5.40 Client Config zu deinstallieren, dann ein Pre-Installations Paket zu installieren danach den eigentlichen Client 5.50 zu installieren der dann den 5.40 Updated und danach die neue 5.50 Client Config zu installieren.

Gruß und schönes Wochenende