web-dev-qa-db-ja.com

バックグラウンドプロセスを停止するタスクスケジューラ

煩わしいバックグラウンドプロセスが開始後すぐに実行されないようにしたい(タスクスケジューラの別のタスクによる)。しかし、それは重要なので、少なくともすぐに開始する必要があります!

アイデアは、アクションtaskkillと引数/im "GPUTweakII.exe"でタスクを実行することでしたが、テスト実行すると「最終実行結果」0x1が表示されます。

もちろん、cmdに直接入力すると、問題なく動作します。 「最高の権限」で実行しています。所有者ユーザーとSYSTEMの両方を試しました。タスクアクションとしてcmdを使用して実行しようとしましたが、機能させることができませんでした。

何か案は?

編集:さて、私は http://blog.uvm.edu/jgm/2010/04/09/killing-process-as-a-scheduled-task/ のスクリプトで試してみました

私が犯した間違いの1つは、終了タスクがどのように反応するかわからないため、/f(強制引数)を使用しなかったと思います。他の誰かが何かを考えたら私に知らせてください

1
Jonzi

すべてを試していると、「一般」タブの「ユーザーがログオンしているときにのみ実行する」の設定が必須であり、「ユーザーがログオンしているかどうかに関係なく実行する」の設定が間違っていることに気付きました。とにかくログオン後に呼び出されるため、意味がありませんが、現在は機能しています。

編集:私が考えたいくつかのテストの後、これは毎回機能するとは限りません。 :( LPChipは、[設定]タブで元のタスクをセルフストップに変更することを提案しました。これは機能しましたが、アプリが開始するたびにスケジュールされたタスクを更新したため、インストールフォルダーからいくつかのファイルを削除する必要があり、設定が上書きされたと思います!!元のタスクを無効にして新しい同じタスクを作成すると、そのプログラムは毎回自動更新されませんが、ファイルの削除は正常に機能しました。何らかの理由で、マウスを置いた後だけトレイアイコンがすぐに削除されませんが、バックグラウンドプロセスは終了します。実行中なので、それは勝利です!

3
Jonzi