Windows服务文件侦听器仅在调试时侦听

时间:2016-04-12 19:08:53

标签: c# asp.net windows-services

首先是代码:

public partial class Watcher : ServiceBase
{
    private const string PathToFolder = @"D:\print\";

    public Watcher()
    {
        InitializeComponent();
    }

    protected override void OnStart(string[] args)
    {
    }

    protected override void OnStop()
    {
    }

    private void fileWatcher_Changed(object sender, FileSystemEventArgs e)
    {
        if (e.Name != "test.txt")
        {
            return;
        }
        using (var r = new StreamReader(e.FullPath))
        {
            var json = r.ReadToEnd();
            dynamic tempTest = JsonConvert.DeserializeObject(json);
            const string filename = PathToFolder + "textParsed.txt";
            if (File.Exists(filename))
            {
                File.Delete(filename);
            }
            using (var file = File.CreateText(filename))
            {
                file.WriteLine(tempTest.Name.ToString());
            }
        }
    }
}

如果text.txt文件有变化,我想要解析该文本文件的内容并创建另一个文件。如果我将VS附加到服务并调试服务,则会触发该事件,但是当正常运行时,没有任何反应。

安装程序具有LocalSystem权限,这几乎是我所做的所有更改......应该非常简单,但不知何故不是。

0 个答案:

没有答案