高権限の自動実行プログラム(タスク)が勝手に停止する

高権限の自動実行プログラム(タスク)が勝手に停止する

起動時に自動的に実行したいプログラムがあるのですが、昇格された権限が必要なのでUACそれを妨害する自動実行中。

私はタスクスケジューラ方式この問題を回避するには、タスクを作成し、タスクを実行するショートカットを作成し、最小化して、起動するフォルダ内のスタートメニュー

ほとんどの場合、期待どおりに動作します。プログラムは起動時にプロンプ​​トなしで自動的に実行され、トレイに最小化されます。

しかし、問題があります。それは、一見何の理由もなく、時々消えてしまうようです。なぜでしょうか?

(実際、私は 2 つのプログラムに対してこれを実行しました。1 つは消え、もう 1 つはクラッシュ ダンプを作成します。)

答え1

この問題はデフォルトのタスク設定が原因である可能性が高く、ラップトップで発生することが多いです。

タスクを作成すると、デフォルト設定の一部がない必要なものがすべて選択され、自動実行プログラムに問題が発生する可能性があるため、タスク スケジューラの回避策を使用する場合は、すべての設定を必ず確認する必要があります。

の中に設定タブ(図1)で、実行時間が…を超える場合はタスクを停止します。設定。この設定 (デフォルトでは 3 日間) をそのままにしておくと、自動実行プログラムは数日後に終了します。そのため、シャットダウンではなくスタンバイまたは休止状態 (ラップトップでは一般的) を使用すると、最後に起動してから 3 日後にプログラムの実行が停止することがあります。

の中に条件タブ(図2)で、セクションを参照してください。デフォルト設定では、起動時にバッテリーで実行している場合、プログラムは自動実行されません。さらに、デフォルトでは、起動時に電源に接続されていてプログラムが実行されていても、コードを抜いてバッテリーに切り替えるとすぐにWindowsそれを止める

このタスクを実行するにはコンピュータを起動してくださいオプションはデフォルトで無効になっており、自動実行プログラムではこれを必要としないため、そのままにしておく必要があります。

警告

注意すべき点の 1 つは、設定をオフにするとStart the only if the computer is on AC power、設定が無効になることStop if the computer switches to battery powerです (図 3)。明らかな意味は、後者の設定のチェックボックスが何を示しているかに関係なく、前者を無効にした場合、バッテリー電源に切り替えてもタスクは終了しないということです。これは理にかなっており、ほとんどすべての人がそうであると予想しています。さらに、これは適切に記述されたすべてのプログラムの動作です。残念ながら、Windows には、タスク スケジューラが最初のチェックボックスに関係なく 2 番目のチェックボックスに従うというバグがあります。したがって、最初の設定を無効にしても 2 番目のチェックボックスにチェックが入っている場合、バッテリー電源に切り替えても意思タスクを停止します。これを停止するには、最初のオプションを有効にし、2 番目のオプションを無効にしてから、最初のオプションを再度無効にする必要があります。


図1: デフォルトのタスク スケジューラ設定

タスクスケジューラのデフォルト設定

図2: タスク スケジューラの既定の条件

タスク スケジューラのデフォルト条件

図3: タスクスケジューラのバッテリー電源のバグバグ私には果てしない

タスク スケジューラのバッテリー電源のバグ

関連情報