アプリケーション実行のスケジューリング
ここまでの段階で、コマンドラインアプリケーションは期待どおりの動作をするようになりました。次のステップは、これが適切な時刻に実行されるようスケジュールすることです。
先ほど述べたとおり、最初のステップは、実行可能ファイルと設定ファイルを目的のコンピュータにコピーすることです。格納する場所は自由ですが、専用のフォルダを作るのが一番良いでしょう。私の場合は、自分のサーバのInetpubフォルダの下にあるscheduleフォルダに置いています。Webアプリケーションに関係するものですが、wwwrootフォルダとは別の場所に置きたいからです。
サーバにインタラクティブにログインした場合は、ファイルをコピーした後に実行可能ファイルをダブルクリックするだけで、エラーを起こさずに動作するかどうかを確認できます。エラーが発生しなければ、後はスケジュールされたタスクとして設定するだけです。
プログラムをスケジュールされたタスクとして実行するには、コントロールパネルの[タスク]アプレットを使用します。通常は、[スタート]メニューから[コントロールパネル]を選択して[タスク]をダブルクリックします。
既にスケジュールされているタスクと一緒に、[スケジュールされたタスクの追加]というアイテムがあるはずです。[スケジュールされたタスクの追加]をダブルクリックすると、タスクウィザードが起動します。
[参照]ボタンをクリックし、先ほどコピーしたアプリケーションの実行可能ファイル(Http2Email.exe)を探して選択します。
スケジュールのタイプを選択してから、アプリケーションを実行するタイミングについて詳細を設定します。
次に、アプリケーションを実行するアカウントのユーザー名とパスワードを入力します。
[完了]ボタンをクリックすると、[タスク]ウィンドウに新しいタスクが表示されます。ここからタスクを監視でき、さらにアプリケーションの前回の実行結果も見られます(0x0は、アプリケーションがエラーを起こさずに終了したことを示します。それ以外の場合は、通常、エラーが起こったことを意味します)。
まとめ
コマンドラインの.NETアプリケーションを作成し、Windowsのタスクスケジューラからその実行をスケジュールすることがいかに簡単か、本稿を通じて紹介できたのではないかと思います。
Webベースのアプリケーション構築に慣れている人は、最初はなじめないかもしれませんが、何回か試すうちにコツがつかめるでしょうし、処理をスケジュールどおりに実行できるとどれだけ便利かが実感できるでしょう。