我有一个 Windows 服务设置将文件从本地目录复制到 samba 共享。
该服务通过 UNC 路径连接到服务器(即 \remoteserver\shareddir)。
我已经以运行服务的用户身份登录,并且能够使用 UNC 路径在 samba 共享上复制文件和创建文件。
但是,在运行该服务时,我收到提示登录错误的 io 异常。我在那个盒子上运行了进程监视器,观察服务,我可以看到它找到了 UNC 路径,但在尝试写入共享时出现登录错误。
这是使用普通的 .net System.IO.File.Copy 调用。
我不明白这些错误,因为在同一用户下登录时,我可以在共享上复制和创建文件。
有任何想法吗?
编辑:异常文本
主处理循环中的错误 (DoWork()):登录失败:未知用户名或密码错误。
System.Exception:MyService.ProcessExportTransferfileDirectories 和值错误:D:\Export、\RemoteServer\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()