OSの再起動を検知するには


秋葉系B-BOY  2010-06-13 02:06:35  No: 38658  IP: 192.*.*.*

アプリを起動中にOS(XP、VISTA)がシャットダウンではなく
再起動が選択されたことを検知するにはどうすればいのでしょうか?
※DELPHI7

編集 削除
スパムちゃん  2010-06-13 16:12:44  No: 38659  IP: 192.*.*.*

少し古い情報かもですが、私も一度調べたことがありました。

終了を判断するのは、WM_QUERYENDSESSIONを送信されるので、それを取得すればできるんですが、この方法では、どうも終了なのか、再起動なのかは、判断できないようです。

そうなると、もうイベントビュアーを読み込んで、

イベントログサービスが終了しました。
イベントログサービスが開始されました。

の時間が短ければ、再起動した・・・、と判断するしかないのかなー?と思いました。
イベントビュアーのアクセスの方法が今ひとつ分からなかったので、私は断念したのですが。
Delphiでできるかどうかも不明です。

もしくは終了オプションを置き換えちゃうかー。

編集 削除