【发布时间】:2019-03-20 22:56:32
【问题描述】:
如果我使用 FileSystemWatcher 监视在控制台应用程序的网络共享上创建的文件,一切正常。但是如果我将这个简单的代码移到 Windows 服务中,它就不起作用了。我尝试了很多不同的事情:检查给定文件夹的访问权限,尝试将服务作为 LocalService、LocalSystem、网络服务和管理域用户帐户运行。我还尝试使用 SimpleImpersonation 库模拟代码。没有任何效果。有什么建议吗?
【问题讨论】:
-
确保您没有使用映射驱动器号。映射的驱动器号仅对登录的用户可用。路径应指定为 UNC 路径,例如:\\server\share\subfolder\
-
服务中的代码是抛出异常,还是只是没有接收到任何事件?
-
@Wiz 它只是没有收到任何事件。我也尝试了 UNC 路径,但没有成功。网络共享是 Samba 共享,但这应该不是问题,因为它适用于普通应用程序(而不是服务)。
-
我刚刚发现如果我使用Release版本的服务是不行的。如果我使用调试版本,它可以工作。我没有使用预处理器指令。
标签: .net windows-services filesystemwatcher