我在我的程序中得到了某個應用程序的HWND,然後發送WM_CLOSE給它們,來起到結束程序的效果。
一般的應用程序都能被結束,如記事本,VC, Acrobat等,可就是資源管理器和iexplorer沒反應,這是什麽原因?
然後我查了半天MSDN,把
SendMessage(hWnd, WM_CLOSE, 0, 0);
改成
SendMessage(hWnd, WM_DESTROY, 0, 0);
SendMessage(hWnd, WM_NCDESTROY, 0, 0)
結果發現資源管理器和iexplorer能關閉了,但是我要關閉桌面時就出錯,而本來用WM_CLOSE的時候是關機畫面Why?
請高手指點
一般的應用程序都能被結束,如記事本,VC, Acrobat等,可就是資源管理器和iexplorer沒反應,這是什麽原因?
然後我查了半天MSDN,把
SendMessage(hWnd, WM_CLOSE, 0, 0);
改成
SendMessage(hWnd, WM_DESTROY, 0, 0);
SendMessage(hWnd, WM_NCDESTROY, 0, 0)
結果發現資源管理器和iexplorer能關閉了,但是我要關閉桌面時就出錯,而本來用WM_CLOSE的時候是關機畫面Why?
請高手指點
果然用PostMessage()就行了
不過再問一下,爲什麽用SendMessage()不行呢?
多謝
而PostMessage只是简单的加入对象窗口的线程的消息队列中去的原因吧