2012-05-10 33 views
5

我試圖調試我的Windows安裝問題。細節並不特別重要,但我正在尋找以下問題的答案:如何找出誰是SendMessage?

explorer.exe收到WM_SETTINGCHANGE消息。在WinDbg中,我可以在適當的WndProc中打破。我如何找出誰發送了這條消息?那就是:有什麼辦法可以追溯到名爲SendMessage(HWND_BROADCAST, WM_SETTINGCHANGE, ...)的流程?

回答

1

Windows消息是匿名的。您調用的應用程序有沒有辦法確定他們來自何處,除非消息定義了一些方法來識別發送者(這將是很容易僞造)

+0

調用進程阻塞,直到消息傳遞。因此,必須有一個RPC機制。我知道有一種方法可以在跨進程的COM調用中找到調用者。我想知道是否有辦法爲Windows消息做同樣的事情。 –

+1

...我不問我的應用程序是否可以弄清楚。我在問WinDbg是否能算出來。 –