Служба Windows не находит сопоставленные диски, несмотря на вход в систему с правильной учетной записью

Служба Windows не находит сопоставленные диски, несмотря на вход в систему с правильной учетной записью

Windows 10 Профессиональная

Версия 1709 ОС

Сборка 16299.666

У меня есть служба, которая хочет получить доступ к сетевому диску U:/public/blah.txt. Запуск ее от имени обычного пользователя с командной строкой работает, запуск ее в качестве службы — нет.

Если перейти services.msc -> servicename -> properties -> Log On -> This accountи использовать MYDOMAIN/MYUSERправильный пароль и перезапустить, это все равно не работает, и выдает то же самое сообщение об ошибке. Это учетная запись, которая может успешно запустить программу из командной строки.

Это исполняемый файл golang, работающий внутринссмслужба и фактическое сообщение об ошибке Error opening file U:\public\blah.txt: The system cannot find the path specified.

Эта программа работала как служба на другом компьютере, она даже обращается к тому же диску. Единственное отличие, которое я вижу, заключается в том, что учетная запись, которую я сейчас использую, является учетной записью домена, тогда как раньше это была учетная запись локального пользователя.

Почему мой сервис не видит сопоставления дисков, если он успешно вошел в систему как пользователь, у которого они есть?

решение1

Вместо того чтобы предоставлять службе доступ к данным через подключенный диск, используйте имя пути UNC.

Существует множество способов, с помощью которых можно сопоставить диск при загрузке профиля пользователя. Не все из них срабатывают при загрузкеуслугавходит в систему, используя определенную учетную запись. По этой причине пути UNC более надежны, чем сопоставленные диски.

Связанный контент