问题标签 [mousekeyhook]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c# - 挂钩选择流程
如何使用这个库来挂钩键和鼠标到目标进程不是全局的不是我的应用程序
// 注意:对于应用程序挂钩,请改用 Hook.AppEvents()
但是如何获取目标应用程序或进程?
c# - C# MouseKeyHook:某些键+修饰符组合不起作用
我一直在使用 MouseKeyHook NuGet 包,它非常适合捕获大多数输入。但是我在捕捉某些键+修饰符的组合时遇到了一些问题。
让我们试着敲几个键,看看输出是什么:
极好的!正是你所期望的。现在键盘顶部的数字栏呢?
好的,再次,正是你所期望的。没问题... 0 键呢?
那么这里发生了什么?为什么在按下 D0 + Control + Shift时事件不能正确触发?另外值得注意的是,这是一个 KeyDown 事件,因此只要您按住键,输出就会重复,但是当打印“ShiftKey”输出时,它永远不会重复,这很奇怪。
最坏的情况是,我总是可以切换我的绑定,但是我注意到许多不同的键 + 修饰符组合(主要是 oem 键、数字键盘和数字键)的这种奇怪之处,所以很高兴知道为什么会发生这种情况。
c# - MouseKeyHook 崩溃
有人可以看看我有崩溃问题的 C# 源代码吗?该程序应该省略鼠标有时发送的不必要的双击,它可以工作,但在使用该程序一段时间后它会崩溃。
崩溃的行:
这是错误代码:
我正在使用 Visual Studio 社区 2017
资源:
程序.cs: https ://pastebin.com/AX9VRi00
thecontext.cs: https ://pastebin.com/G1cNzj4d
c# - 如何在不单击C#的情况下取消鼠标左键?
我正在尝试编写应用程序,当用户长按鼠标左键时,它将发送右键单击。
我找到了https://github.com/gmamaladze/globalmousekeyhook项目并用它挂钩事件。
当我向左连接时,然后用鼠标事件发送右键单击,首先触发左键单击,然后右键单击触发。
有什么方法可以取消第一个鼠标左键吗?
c# - MouseKeyHook 'CallbackOnCollectedDelegate' 问题
我正在使用 Gma.System.MouseKeyHook 并收到以下异常:
Managed Debugging Assistant 'CallbackOnCollectedDelegate'
Message=Managed Debugging Assistant 'CallbackOnCollectedDelegate' : 'A callback was made on a garbage collected delegate of type 'Gma.System.MouseKeyHook!Gma.System.MouseKeyHook.WinApi.HookProcedure::Invoke'. This may cause application crashes, corruption and data loss. When passing delegates to unmanaged code, they must be kept alive by the managed application until it is guaranteed that they will never be called.'
我试图处理函数调用和订阅。但是,问题仍然存在。我也尝试多次运行它,偶尔它也会给出“NullReferenceException”。这也让我很困惑,也许这些问题是相关的。
}
c# - 如何在我的情况下导入库 MouseKeyHook?
我刚开始用 c# 编程,我不知道如何导入库。我需要"globalmousekeyhook"
在我的程序中。
有人可以帮助我吗?谢谢!^^
wpf - 击中断点时鼠标冻结/滞后
目标:能够在Windows桌面应用程序上找到被点击的元素的点(X,Y)而不执行点击本身。
不工作的解决方案我已将mousekeyhook Nuget 包添加到我的 .net 核心 WPF 应用程序中,它工作正常(当单击和事件引发正确位置时),但每次该程序命中断点(对于下面的特定示例 - 在 M_Events_MouseDown 方法)鼠标开始滞后约 20 秒。
我还发现在 WinForms 应用程序中它运行顺畅
MouseKeyHook 实现:
c# - 我无法在提升的 Windows 应用程序中全局挂钩键盘
我正在创建一个剪贴板监视器,它将捕获剪贴板中的更改,然后将剪贴板仅转换为纯文本。因此,这工作正常,但我真的无法弄清楚为什么我的应用程序在提升的应用程序(例如管理员命令提示符或任务管理器)内时不挂接键盘。它只是简单地忽略了我的按键!?
我已经尝试通过这篇文章“手动”使用键盘,如何停止在 C# 中进一步处理全局热键,但现在我正在尝试另一个名为https://github.com/gmamaladze/globalmousekeyhookglobalmousekeyhook
的项目
我在这两个中都遇到了同样的问题解决方案。
我的问题是,“如何ALT+H
从已提升的应用程序中挂钩并获取应用程序中可见的组合键”?它似乎在其他任何地方都可以正常工作。
此代码或多或少来自以下示例代码globalmousekeyhook
:
我的应用程序没有提升 - 它只是在启动时正常运行。
我在这里想念什么?谁能指出我正确的方向?:-)
c# - 在运行时使用 MouseKeyHook 取消注册热键
我想允许用户在运行时重新分配热键并使用Gma.System.MouseKeyHook
NuGet 包。
在运行时创建新的热键工作得很好而且很花哨,但是清除Action
已经分配的Combination
/ Sequence
(通过设置它的Action = null
)不会删除原始分配。
有没有办法在每个Combination
/Sequence
基础上做到这一点?更具体地说,我想避免调用Dispose()
我的Hook.GlobalEvents()
参考并不得不重新初始化整个系统分配。
任何帮助将不胜感激 :)
c# - 如何修复 C# 控制台应用程序中的错误 KeyEventHandler?
我有一个问题,在我的winform应用程序中执行这段代码时,它运行正常,但是在控制台上运行时却收到错误消息,似乎KeyEventHandler只在winform中使用,是的,可以在控制台应用程序中替换什么。这是我的钩子函数:
这是我的使用方法:
}
我在 2 行收到一条错误消息
谁能帮帮我,非常感谢!