void KeyDown(object sender, KeyEventArgs e)
{
IntPtr ipt = FindWindow(null, "abc - 记事本");
if (ipt != IntPtr.Zero)
{
SetForegroundWindow(ipt);
keybd_event((byte)Keys.A, 0, 0, 0);
keybd_event((byte)Keys.A, 0, 2, 0);
}
}
我用这个方法改键,为什么我按一下键,会在记事本上打出一连串的a,我数了一下,一共是34个,我要求的是按一下键,不管按什么键,只打出一个a啊,要如何实现
{
IntPtr ipt = FindWindow(null, "abc - 记事本");
if (ipt != IntPtr.Zero)
{
SetForegroundWindow(ipt);
keybd_event((byte)Keys.A, 0, 0, 0);
keybd_event((byte)Keys.A, 0, 2, 0);
}
}
我用这个方法改键,为什么我按一下键,会在记事本上打出一连串的a,我数了一下,一共是34个,我要求的是按一下键,不管按什么键,只打出一个a啊,要如何实现
解决方案 »
- C#数据库程序读配置文件
- 如何获取用户选择的Radio Button(例如2个Radio Button选择男女)
- C#的一个问题
- treeview 中节点问题。。急!!!!!
- SqlDataAdapter.update问题...急!!
- 关于hashCode()和GetHashCode()
- 在网页中怎样实现树型目录,如果能够象csdn论坛中的导航栏一样就更好了,我刚学c#,不知道怎么样才能够实现
- 請問如何使用LINQ 計算各值之間的差值呢?
- access的中文问题
- 灌水一篇——编织未来:Microsoft的.NET 策略
- c# 如何把excel文件转成xml格式文件?
- c#中怎样将uft8编码转换为gb2312编码
用键盘钩子时候,他的过程函数会执行两次
keybd_event(VK_Q, 0, 0, 0);
//如果释放
keybd_event(VK_Q, 0, KEYEVENTF_KEYUP, 0);
keybd_event((byte)Keys.A, 0, 2, 0);
就是按下,弹起啊,
SendMessage(hWnd,WM_KEYCHAR,VK_D,NULL);中WM_KEYCHAR的wparam码是多少要,要不用不了,我只知道一个WM_CHAR,但是没用