2012-03-08 22 views
0

ウォッチャーコンソールアプリケーションアプリケーションを作成して、特定のフォルダを監視します。そこにファイルが作成されている場合は、そのファイルを別のディレクトリにコピーしてそこのファイルを削除します。アプリケーションはスタンドアロンのコンソールとして動作します。しかし、私はWindowsサービスを介して同じexeを呼び出す場合は動作していないのですか? (あなたは「として実行」使用してきた場合を除き)、スタンドアロンのコンソールアプリは現在ログオンしているユーザーのコンテキストで実行されるWindowsサービスフォルダ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(); 
} 

答えて

0

で、私は次のように呼び出しています設定の変更があるでしょう。

サービスのプロパティの[ログオン]タブを確認します - サービスは「ローカルサービス」として実行されていますか?この口座には最低限の特権があります。必要なタスクを実行するためにサービスに必要な最小アクセス権を持つアカウントを作成します。

関連する問題