【问题标题】:Global hook mousedown and keypress events are not firing全局挂钩 mousedown 和 keypress 事件未触发
【发布时间】:2015-05-19 12:52:21
【问题描述】:

我在我的 c# 桌面应用程序中使用了与此处给出的完全相同的代码:https://github.com/gmamaladze/globalmousekeyhook

只要应用程序处于焦点状态,它就会工作并触发 mousedown 和 keypress 事件。如果我在另一个应用程序上,比如说在 Visual Studio 上(当鼠标键记录器正在运行时),它不会触发事件。

这是正确的行为吗?如果是这样,我们将不胜感激。

【问题讨论】:

  • 我的水晶球说你跑 VS 高架。除非您的程序运行 elevated as well,否则您无法监视提升的应用程序的键或鼠标事件。
  • @HansPassant 非常感谢。它节省了很多时间。自过去 3-4 天以来,我一直在尝试这样做,并且认为它不起作用,因为我正在最小化窗口,但是使用 Run As Admin 打开应用程序解决了这个问题。然而,使用 clickonce 很棘手。

标签: c# desktop-application mousekeyhook


【解决方案1】:

正如@Hans Passant 所建议的,如果我们必须跟踪其他提升应用程序中的活动,应用程序必须在提升模式下运行。在 Elevated 模式下运行 ClickOnce 应用程序并不容易,我使用这个技巧来实现它。 http://antscode.blogspot.com.au/2011/02/running-clickonce-application-as.html

【讨论】:

    猜你喜欢
    • 2023-03-17
    • 1970-01-01
    • 1970-01-01
    • 2011-02-20
    • 1970-01-01
    • 2021-06-29
    • 1970-01-01
    • 1970-01-01
    • 2018-06-29
    相关资源
    最近更新 更多