我想将这些消息发送到应用程序:
<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函数发送编辑.. 谢谢你们的回复! 我解决了我的问题,再次感谢!
答案 0 :(得分:1)
我尝试将密钥发送到应用程序,并使用Spy ++查看消息。 具体来说,我想将箭头键发送到应用程序。从Spy ++中,我看到发送了上述消息。在我尝试了所有内容之后,我发送了以下消息:
PostMessage(handle, WM_KEYDOWN, (int)Keys.Down, 0x00140001);
PostMessage(handle, WM_KEYUP, (int)Keys.Down, 0xC0140001);
现在正常运作!谢谢你们!
答案 1 :(得分:0)
您无法发送与绘制窗口相关的消息。只有系统才能发送它们。如果您需要强制重新绘制,则只需调用InvalidateRect。
您可以成功发布的计时器消息。
您可能不需要发送WM_GETDLGCODE消息,因为它们没有副作用。