.net - 是否可以从 .NET 中的全局键盘 Hook 中确定当前用户

标签 .net windows

我想创建一个键盘和鼠标 Hook ,它将作为 Windows 服务启动。我想监控全天使用该系统的各种用户的事件。即哪些用户在什么时间活跃

是否可以确定哪个用户将接收事件? (该服务将作为单独的用户运行,因此 getCurrentUser 不合适)

最佳答案

不,Environment.UserName 不起作用 - Hook 过程不会在输入接收器的上下文中调用。

事实上,我认为这是不可能的 - 如果使用 .NET,您无疑会使用 _LL Hook ,它是低级 Hook 。在我看来,它们在 Windows 甚至确定哪个桌面/应用程序将接收事件之前就已执行。不过,我可能错了——我自己从未使用过 _LL Hook 。

关于.net - 是否可以从 .NET 中的全局键盘 Hook 中确定当前用户,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/119508/

相关文章:

c# - 如何在.NET中将一个项目编译成多个dll

c# - .NET 中的数字分组

c# - 将 Tortoise SVN 修订号链接到程序集版本

c# - 查找 System.AccessViolationException 的原因

c# - 作为管道的 RX IObservable

linux - 从Fedora Linux主机到Windows目标的交叉编译Rust找不到依赖项

windows - 基于服务器的应用程序安装程序创建新组是否可以接受?

arrays - 设置多维数组批处理

c# - 我如何才能知道我的桌面程序是否正在控制台上运行?

c++ - FindResource Api 为 DLL 中的文本文件提供错误 1813