首页 文章

C#Mono - 低级键盘挂钩

提问于
浏览
4

我正在使用我在CodeProject.com for a low-level keyboard hook上找到的代码 . 唯一的问题是它使用不能在单声道中工作的外部DLL调用 . 我想知道是否有人知道如何完成与该代码相同的事情,但是将在使用.net的Linux和使用mono的Linux中运行?

编辑:澄清'm trying to do: I'正在制作Dashboard like application . 该程序位于系统托盘中,当用户按下热键时,它将弹出所有小工具 . 所以程序没有抓到任何击键,所以我使用Windows DLL调用,这不知道是否有办法做同样的事情,但是会在Linux中使用mono运行吗?

2 回答

  • 4

    仅使用.Net不可能获得此行为 . 您必须为运行的每个平台使用二进制驱动程序(Windows,Linux,Mac OS) . 可能只能使用P / Invoke(检测您正在运行的操作系统,调用适当的系统库),这样您就不必分发任何“额外”的dll / so / dylib .

  • 3

    如果不知道你想捕获什么,很难确定什么对你有用 . 您可能希望查看使用Application.AddMessageFilter .

    这里有一个例子:http://dn.codegear.com/article/30129

相关问题