0

FileSystemWatcher を使用し、関連するコマンド (バッチ ファイルなど) を呼び出す C# サービスがあります。バッチ ファイルの 1 つは、実行中のプログラムを強制終了し、いくつかのファイルをコピーして、プログラムを再起動する必要があります。Taskkill は、プログラムを取り除くために使用されます。

バッチ ファイルは呼び出されますが、taskkill コマンドはプロセス (ユーザーが開いている notepad.exe など) を決して強制終了しません。そのユーザーとしてログインしたときに実行すると、同じバッチファイルが機能します。

ログオンしたユーザー アカウント (メモ帳を開いているのと同じアカウント) としてサービスを実行しようとしましたが、役に立ちませんでした。デフォルトはローカル システムです。

ユーザー名をハードコードすることはできません (ただし、なりすましの構成を考えていますが、ユーザーのパスワードを保存するのは少し気が進まない)。

助言がありますか?

4

2 に答える 2

0

おそらく、削除する価値があるかもしれませんが、そうでないかもしれません。ローカル システムは、taskkill.exe の /F (強制) スイッチを使用してプロセスを強制終了できました。

于 2013-07-02T12:23:36.750 に答える