いつもお世話になっております。
開発環境は、WinXP Pro(SP2) + VC++6.0(SP6)です。
現在ウィンドウプログラミング(?)で作成しているのですが、
ウィンドウ・プロシージャないで端末のログアウト時に検出される
WM_QUERYENDSESSION のベントを受信したときの動作について
質問があります。質問したいことは以下の2点です。
・WM_QUERYENDSESSIONイベントを受信したらすぐにウィンドウ
プロシージャは値(true or false)を返却しないといけないか。
・WM_QUERYENDSESSIONイベントを受信してもウィンドウプロシージャが
後処理などで値の返却に時間がかかる場合、どれくらいの時間で
値を返却しないといけないか。
何か、アドバイスがあれば教えてください。
よろしくお願いいたします。
WM_QUERYENDSESSIONに限らず、どんなメッセージに対しても
なるべく早く応答すべきです。
XPだと応答しないアプリケーションのタイトルバーに「応答なし」と
表示されますが、それが出るまでの時間が目安となるでしょう。
dairygoods さん、レスありがとうございます。
> XPだと応答しないアプリケーションのタイトルバーに「応答なし」と
> 表示されますが、それが出るまでの時間が目安となるでしょう。
すみません、ご存知でした教えて頂きたいのですが、
上記時間に関する情報はどこかのHPにありますか?
よろしくお願いします。
XP 応答なし 秒 と言うキーワードで出てきますので探してみると良いかと。
ちなみに0.1秒ルールとかも調べてみると良いと思います。
Windowsの基本的な仕組みであるイベントドリブンに関するガイドラインに
そういうのがあったと思います。
PATIO さん、レスありがとうございます。
返事が遅くなりすみません。
教えていただいた情報を元に自分で調べてみます。
ありがとうございました。
このあたりの動作はVistaでもガイドラインに変更が入っていたはずなので
MSのガイドラインを見るのがよいです。