![](/img/trans.png)
[英]I can't understand how to use SendMessage or PostMessage calls
[英]How to use the SendMessage/PostMessage functions?
我想將這些消息發送到應用程序:
<00010> 00830BB8 S WM_GETDLGCODE
<00011> 00830BB8 R WM_GETDLGCODE fuDlgCode:DLGC_WANTARROWS
<00012> 00830BB8 P WM_PAINT hdc:00000000
<00013> 00830BB8 S WM_ERASEBKGND hdc:DD012964
<00014> 00830BB8 R WM_ERASEBKGND fErased:True
<00015> 00830BB8 P WM_TIMER wTimerID:1 tmprc:00000000
<00016> 00830BB8 S WM_GETDLGCODE
<00017> 00830BB8 R WM_GETDLGCODE fuDlgCode:DLGC_WANTARROWS
<00018> 00830BB8 S WM_GETDLGCODE
<00019> 00830BB8 R WM_GETDLGCODE fuDlgCode:DLGC_WANTARROWS
<00020> 00830BB8 P WM_PAINT hdc:00000000
<00021> 00830BB8 S WM_ERASEBKGND hdc:7601294E
<00022> 00830BB8 R WM_ERASEBKGND fErased:True
這些來自Spy ++。 如何使用C#使用SendMessage / PostMessage函數進行發送?
編輯..謝謝你們的答復! 我解決了我的問題,再次感謝!
我試圖將密鑰發送到應用程序,然后我使用Spy ++來查看消息。 具體來說,我想向應用程序發送箭頭鍵。 從Spy ++,我看到了上面的消息。 在嘗試了所有內容之后,我向應用程序發送了以下消息:
PostMessage(handle, WM_KEYDOWN, (int)Keys.Down, 0x00140001);
PostMessage(handle, WM_KEYUP, (int)Keys.Down, 0xC0140001);
現在可以正常使用! 多謝你們!
您無法發送與繪制窗口有關的消息。 只有系統可以發送它們。 如果需要強制重畫,則只需調用InvalidateRect。
您可能成功發布的計時器消息。
您可能不需要發送WM_GETDLGCODE消息,因為它們沒有副作用。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.