2010-07-31 59 views
57

發送消息和發佈消息(純粹的Windows編程)和它們與C#,WPF和純windows編程有什麼關係?Send Message和Post Message之間有什麼區別,以及這些與C#,WPF和Pure windows編程有何關係?

我是新來的線程和所有相關的東西,所以請原諒我明顯quesiton。 我需要挖掘線程的外部..請讓我知道鏈接,幫助我從win32編程到WPF構建我的概念。

我需要從郵件消息Afx(調用開始一個新線程)的委託Invok /開始調用到分派器。

回答

75

PostMessage(在 「純windows編程」,又名WIN32 API)是asynchronous,即,引用文檔:

地方(日誌)與 線程相關聯的 消息隊列的消息創建指定的 窗口並返回而不用等待 線程處理消息。

要在與線程關聯的消息隊列 中發佈消息,請使用PostThreadMessage函數 。

SendMessagesynchronous是,即,再次引用:

發送指定的消息到 窗口或窗口。 SendMessage 函數調用指定窗口的窗口過程 ,並且不返回 ,直到窗口過程處理該消息爲 。

立即發送消息並返回 使用SendMessageCallback或 SendNotifyMessage函數。若要將 消息發佈到線程的消息隊列 並立即返回,請使用PostMessage或PostThreadMessage 函數的 。

關於這兩個函數及其使用的一個很好的教程是here

連接到WPF在this SO question討論。

相關問題