- - PR -
C#で日付変更のイベントを取りたい
1
投稿者 | 投稿内容 | ||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
投稿日時: 2005-11-21 11:33
日付が変更したらメールを送信するプログラムを書いています。
C#で日付が変更したことを確認する方法はないでしょうか? sleepである一定時間ごとに日付を確認して、日付が変わったらメールを送る といったプログラムは書きたくないのです。 またATコマンドをつかって毎日メールを送るプログラムを実行する といった方法も取りたくないのです。 わがままなのですが、なにかいい方法をご存知の方がいらしたら ご教授くださるようお願いいたします。 | ||||||||||||
|
投稿日時: 2005-11-21 11:42
監視するプログラムと、実行するプログラムを分ければスッキリすると思いますが...
タスク スケジューラは如何でしょう? 送信プログラムを実行するだけですよね。 _________________ C# と VB.NET の入門サイト じゃんぬねっと日誌 | ||||||||||||
|
投稿日時: 2005-11-21 12:02
たしかに分ければすっきりすると思うのですが、 もし日付変更のイベントがあれば sleepをつかったり、前回実行した時の日付を記憶しておくような処理が 必要でなくなるのでスッキリしたプログラムがかけるのではないかなぁ と思ったのです。
私もこの方法を使って生きたいのですがMGRから Windows Service を作成して実現できないか? と言われこまってるんですよぉ | ||||||||||||
|
投稿日時: 2005-11-21 12:17
無いです。 提供されている機能を組み合わせて、自分で同等の効果を作り出すしかありません。 1分周期程度のタイマーを使って十分に実現できますよね?
「1日単位のイベント」と Windows サービスは関係がありませんね。 Windows サービス化を検討するのは、「コンソールがログオン状態でなくても決められた処理を実行する」ためです。 バックエンドでメール送信をしたいんでしょうが、2つの問題を混同してはいけません。 結局 1.Windows サービスで 2.1分周期程度のタイマーで日付の変更を監視して 3.メールを送信 すればいいんでしょうが、1 と 2 については、標準の Windows サービスである「タスクスケジューラ」が提供している機能なので、わざわざ独自に再生産する意義があるのかどうか。。。 | ||||||||||||
|
投稿日時: 2005-11-21 14:09
じゃんぬねっとさん、渋木宏明(ひどり)さん
レスしてくださりありがとうございます。 MGRにタスク スケジューラ使ったほうが コードの量が減るのでバグの量も減りますよぉ といってタスク スケジューラを使うことになりました。 どうもありがとうございます。 | ||||||||||||
|
投稿日時: 2005-11-21 18:49
ですね。。。 余計なものを作ったばっかりに、Framework のバグに泣く羽目になりました。WindowsUpdate のタイミングで再起動かけています(;>_<ビェェン ___________________________________________________________________ □ written by Jitta on 2005/11/21 □ Microsoft MVP for Visual Developer ASP/ASP.NET Oct.2005-Sept.2006 _________________ |
1