Ich schreibe ein sehr einfaches Programm (vb), das einige Dateien aus einem Ordner in einen Ordner Programmdateien kopieren wird, so muss ich erforderlichen Administrator Berechtigungen in der verwenden Programm seit asInvoker wird es mir nicht erlauben, in den Ordner der Programmdateien zu schreiben. Jetzt, nachdem ich die Dateien kopiert habe, rufe ich ein mit autoit erstelltes Skript auf, um das Setup dieser Dateien innerhalb des externen Programms zu automatisieren, dafür habe ich das Skript, um das externe Programm aufzurufen und den Automatisierungsprozess zu starten.Rufen Sie ein externes Programm als Standardbenutzer von einem erforderlichen Administrator-Programm
Das Programm, das die Dateien erstellt und die Dateien in das Programm "end" kopiert, funktioniert einwandfrei. Das Skript, das das Programm "end" aufruft und das automatische Setup ausführt, funktioniert ebenfalls.
Mein Problem ist, wenn ich die 2 von ihnen kombiniere, Aus irgendeinem seltsamen Grund verhält sich das "Ende" -Programm (das ich nicht schrieb und ich habe den Sorce-Code) unberechenbar, wenn es als Admin ausgeführt wird. Wenn ich mit der rechten Maustaste klicke und als Administrator ausgeführt wird, liest das Programm die Datenbank nicht oder die benötigten Dateien geben einen Fehler zurück und terminieren sich selbst. So laufen Sie als Admin ist keine Option. Aber da mein Programm als admin laufen muss, sieht es so aus, als ob es dieselben Rechte an das Autoit-Skript hat, das das "end" -Programm auch als admin aufruft. Es passiert auch, wenn ich das Programm "Ende" von meiner App anstelle des Autoit-Skripts aufrufen.
Also gibt es sowieso meine App von Admin auf Standardbenutzer herabstufen, nachdem es die Dateien kopiert, kurz bevor es entweder das Autoit-Skript oder das "Ende" -Programm aufruft, so dass das "Ende" -Programm nicht als Admin ausgeführt wird ein Parameter, der die App speziell dazu bringt, das externe Programm als Standardbenutzer aufzurufen, btw verwende ich Process.start ("autoitscript.exe"), um es aufzurufen. Oder eine andere Problemumgehung, die ich versuchen könnte. Das Autoit-Skript bezieht sich nicht auf das "End" -Programm und meine App, weil das funktioniert, aber nicht so, wie ich es vorhabe.
Danke.