Ich habe einen Dienst über srvany.exe wie hier beschrieben erstellt. Diese Anwendung benötigt Zugriff auf ein zugeordnetes Netzlaufwerk. Ich habe dieses Laufwerk manuell als lokaler Administrator zugeordnet, aber meine Anwendung / mein Dienst hat keinen Zugriff darauf.
Ich habe versucht, den Dienst mit den lokalen Administratoranmeldeinformationen zu starten. Weder das Standard-Systemkonto noch der lokale Administrator scheinen Zugriff auf das Netzwerk zu haben.
Wenn ich die Anwendung manuell über das lokale Administratorkonto starte, hat die Anwendung Zugriff auf das Netzwerk.
Was muss ich konfigurieren, damit mein Dienst auf einen zugeordneten Netzwerkordner zugreifen kann?
Bearbeiten:
Ich habe eine kleine Batchdatei geschrieben, die der folgenden ähnelt, und die Registrierung so bearbeitet, dass der Dienst den Batch anstelle der exe startet. Also habe ich versucht, die exe mit den gleichen Anmeldeinformationen abzubilden und auszuführen. Aber es scheitert immer noch:
net use V: /DELETE
net use V: \\Server\Folder\Folder /user:UserName password /PERSISTENT:YES
"C:\Program Files\MyApplication\MyApplication.exe"
quelle
ntrights.exe
das gleiche Resource Kit, von dem Sie es bezogen habensrvany.exe
). Wenn die Anwendung mit UNC-Pfaden arbeiten kann, würde ich versuchen, was @Matthias vorschlägt.Antworten:
Ich habe eine ähnliche Frage zu serverfault gefunden.
Ich habe aufgegeben, um die Freigabe zuzuordnen, und meine Anwendung so konfiguriert, dass sie direkt auf den Pfad (\\ Server \ Ordner ...) zugreift. Dann habe ich den Dienst mit einem Domänenkonto gestartet, das Zugriff auf diesen freigegebenen Ordner hat.
Soweit ich auf verschiedenen Webseiten gelesen habe, scheint es einen Unterschied zwischen dem angemeldeten Benutzer und einem Dienst zu geben. Ein zugeordneter Netzwerkordner des angemeldeten Benutzers wird nicht "einem anderen" Benutzer wie einem Dienst zugeordnet, selbst wenn der Dienst mit denselben Anmeldeinformationen wie der angemeldete Benutzer ausgeführt wird.
quelle