桌面(或C盘)上的文件夹上的FileSystemWatcher

时间:2017-09-29 08:41:29

标签: c# winforms filesystemwatcher drive

我正在创建一个winforms项目,用于检查文件夹中的文件。它仅适用于放入文件夹中的新文件。我正在使用FileSystemWatcher。它在D驱动器上工作正常但在C驱动器上失败。

  1. 我在每个文件夹上给了每个人完全的权限
  2. 我尝试通过点击一次发布它以获得完全信任的应用程序。但它也因出版版本而失败
  3. 尝试以管理员身份运行exe文件和visual studio。什么都没有改变
  4. 尝试绝对路径和额外过滤器。
  5. 它不会引发任何错误。什么都不做。

    非工作代码

    string desktop = Environment.GetFolderPath(Environment.SpecialFolder.Desktop);
    teklifwatcher.Path = desktop+"\\XMLTeklif";
                        teklifwatcher.NotifyFilter = NotifyFilters.LastWrite;
                        teklifwatcher.Filter = "*.xml";              
                        teklifwatcher.Changed += new FileSystemEventHandler(TeklifXML);
                        teklifwatcher.EnableRaisingEvents = true;
    
             private void TeklifXML(object sender, FileSystemEventArgs e)
                    {
            //dostuff
            }
    

1 个答案:

答案 0 :(得分:1)

我自己解决了这个问题。我假设filesystemwatcher无法直接观看c:驱动文件。由于安全原因。 但我们可以像使用任何其他应用程序一样使用Program Files(X86)文件夹。

任何有类似问题的人只需在程序文件x(x86)上的文件夹上使用filesystemwatcher。并授予该文件夹的权限。瞧!它有效