У меня есть служба Windows, настроенная на копирование файлов из локального каталога в общую папку samba.
Служба подключается через UNC-путь к серверу (т.е. \ remoteserver \ shareddir).
Я вошел в систему как пользователь, под которым запущена служба, и смог копировать и создавать файлы на общем ресурсе samba, используя путь UNC.
Однако при запуске службы у меня возникают исключения, которые указывают на ошибку входа в систему. Я запустил монитор процессов на этом ящике, наблюдая за службой, и вижу, что он находит путь UNC, но получает ошибку входа при попытке записи в общую папку.
Используется простой ванильный вызов .net System.IO.File.Copy.
Я не понимаю ошибок, так как при входе в систему под одним и тем же пользователем я могу копировать и создавать файлы на общем ресурсе.
Есть идеи?
Редактировать: текст исключения
Ошибка в главном цикле обработки
(DoWork ()): ошибка входа: неизвестна
имя пользователя или неверный пароль.
System.Exception: ошибка при
MyService.ProcessExportTransferfileDirectories
и значения: D: \ Export,
\ Удаленный_сервер \ intray,
D: \ Export \ Archive --->
System.IO.IOException: ошибка входа:
неизвестное имя пользователя или неверный пароль.
в
System.IO .__ Error.WinIOError (Int32
errorCode, String MaybeFullPath) в
System.IO .__ Error.WinIOError () в
System.IO.File.Move (String
sourceFileName, String destFileName)
в
MyService.Consumer.BusinessLogic.WmsFacade.MoveAndArchiveFile (String
sourceFolder, String targetFolder,
String archiveFolder, String
rootFolder, LogCategory logCategory,
LogCounter logCounter) --- Конец
внутренняя трассировка стека исключений --- в
MyService.Consumer.BusinessLogic.WmsFacade.MoveAndArchiveFile (String
sourceFolder, String targetFolder,
String archiveFolder, String
rootFolder, LogCategory logCategory,
LogCounter logCounter) в
MyService.Consumer.BusinessLogic.WmsFacade.ProcessExportTransfer (IDictionary`2
fileDirectories) в
MyService.Core.TimedWorkerProvider.DoWork ()