关于这个主题并不乏问题,但我仍然遇到麻烦。这是我的情况。我有一个服务,我需要观看配置文件中指定的路径。当我使用本地驱动器时它工作得很好。FileSystemWatcher观看UNC路径
但是,当我将其更改为诸如\\server2\secondary\temp\watch_folder
之类的服务时,服务无法启动。日志中的错误是
目录名\\ server2 \ secondary \ temp \ watch_folder无效。
如果我直接将其复制到Windows资源管理器中,该文件夹将打开正常。如果我把我的代码粘贴到一个旧的Winforms应用程序中,它可以正常工作。我已经尝试了所有“登录为”帐户。我将它设置为使用管理员帐户,但仍然没有骰子。
这里是我的代码:
_watcher = new FileSystemWatcher();
_watcher.Path = ConfigurationManager.AppSettings["WatchFolder"];
_watcher.NotifyFilter = NotifyFilters.LastWrite | NotifyFilters.FileName;
_watcher.Filter = "*.txt";
_watcher.Created += new FileSystemEventHandler(OnCreated);
_watcher.Error += new ErrorEventHandler(OnError);
_watcher.EnableRaisingEvents = true;
任何想法?我很茫然,在这一点上,我认为我一直在盯着它太久。我衷心感谢任何帮助。
感谢, 尼克
编辑 这里是个例外:
服务无法启动。 System.ArgumentException:目录名称\ server2 \ Secondary \ temp \ watch_folder无效。
在System.IO.FileSystemWatcher.set_Path(字符串值)
在FileWatcher.FileWatcher.Watch()
在FileWatcher.FileWatcher.OnStart(字串[] args)
在System.ServiceProcess.ServiceBase.ServiceQueuedMainCallback(对象状态)
您的意思是问题已解决? –
不,问题没有解决。我仍然无法启动服务。 – nickfinity
你有任何异常错误吗?你知道如何调试Windows服务吗?任何关于错误的信息都有帮助。 –