FileSystemWatcher を使用し、関連するコマンド (バッチ ファイルなど) を呼び出す C# サービスがあります。バッチ ファイルの 1 つは、実行中のプログラムを強制終了し、いくつかのファイルをコピーして、プログラムを再起動する必要があります。Taskkill は、プログラムを取り除くために使用されます。
バッチ ファイルは呼び出されますが、taskkill コマンドはプロセス (ユーザーが開いている notepad.exe など) を決して強制終了しません。そのユーザーとしてログインしたときに実行すると、同じバッチファイルが機能します。
ログオンしたユーザー アカウント (メモ帳を開いているのと同じアカウント) としてサービスを実行しようとしましたが、役に立ちませんでした。デフォルトはローカル システムです。
ユーザー名をハードコードすることはできません (ただし、なりすましの構成を考えていますが、ユーザーのパスワードを保存するのは少し気が進まない)。
助言がありますか?