システムの起動時に実行されるタスクをスケジュールしました。しかし、機能していません。タスクを手動で実行すると、正常に機能しています。以下は設定のスクリーンショットです。
ここで何が悪いのですか?このタスクは、プロセスを起動するbatファイルを実行します。ところで、最後の実行結果は成功と表示されます。
このタスクは「VM」ユーザー権限で実行しています。 「VM」アカウントには「バッチジョブとして実行」権限がありますか?
ローカルタスクスケジューラまたはDC GPO Preferencesを使用して、スケジュールされたタスクをどのように設定しますか。タスクが=を介して作成されている場合、 DC GPO設定は同じです...トリガーが唯一の場合、タスクは実行されません(実行しているもの、VBS、PowerShell、CMD、EXE) 「起動時」です。2つのトリガーでタスクを作成する必要があります。
タスクの作成/変更時
起動時
これで、コンピュータを再起動するたびにタスクが正しく実行されます。
リマーク
これは、タスクがGPOプリファレンスDC側で作成された場合にのみ適用されます。
これは、「起動時」のトリガーにのみ適用されます。私が見た限りでは、他のすべてのトリガーは正常に機能します。
このGPO設定を作成するときは、コンピューターがGPOを更新するたびにタスクを実行したくない場合は、「置換」モードを使用しないでください。更新中の「置換」モードでは、タスクは再作成されており、トリガーは「タスクの作成/変更時」です。代わりに「更新」モードを使用してください。また、この回避策で問題が発生した場合は、この方法でタスクを作成できません。これらの種類のタスクには「置換」モードが必要なため、コンピューターはドメインの一部ではなくなりました。
プログラムはバックグラウンドスクリプトでもサービスでもありません。グラフィカル環境でユーザーとして実行する必要があるGUIプログラムです。したがって、起動時ではなく、ユーザーログイン時に、スケジュールされたタスクとして起動する必要があります。
プログラムは独自の開発段階にあるため、設計を修正できます。バックグラウンド操作を実行するバックグラウンドサービスと、構成/監視用の分離されたGUIが必要ですか?
BIOSで高速起動が有効になっていますか? Win10は、高速ブートが有効になっている場合、スリープモードと同様の方法で再起動を使用するため、真の「再起動」ではありません。
私は同じ問題でしばらく苦労しました。私の場合、問題は「コンピュータがAC電源で動作している場合にのみタスクを開始する」の設定でした。
このバッチファイルをWindowsサービスとして実行してみませんか?何か特別な理由はありますか?参考までに: http://nssm.cc/usage
Win 10タスクスケジューラにも問題があり、何らかの理由であなたと同じ動作をします。タスクは正常に実行されたとマークされますが、プログラム/スクリプトは実行されません。
これを解決するには、少なくとも私にとってはうまくいきます。スクリプトのショートカットをスタートアッププログラムとして%APPDATA%\Microsoft\Windows\Start Menu\Programs\Startup
に配置してみてください。
このショートカットを最高の権限(管理者)で実行することもできます。これは、少なくとも私のソフトウェア/スクリプトでは、タスクスケジューラよりもうまく機能することがわかりました。それらのいくつかはGUIで実行され、いくつかはGUIなしで実行されますが、どちらもStartup
フォルダーで正常に実行されます。
PD:%APPDATA%
はシステム変数です。フルパスは次のようになります。
C:\Users\YourUserName\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup