Ich versuche abzufragen, welche(r) User auf einem anderen Client (hier z.B. BLP5-WX) angemeldet ist. Im cmd-Fenster funktioniert das problemlos:
In meinem Script bekomme ich sowohl bei Run() wie auch ShellExecute() eine Fehlermeldung, dass die Datei nicht gefunden werden konnte:
AutoIt
#include <AutoItConstants.au3>
Example("C:\Windows\System32\quser.exe /server:blp5-wx")
Example("C:\Windows\System32\quser.exe")
Example("C:\Windows\System32\cmd.exe")
Func Example($sCommand)
ConsoleWrite('@@ Debug(' & @ScriptLineNumber & ') : $sCommand = ' & $sCommand & @CRLF)
Local $iPID = Run($sCommand, "", @SW_HIDE, $STDOUT_CHILD + $STDERR_CHILD )
ConsoleWrite('@@ Debug(' & @ScriptLineNumber & ') : $iPID = ' & $iPID & ' >Error code: ' & @error & @CRLF)
ProcessWaitClose($iPID)
Local $iPID = ShellExecute($sCommand, "", "", "", @SW_HIDE)
ConsoleWrite('@@ Debug(' & @ScriptLineNumber & ') : $iPID = ' & $iPID & ' >Error code: ' & @error & @CRLF)
ProcessWaitClose($iPID)
EndFunc ;==>Example
Alles anzeigen
Testweise habe ich es mit "C:\Windows\System32\cmd.exe" versucht, das funktioniert. Wo könnte das Problem bei der quser.exe liegen?
Nachtrag: ich habe die quser.exe in c:\temp kopiert, da funktioniert es. Kann man von AutoIt nicht auf System32 zugreifen?