1
這與earlier question密切相關。等待管理代碼中的消息
在管理世界:
- 我如何檢查如果當前線程 在其消息隊列中的消息?
- 我該如何屈服於操作系統,並在當前線程 (如GetMessage或WaitMessage)中等待 ?
我正在尋找沒有PInvoke的託管等價物。
這與earlier question密切相關。等待管理代碼中的消息
在管理世界:
我正在尋找沒有PInvoke的託管等價物。
可以使用AddMessageFilter function.
我不認爲有一種方式堵塞怎麼辦,沒有的P/Invoke,因爲這超出了.NET的意圖。
你可以重寫WndProc,然後在被調用時觸發你自己的事件。這當然不會被阻止。如果你想阻塞一條消息,你可以在另一個線程中等待同步對象,並讓WndProc發送該對象的方法。
這看起來像是最好的選擇,我完全錯過了認爲你想要抽取消息隊列的問題;-) – JoshBerke 2009-01-09 18:35:36
你會覆蓋哪個WndProc?每個控制都有它自己的。 – 2009-01-09 20:34:33