文件夹监视文件作为Windows服务?

时间:2012-03-08 23:44:47

标签: process windows-services

我创建了一个观察者控制台应用程序应用程序来监视特定文件夹,如果在那里创建了任何文件,它会将文件复制到其他目录并删除该文件。该应用程序作为独立控制台工作。但是,如果我通过Windows服务调用相同的exe,它是行不通的?我在Windows服务中调用的设置是否会有任何变化

BackgroundWorker bw = new BackgroundWorker();
bw.DoWork += new DoWorkEventHandler(bw_DoWork);
bw.RunWorkerAsync();

private void bw_DoWork(object sender, DoWorkEventArgs e)
{
  Process p = new Process();
  p.StartInfo = new ProcessStartInfo(ConfigurationSettings.AppSettings["FolderWatch"].ToString());
  p.Start();
  p.WaitForExit();
  base.Stop();
}

1 个答案:

答案 0 :(得分:0)

独立控制台应用程序将在当前登录用户的上下文中运行(除非您使用了“运行方式”)。

检查服务属性的“登录”标签 - 它是否以“本地服务”运行?这个帐户有最低限度的特权。创建一个帐户,该服务具有服务执行所需任务所需的最低访问权限。