CodeProject上的项目 全局钩子
http://www.codeproject.com/KB/cs/globalhook.aspx
问题是作者的Demo一切正常
而我写同样的 会出现 未处理Win32Exception 操作成功完成这样的错误//作者的代码
UserActivityHook actHook;
void MainFormLoad(object sender, System.EventArgs e)
{
actHook = new UserActivityHook(); // crate an instance with global hooks
// hang on events
actHook.KeyDown+=new KeyEventHandler(MyKeyDown);
}
public void MyKeyDown(object sender, KeyEventArgs e)
{
LogWrite("KeyDown - " + e.KeyData.ToString());
}
private void LogWrite(string txt)
{
textBox.AppendText(txt + Environment.NewLine);
textBox.SelectionStart = textBox.Text.Length;
}
//我的代码
UserActivityHook actHook;
private void AppForm_Load(object sender, EventArgs e)
{
actHook = new UserActivityHook(false,true);
actHook.KeyDown += new KeyEventHandler(MyKeyDown);
}
public void MyKeyDown(object sender, KeyEventArgs e)
{
if (e.KeyData == Keys.F12)
{
MessageBox.Show("F12");
}
else
return;
}
//错误定位在UserActivityHook.cs文件的第562行 throw new Win32Exception(errorCode);
http://www.codeproject.com/KB/cs/globalhook.aspx
问题是作者的Demo一切正常
而我写同样的 会出现 未处理Win32Exception 操作成功完成这样的错误//作者的代码
UserActivityHook actHook;
void MainFormLoad(object sender, System.EventArgs e)
{
actHook = new UserActivityHook(); // crate an instance with global hooks
// hang on events
actHook.KeyDown+=new KeyEventHandler(MyKeyDown);
}
public void MyKeyDown(object sender, KeyEventArgs e)
{
LogWrite("KeyDown - " + e.KeyData.ToString());
}
private void LogWrite(string txt)
{
textBox.AppendText(txt + Environment.NewLine);
textBox.SelectionStart = textBox.Text.Length;
}
//我的代码
UserActivityHook actHook;
private void AppForm_Load(object sender, EventArgs e)
{
actHook = new UserActivityHook(false,true);
actHook.KeyDown += new KeyEventHandler(MyKeyDown);
}
public void MyKeyDown(object sender, KeyEventArgs e)
{
if (e.KeyData == Keys.F12)
{
MessageBox.Show("F12");
}
else
return;
}
//错误定位在UserActivityHook.cs文件的第562行 throw new Win32Exception(errorCode);
解决方案 »
- 求教一个可能跟线程有关的界面显示问题
- 怎么清空dataGridView
- 麻烦各位网友帮我看看这段代码。先谢谢了。
- label属性介绍
- C# 里取闭合路径包含的图形的方法
- ***C#中有么有类似java.lang.reflect.InvocationHandler接口的接口,谢谢指导?
- c# 能做像http://yjhy.com/那样的一键还原系统的功能吗
- 100分,WinForm中父窗体是用户控件,子窗体怎么刷新他
- 在制作安装包时,有特殊需要,安装路径不能含有空格。如何提示?
- 怎样能够知道listview是否有选中的项,急,谢谢,帮帮忙吧
- 简单的分层问题~~~~
- 如何获取按钮的Click事件的EventHandler列表?
参数不太对嘛
UserActivityHook 是什么?
类吗?
委托类型没错 完全是复制作者的demo里的代码
开始也以为UserActivityHook跟作者的项目里的UserActivityHook不一样
又重新把他的UserActivityHook覆盖掉我项目里的同名文件
问题依旧哪位可以吧上面那个项目下载下来看看问题出在哪??
actHook = new UserActivityHook(); //作者的
构造函数不一样
你修改了UserActivityHook吗?
第一个false是不使用鼠标HOOK 第2个true是使用键盘hook
我吧他改成不带参数的构造函数 也是那个问题LS的好人你能不能new一个项目用的试下看会不会出那个问题???
我这里也有源码
http://blog.csdn.net/wzuomin/archive/2007/06/18/1656315.aspx
我的msgbox只用来试下有效果没 居然....... >_<
奇怪作者的demo一点问题都没有
把勾去掉
全局钩子不是需要DLL的,而且会注入其他进程的,但是托管下的它是怎么工作的,还没搞明白