我的服务使用System.IO.Directory.Exists(pathFetch)来检查路径是否有效。如果我运行此语句,则返回true。如果这个条件成立,我可以继续下一个代码。
现在我知道目录存在,我想使用FileSystemWatcher类来监视文件夹中的任何更改。
String pathFetch = "\\\\computer1\\sharedfolder\";
FileSystemWatcher fsw = new FileSystemWatcher();
fsw.path = pathFetch;
fsw.filter = "*.xml";
fsw.EnableRaisingEvents = true;
fsw.Created += new FileSystemEventHandler(onCreatedFile);
如果我将此代码与本地文件夹一起使用,则该语句返回true,并且没有任何FileEventHandler错误。但是在前面的例子中使用UNC路径,我得到以下结果:
Service cannot be started. System.IO.FileNotFoundException: Error reading the \\\\computer1\\sharedfolder\ directory.
at System.IO.FileSystemWatcher.StartRaisingEvents()
at System.IO.FileSystemWatcher.set_EnableRaisingEvents(Boolean value)
at Epgpubpooler.epgmaintainer.initFileWatcher(String pathFetch)
at Epgpubpooler.epgmaintainer.OnStart(String[] args)
at System.ServiceProcess.ServiceBase.ServiceQueuedMainCallback(Object state)
For more information, see Help and Support Center at http://go.microsoft.com/fwlink/events.asp.
编辑:
如果我添加一个try catch,并打印ex.Message,我得到:Error reading the \\\\computer1\\sharedfolder\ directory
。
我该如何解决这个问题?