wie kann ich denn den User fragen, ob er einer Software-Installation bzw. einem Update zustimmen möchte?
Hintergrund: Software X soll aktualisiert werden. Damit das funktioniert, muss die laufende Instanz gekillt werden und/oder am Ende ein Neustart des Rechner durchgeführt werden.
Unsere Pakete laufen i.d.R. komplett stumm, so dass der User nie was mitbekommt (setup.inf mit /S0, die setup.exe u.ä. mit den üblichen Schaltern wie /s(ilent) /q(uiet) usw.). Aber in dem oben genannten Fällen ist das natürlich nicht machbar: Wir können dem User ja nicht ohne Ankündigung einfach das Programm schließen und den Rechner kommentarlos neu starten.
In einem anderen Leben haben ich daher eine passendes Konstrukt entwickelt, aber für die, äh... "Skriptsprache", die in der Empirum-/Setup.inf-Welt genutzt wird, fehlt mir noch das Wissen, wie ich das angehen soll.
Irgendjemand ein passendes Code Snippet zur Hand?
Pseudo-Code-mäßig also so etwa in dieser Art:
Code: Select all
AskUser("Update von X steht an. Das Programm wird geschlossen und der Rechner neu gestartet. Jetzt durchführen?", yes no)
if yes/UserAgreed
- setup.exe /s
- reboot
if no/UserDisagreed
- ABORT & try next time again (wobei das idealerweise "endlos" versucht werden sollte (User soll gefälligst zustimmen)... also vmtl. die max. Anzahl der Versuche sehr, sehr hoch setzen?