SendMessage方法如何传递按键消息

jmghoul 2010-12-09 10:56:23
DllImport user32.dll我不太了解我想用它其中的SendMessage方法做一个按键的消息传递给对象窗体(改窗体不受我控制)
是否可行? 关于SendMessage(IntPtr hWnd, uint Msg, int wParam, int lParam)方法中的第一个参数我有,但其他的参数
我不知道该输入什么,比如我想传递a键按键指令,其他参数该如何写,在网上我看到int wParam, int lParam参数赋值一个固定的16进制数,这个数是如何获得的? 比如private const int WM_COMMAND = 0x0112;
小弟不才请高手指教!
...全文
261 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
jmghoul 2010-12-09
  • 打赏
  • 举报
回复
windows中的标准Key_Char这个我得到哪里去查值呢?
mjp1234airen4385 2010-12-09
  • 打赏
  • 举报
回复
SendMessage(IntPtr hWnd, uint Msg, IntPtr wParam, IntPtr lParam);
一般使用这个dll导入声明。
譬如:你要把字母a,发送到其他程序中的一个文本框内。
1.其中 hWnd 是文本框的句柄。一般要通过FindWindow和FindWindowEx才能找到这些。先找到窗体、列举或查找窗体中的控件,然后发送消息。
2.Msg是你要发送的消息,key_char,可以是这个,需要手工定义,但是必须和windows中的标准Key_Char一样。就是你说的private const int WM_COMMAND = 0x0112;过程。当让WM_COMMAND 和 Key_Char不一样。
3.wParam就是字母a的值了,好像是96吧,10进制的。
4.lParam可以为空,传入IntPtr.Zero就行了。

C++的参考
TimZhuFaith 2010-12-09
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 mjp1234airen4385 的回复:]
SendMessage(IntPtr hWnd, uint Msg, IntPtr wParam, IntPtr lParam);
一般使用这个dll导入声明。
譬如:你要把字母a,发送到其他程序中的一个文本框内。
1.其中 hWnd 是文本框的句柄。一般要通过FindWindow和FindWindowEx才能找到这些。先找到窗体、列举或查找窗体中的控件,然后发送消息。
2.Msg是你要发……
[/Quote]http://blog.csdn.net/coolszy/archive/2010/04/24/5523700.aspx

110,534

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧