-
Есть служба, которая копирует указанные ей файлы. Если файлы локальные, CopyFile отрабатывает "на ура". Если файл-источник сетевой - фиг. Система XP, служба запущена от SYSTEM но с флажком Interactive with Desktop. Пробовал запускать в контексте пользователя, пробовал в службе запускать батч с копированием, пробовал перед CopyFile LogonUser - безрезультатно. Подскажите уважаемые, есть ли шанс у службы скопировать сетевой файл?
-
Это GetLastError'ы для самоконтроля Перед логином:Операция успешно завершена После логина:Операция успешно завершена После имперсоната:Операция успешно завершена Token=260 Копирование файла:Вход в систему не произведен: имя пользователя или пароль не опознаны
-
> AleXXX (20.11.18 16:30)
> Система XP, служба запущена от SYSTEM но с флажком Interactive
ЕМНИП, служба должна запускаться с учетной записью, которой доступны те самые сетевые файлы. Кроме того, у этой записи д.б. права для входа в систему в качестве службы. См. также http://rsdn.org/?article/qna/baseserv/privedit.xml-- Regards, LVT.
-
Leonid TroyanovskyУважаемый Леонид, прошу прощения. Я первым делом за это и подумал. И начал кодить копирование именно с LogonUser. Мучался и так и эдак, как описано тут <L> https://docs.microsoft.com/en-us/windows/desktop/SecAuthZ/client-access-to-network-resources</L> > A server can use the following strategies to access network resources: > ...
А, как оказалось сегодня, после ещё 2х часов извращений всё оказалось проще. CopyFile заработал в контексте Local SYSTEM вообще без бубнов. Всё закоментил оставил один CopyFile и копирование пошло. Благодарю за внимание, вопрос снимается.
-
Единственное добавлю (даже для себя), что без бубнов таки не обошлось. Одним из бубнов был net use. Однажды сработав, (а я убрал всё в коменты) он продолжал держать сеанс до перезагрузки. Естественно, после перезагрузки компьютера служба перестала копировать :( Пришлось добавить в ServiceStart один WNetAddConnection2 без редиректа в LocalName.
-
> AleXXX (23.11.18 12:26) [4] > Пришлось добавить в ServiceStart один WNetAddConnection2 без редиректа в LocalName.
С именем и паролем?
|