人力検索はてな
モバイル版を表示しています。PC版はこちら
i-mobile

Borland C++ Builder 6 にてプログラムを書きましたが
WM_ENDSESSIONメッセージが届いたときに適切な処置が
実装されていない様で、Windows のシャッドダウン
シーケンスが停止してしまいます。
(プログラム自体も終了しません)

動作環境は Windows XP Pro (SP2) です。
また、WM_ENDSESSIONをフックした場合、
プログラム自体を終了させる事はできますが、
シャットダウンシーケンス自体は停止してしまいます。

OSシャッドタウンを継続させたいのですが
回避方法はありますか?教えてください。

●質問者: mikasa_zzt231
●カテゴリ:コンピュータ
✍キーワード:Borland Builder C++ OS Windows
○ 状態 :終了
└ 回答数 : 3/3件

▽最新の回答へ

1 ● kurukuru-neko
●20ポイント

The Delphi Bug List

http://members.aye.net/~bstowers/delphi/bugs/generated/vcl-Gener...


http://members.aye.net/~bstowers/delphi/bugs/generated/vcl-Gener...

◎質問者からの返答

回答有り難うございます。

pascal 表記だったので、C++に直して実装してみました。

プログラムは終了するのですが

やはりシャットダウンプロセスは

継続できないようです。

pascalのhalt関数に相当する命令が

なかったのでexit(0)で代用しましたが

プロセスは停止してしまいました。


2 ● quintia
●20ポイント

I found the solution - I have taken away Borland's OnFormCloseQuery event and I have put everything in WndProc. Here is the code:

http://www.tek-tips.com/viewthread.cfm?qid=58851

末尾の部分。

上の文に続いてコードが示されています。

どうでしょうか?

◎質問者からの返答

回答有り難うございます。

このプログラムを参考に実装したところ

今度はプログラムがうまく終了しなくなりました。


3 ● kurukuru-neko
●40ポイント ベストアンサー

WM_QUERYENDSESSION の実装が中断が規定値

なのを変更する必要があると思います。

http://www.wwlnk.com/boheme/delphi/tips/tec0690.htm

http://www.delphipages.com/threads/thread.cfm?ID=106654&G=10...

Detecting and preventing Windows shut down

http://delphi.about.com/cs/adptips2000/a/bltip0500_4.htm?terms=c...


【Windowsの終了時のメッセージ】

http://www14.big.or.jp/~ken1/tech/tech10.html

http://homepage3.nifty.com/kenjiroom/prog/

◎質問者からの返答

シャットダウンシーケンスが

止まらずに走るように成りました。

ありがとうございます!

関連質問


●質問をもっと探す●



0.人力検索はてなトップ
8.このページを友達に紹介
9.このページの先頭へ
対応機種一覧
お問い合わせ
ヘルプ/お知らせ
ログイン
無料ユーザー登録
はてなトップ