Hallo,
steinigt mich bitte nicht. Dieses Thema ist bereits mehrfach in Themen besprochen worden, jedoch auf mein Vorhaben habe ich fragen.
Mein Vorhaben:
Ich möchte die Defrag.exe im @SystemDir aufrufen und die Ausgabe der CMD in eine Textdatei ausgeben lassen. Das geht aber nur in einer CMD, gestartet als Admin. Also habe ich folgendes versucht.
1. Mit #RequireAdmin sorge ich dafür, dass meine Funktion nur als Admin ausgeführt werden kann.
2. Mit Local $ordnerwahl = GUICtrlRead($Inputbox3) lese ich meine Inputbox aus
3. Mit Local $cmd = RunAs("admin", "", "", 0, @SystemDir & "\cmd.exe", $ordnerwahl, @SW_HIDE, $STDIN_CHILD + $STDOUT_CHILD) möchte ich eine CMD mit Adminrechten starten
4. Mit Local $contigdir = RunAs("admin", "", "", 0, $cmd & "\Defrag.exe", $ordnerwahl) möchte ich "Defrag.exe" mit Adminrechten aus der Konsole mit Adminrechten starten können
5. Mit Local $bericht = Run($contigdir & ' /A', $ordnerwahl, @SW_HIDE, $STDIN_CHILD + $STDOUT_CHILD) möchte ich Defrag.exe mit dem Parameter /A starten. ($bericht lasse ich mir mit Hilfe von StdoutRead ausgeben. Wie das geht weiß ich.)
Meine Fragen:
1. Wie bezeichne ich in AutoIt den angemeldeten User mit dem benutzten Passwort, da RunAs ja diese Eingaben fordert?
2. Würdet ihr das ganze anders lösen?