Zugeordnete Laufwerke wurden vom Windows-Dienst nicht gefunden, obwohl sie sich als korrektes Konto angemeldet haben

390
Marvin Irwin

Windows 10 Pro

Version 1709 OS

Bauen Sie 16299.666 auf

Ich habe einen Dienst, der auf das Netzlaufwerk zugreifen möchte U:/public/blah.txt. Das Ausführen als normaler Benutzer mit der Eingabeaufforderung funktioniert, das Ausführen als Dienst jedoch nicht.

Wenn Sie zu services.msc -> servicename -> properties -> Log On -> This accountund verwenden MYDOMAIN/MYUSERund das richtige Kennwort eingeben und neu starten, funktioniert es immer noch nicht und erzeugt dieselbe Fehlermeldung. Dies ist das Konto, mit dem das Programm an der Eingabeaufforderung erfolgreich ausgeführt werden kann.

Es ist eine golang-ausführbare Datei, die in einem nssm- Dienst ausgeführt wird, und die eigentliche Fehlermeldung lautet Error opening file U:\public\blah.txt: The system cannot find the path specified.

Dieses Programm arbeitete früher als Dienst auf einem anderen Computer. Es hat sogar Zugriff auf das gleiche Laufwerk. Der einzige Unterschied, den ich sehen kann, ist, dass das Konto, das ich jetzt verwende, ein Domänenkonto ist, während es zuvor ein lokaler Benutzer war.

Warum kann mein Dienst die Laufwerkszuordnungen nicht sehen, wenn er erfolgreich als Benutzer angemeldet ist, der über sie verfügt?

0
Ist das Service-Mapping das Laufwerk, bevor es versucht, darauf zuzugreifen? Können Sie alternativ auf die Datei über einen UNC-Pfad anstelle eines zugeordneten Laufwerks zugreifen? Twisty Impersonator vor 5 Jahren 0
Wie wird das Laufwerk abgebildet? Wenn das Laufwerk nicht auf persistent eingestellt ist, ist es nicht in einem Dienst verfügbar, der als dieser Benutzer ausgeführt wird. Wenn das Domänenkonto ein lokaler Administrator ist, haben Sie möglicherweise das Problem der Benutzerkontensteuerung, das hier beschrieben wird: http://www.fmsinc.com/microsoftaccess/developer/mapped_drives_not_available.htm. In jedem Fall wird versucht, auf ein zugeordnetes Laufwerk von einem Dienst zuzugreifen schrecklich, schrecklich, keine gute Programmierung. Greifen Sie direkt über den UNC-Pfad auf die Daten zu. Appleoddity vor 5 Jahren 0
Das Laufwerk ist bereits vor vielen Neustarts vom Benutzer zugeordnet. Der UNC-Pfad funktioniert auf beiden, das war es. Post es als Antwort und ich akzeptiere. Marvin Irwin vor 5 Jahren 0

1 Antwort auf die Frage

0
Twisty Impersonator

Anstatt den Dienst über ein zugeordnetes Laufwerk auf die Daten zugreifen zu lassen, verwenden Sie stattdessen einen UNC-Pfadnamen.

Es gibt verschiedene Möglichkeiten, wie ein Laufwerk zugeordnet werden kann, wenn ein Benutzerprofil geladen wird. Sie werden nicht alle ausgelöst, wenn sich ein Dienst mit einem bestimmten Konto anmeldet. Aus diesem Grund sind UNC-Pfade zuverlässiger als zugeordnete Laufwerke.