Moin,
der Titel klingt etwas blöd, aber mir fällt nichts besseres ein.
Es geht darum, dass ich ein AutoIt-Script habe, welches hintereinander immer wieder ein Programm namens runasspc öffnet. Dieses Programm führt dann unterschiedliche Befehle aus (z.B. öffnet es auch neue Scripte)
runasspc dient dazu einem eingeschränktem Benutzer für die auszuführende Aufgabe Administrationsrechte zu geben.
Mein Skript sieht momentan folgendermaßen aus.
Spoiler anzeigen
$computername=@ComputerName
$typ=StringLeft($computername,2)
;***********************
;Dienste starten/beenden
;***********************
;Nachrichtendienst aktivieren
[/autoit] [autoit][/autoit] [autoit]RunWait('runasspc.exe /cryptfile:"Nachrichtendienst.spc" /quiet')
[/autoit] [autoit][/autoit] [autoit][/autoit] [autoit];***********************
;Registry-Keys verändern
;***********************
;Firmenname korrigieren
RunWait('runasspc.exe /cryptfile:"Firmenname.spc" /quiet')
;Capslock zu Shift umsetzen
If ($typ="AP") Then
RunWait('runasspc.exe /cryptfile:"CapsLock2Shift.spc" /quiet')
EndIf
;Firewall-Einstellungen anpassen
RunWait('runasspc.exe /cryptfile:"Firewalleinstellungen.spc" /quiet')
;*******************************
;Standard-Programme installieren
;*******************************
If ($typ="PC") Then
;Visio Viewer 2003 installieren
If Not FileExists(@ProgramFilesDir & "\Microsoft Office\Visio Viewer") And Not FileExists(@ProgramFilesDir & "\Visio") Then
RunWait('runasspc.exe /cryptfile:"Visio Viewer 2003.spc" /quiet')
EndIf
EndIf
[/autoit]Das Problem ist, dass die einzelnen RunWaits nur warten bis runasspc beendet ist, aber nicht bis das Script beendet ist, welches runasspc startet. In diesem Beispiel startet z.B. die Installation des Visio Viewers bevor die Einstellungen der Registry beendet worden sind.
Hat jemand Vorschläge, wie ich das ganze sequentiell abarbeiten kann?