Alles anzeigenHast du das überprüft?
Denn wenn der User Administrator deaktiviert ist, schlägt RunAs natürlich fehl... aber das kannst du ja leicht überprüfen.
Local $iPID = RunAs($sUserName, $sDomain, $sPassword, $RUN_LOGON_NOPROFILE, $sProgram, $sWorkingDir, @SW_SHOW)
If Not $iPID Or @error Then MsgBox(16, "Error", "$iPID --> " & $iPID & @CRLF & "!@ " & @TAB & "#Error: " & @error & @TAB & "#Extended: " & @extended & @CRLF)
Hier fehlt bei FileExist noch ein s... also FileExists! Anderfalls bricht der Interpreter die Ausführung des Scripts sofort ab und SciTE präsentiert einen Fehler: error: FileExist(): undefined function.
Evtl. aber läuft das Programm einfach nur nicht auf dem Betriebssystem des Clients.
Wenn du auf dem Server eine Eingabeaufforderung öffnest und dort den Befehl net user administrator eingibst, kannst du sehen, ob das Benutzerkonto des Users Administrator aktiv ist und ob ein Passwort gesetzt wurde.
Erst einmal vielen dank für deine Zeit und Hilfe.
Aber ich habe es jetzt komplett anders gelöst bekommen. Meine Scripte laufen jetzt alle mit ShellExecute. Der Knackpunkt an der Sache war das unter Programme86 es einen Folder gab vom Opsi in diesem war ne Conf-Datei in der stand welcher User für eine Netzwerkanmeldung genutzt wird. Setzt man hier den Domäne\Adminuser ein (glaub der war standard bei Opsi wie Root) und erstellt diesen dann im AD hat man mit diesem User zugriff auf den Opsi und auf die NTFS-Freigabe.
PS: Das dort ein S gefehlt hab hatte ich bereits gemerkt und das Programm ist für das System geeignet ich kann es ja ohne Probleme aufrufen und installieren wenn ich es manuell mache.