# Re: 请问一下一个关闭Windows的问题

Posted by South Wind on May 04, 1999 at 12:28:42:

In Reply to: Re: 请问一下一个关闭Windows的问题 posted by Sephiroth on May 04, 1999 at 10:52:40:

: 基本上, 使用者不管是按右上的 "X" 或是用 Alt-F4
: 结束视窗都是先收到 WM_SYSCOMMAND wparam=SC_CLOSE
: 这个讯息.

: 当然我们不知道 VB 内部是接收哪个讯息而指派成
: Form_Unload 事件, 但是可以确定的是 Form_QueryUnload
: 应该是从 SC_CLOSE 而来, 至于 WM_DESTROY 则是
: WM_SYSCOMMAND 发生之后的事, 因为一个视窗的产
: 生&摧毁并不是只有两三道讯息就解决的, 如果你有兴趣
: 的话建议你可以将 WndProc function 内的 Msg/wparam
: 全部 Debug.Print 出来, 这样就可以很清楚的知道讯息
: 发生的前后顺序了.
: 不过根据我实验的结果, 视窗结束时并不会发生 WM_CLOSE
: 讯息, 而且从 WM_SYSCOMMAND/SC_CLOSE 算起只有 9道
: 讯息, 视窗就 destroy 完成了.

为什么我会送WM_CLOSE呢?
说来有点不好意思,猜的!
因为我手边没有一本专讲Windows讯息的书,所以那个讯息是作什么用的
说实在我也只能从字面上的意思去猜.....所以....

另外想再请问一下
我前一篇Post讲的不是很清楚
我遇到的情形应该是这样的

我的程式处于最小化的状态,并呼叫Shell_NotifyIcon再将程式Hide
然后将程序丢给WndProc这个Function处理
但是当使用者关机时(关闭Windows95,重新启动电脑等)
我若不将程式关闭或恢复成可见的Form的话
那Windows就没有办法关闭了
因此我才会试者找出关闭Windows时传回的讯息
不过照你讲的话,我似乎是抓错个了
当初是有抓到WM_SYSCOMMAND但是查不到后面的wParam是什么意思....
有没有书是专讲这方面的呢?

还有当你们遇到上面的情形是要怎么处理呢?

Follow Ups:

- Re: 请问一下一个关闭Windows的问题 Sephiroth 13:57:17 5/04/99 (3)
  - 如何在Windows关机/豋出时 ,结束由Shell_NotifyIcon启动的程式 Sephiroth 15:20:47 5/04/99 (2)
    - 等等，还得加上一些 cww 10:58:47 5/05/99 (0)
    - Re: 如何在Windows关机/豋出时 ,结束由Shell_NotifyIcon启动的程式 South Wind 18:14:56 5/04/99 (0)