Manchmal kommt es vor, das man per Fernwartung ein Programm installieren muss, jedoch bekommt man das Eingabefenster für die Zugangsdaten nicht angezeigt und möchte dem Anwender nicht das Adminkennwort geben.
Dann einfach eine CMD-Box starten und zu den Ordner navigieren, wo die Installationsdatei liegt und das folgende eingeben.
runas /profile /env /user:AD\Benutzer
Anschließend kann man das Kennwort eingeben, ohne das der Anwender dies sieht. Natürlich benötigt man dazu ein Konto mit Adminrechten :).
Tipps:
Sollte es erforderlich sein, das das Kennwort direkt mitgegeben wird, dann kann man dies mittels psexec machen, das sollte sich dann im selben Verzeichnis befinden.
Beispiel:
psexec -u AD\BENUTZER -p PASSWORT c:\windows\system32\calc.exe
Mittels Tools, wie bat2exe kann mann denn Code dann unleserlicher machen – was jedoch keine sichere Lösung ist, da es sicherlich Tools gibt, die diese Kennwörter wieder Sichtbar machen können.
Update:
Alternativ kann man auch mit AutoIt fertige Exe Dateien erstellen, welche mit z.B. runas() oder runaswait() installationen ausführen. Hier hat man natürlich wesentlich mehr möglichkeiten.
Hier ein Beispiel:
ProcessClose("nlnotes.exe") ProcessClose("nsd.exe") ProcessClose("notes.exe") ProcessClose("notes2.exe") Run("C:\Program Files(x86)\IBM\Lotus\Notes\nsd.exe -kill") Run("C:\Program Files(x86)\IBM\Notes\nsd.exe -kill") Run("C:\Program Files\IBM\Lotus\Notes\nsd.exe -kill") Run("C:\Program Files\IBM\Notes\nsd.exe -kill") $RegMultiLotus = RegRead("HKEY_LOCAL_MACHINE\SOFTWARE\Lotus\Notes","MultiUser") $RegMultiIBM = RegRead("HKEY_LOCAL_MACHINE\SOFTWARE\IBM\Notes","MultiUser") $InstallClientPath = @ScriptDir & "\IBM_NOTES_CLIENT_9.0.1_WINDOWS_G" $InstallFPPath = @ScriptDir & "\FP8" $SupportInfo = " - bitte wenden Sie sich an den Support unter 123 123 -123 oder -124." $Domain = RegRead("HKLM\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters", "Domain") Local $IsDomainMember = StringInStr($domain, "domainname") if $IsDomainMember = "1" Then if $RegMultiLotus = "0" or $regMultiIBM = "0" Then RunAsWait("administrator", "domain", "passwort", 0, $InstallClientPath & "\setup.exe /s /v""ALLUSERS=1 SETMULTIUSER=0 /qb!") If @Error <> "0" Then MsgBox(64,"Hinweis"," Es ist ein Fehler beim Notesclient Update aufgetreten" & $SupportInfo) Exit EndIf Else RunAsWait("administrator", "domain", "passwort", 0, $InstallClientPath & "\setup.exe /s /v""ALLUSERS=1 SETMULTIUSER=1 /qb!") If @Error <> "0" Then MsgBox(64,"Hinweis"," Es ist ein Fehler beim Notesclient Update aufgetreten" & $SupportInfo) Exit EndIf EndIf RunAsWait("administrator", "domain", "passwort", 0, $InstallFPPath & "\setup.exe /s /v/qb+!") If @Error <> "0" Then MsgBox(64,"Hinweis"," Es ist ein Fehler beim Notesfeaturepack Update aufgetreten" & $SupportInfo) Exit EndIf Else if $RegMultiLotus = "0" or $regMultiIBM = "0" Then RunAsWait("administrator", @ComputerName, "passwort", 0, $InstallClientPath & "\setup.exe /s /v""ALLUSERS=1 SETMULTIUSER=0 /qb!") Else RunAsWait("administrator", @ComputerName, "passwort", 0, $InstallClientPath & "\setup.exe /s /v""ALLUSERS=1 SETMULTIUSER=1 /qb!") EndIf RunAsWait("administrator", @ComputerName, "passwort", 0, $InstallFPPath & "\setup.exe /s /v/qb+!") EndIf MsgBox(64,"Notesupdate", "Die Updates wurden abgeschlossen. Sollten noch Programme geöffnet sein können Sie diese mit Ok schließen. Danach können sie die Dateien löschen.")
Hinweis: Sie verwenden die Codeschnippsel auf eigene Verantwortung. Bitte vorher ausgiebig testen.