スケジュールされたタスクがあり、サーバーにあるアプリケーション。
サーバーへのアクセスは特定のユーザーのみに許可されているため、そのようなアプリケーションを実行したり、指定されたアプリケーションのパスの内容を参照したりするには、ユーザーの資格情報を使用してログインする必要があります。これらの資格情報は、Windows資格情報マネージャーにWindows資格情報として追加されました。。
資格情報がすでに保存されているため、アプリケーションが配置されているフォルダーに簡単にアクセスでき、問題なく自分で実行することもできます。
問題は、アプリケーションがスケジュールされたタスクによって実行されるはずのときに発生します。トリガーがタスクを実行すると、指定されたパスが見つからず、終了コード 0x80070002 で終了します。。
私はこれが問題だと思う。タスクスケジューラを開いて手動でタスクを実行するとサーバーでアプリケーションを実行するそれはうまくいく、アプリケーションが実行され、コード 0x0 で終了しますが、資格情報の構成は変更されません。サーバー内のアプリケーションのパスにアクセスすると、この問題も自動的に修正されます。
スケジュールされたタスクのトリガーは、アプリケーションを 1 時間ごとに実行することになっていますが、一度失敗すると、1 時間ごとに失敗し続けます。ただし、正常に実行された場合は、次の 1 時間ごとに正常に実行され続けます。
サーバーのパスはドメインではなく IP アドレスによって定義されます。
これは通常、一日のうち初めてコンピュータの電源を入れた後にのみ発生します。動作し始めた場合は、コンピューターを再起動しても動作します。
その他のスケジュールされたタスクの設定:
- ユーザーがログオンしているときのみ実行します。
- トリガー: 1 時間ごと。
- アクション: プログラムを起動します。
- 条件: 任意のネットワークに接続されている限り起動します。
- タスクをオンデマンドで実行できるようにします。
- タスクが5分以上実行された場合は停止します
- 実行中のタスクが要求時に終了しない場合は、強制的に停止します。
この動作の原因は何でしょうか? タスクがスケジューラによって実行されているときに動作しないのはなぜですか?