У меня есть служба, которая должна копировать некоторые файлы по сети, служба работает под одной из учетных записей локального администратора.
Войдя в систему как администратор, я могу вручную скопировать файлы из сети в определенную папку в разделе « Program Files
, но существует служба с исключением PermissionDenied, чтобы ЗАПИСАТЬ файл. Я также уверен, что файлы не блокируются до записи.
Ошибка заключается в следующем:
Доступ к тропе ".../SomeAssembly.dll "отказано.
Почему служба выдает такую ошибку и как я могу ее исправить? (Я также разработал сервис, поэтому изменения в сборке могут быть на столе).
Обновить
Я также попытался запустить его в System
но он не может читать файлы в сети (не знаю, почему). У учетных записей LocalService
и NetworkService
AFAIK недостаточно прав для внесения изменений в ProgramFiles ... не так ли?
Обновление 2
Причина, по которой я не могу использовать System
заключается в том, что эта учетная запись не имеет доступа к сетевым ресурсам по своей конструкции, то же самое происходит с NETWORK SERVICE
которая не имеет доступа к локальным ресурсам. Проблема с учетной записью администратора заключается в том, что Windows блокирует операцию копирования файла, когда она выполняется службой.
Есть идеи????