草庐IT

mouse-hook

全部标签

c++ - Windows 中的 WH_JOURNALRECORD Hook (C++) - 从未调用过回调。

在过去的几个小时里,以下代码一直给我带来一些麻烦。我正在尝试编写一个小程序(基于网络上的一些教程),它使用WH_JOURNALRECORD窗口Hook来记录击键。主要代码:#include"StdAfx.h"#include#include#includeusingstd::cout;usingstd::endl;int_tmain(intargc,_TCHAR*argv[]){HINSTANCEhinst=LoadLibrary(_T("testdll3.dll"));typedefvoid(*Install)();typedefvoid(*Uninstall)();Installi

windows - 注册一个全局钩子(Hook)来检测鼠标是否拖动文件/文本

我知道有可能registerglobalhooksformouse移动、按钮点击、滚动等,但我想知道是否有任何方法可以检测用户是否真的在使用全局Hook拖动文件或文本(或其他一些内容)。似乎找不到任何东西。 最佳答案 它不由Windows消息处理,即使需要消息循环才能使其工作。经典COM要求。从RegisterDragDrop()开始阅读以查看管道。值得注意的是,UAC的UIPI方面会妨碍您,您不能从非提升的进程D+D到提升的进程。ChangeWindowsMessageFilter()是通常的解决方法,它不适用于D+D。没有已知的

c++ - 我可以使用全局系统 Hook 来捕获单击的文件吗?

我是Windows编程的新手,主要完成Java(JavaSE、JavaME、Android、JavaEE),所以要详细而温和。我想捕获“在窗口中单击的文件/路径的名称,就像单击桌面上的文件一样”?进一步研究http://www.codeproject.com/Articles/6362/Global-System-Hooks-in-NET,这是一个使用全局系统Hook的小型c#/c++不错的应用程序,用于捕获坐标、点击等鼠标事件。那么捕获文件图标事件的正确API或全局系统Hook是什么? 最佳答案 没有单一的API可以提供该级别的详

windows - 是否有可以与 GUI 交互的自动 'mouse clicking' 库?

关闭。这个问题不符合StackOverflowguidelines.它目前不接受答案。要求我们推荐或查找工具、库或最喜欢的场外资源的问题对于StackOverflow来说是偏离主题的,因为它们往往会吸引自以为是的答案和垃圾邮件。相反,describetheproblem以及迄今为止为解决该问题所做的工作。关闭8年前。Improvethisquestion由于对被解雇的偏执狂,我通过提供类似的项目来掩饰我的真实项目。我有一个任务如下:我打开一个GUI程序。这个GUI有3个数字字段(年龄、高度、体重)和3个按钮(“确定”、“打印”和“全部清除”)。该程序的作用如下。用户在3个单独的字段中输

c++ - Windows API 钩子(Hook) C++

我正在学习为WindowsAPI编写Hook,为了练习,我正在为pDeleteFileA函数编写Hook。当调用该函数时,在删除文件之前我想检查文件名是否为“testfile.txt”,如果是,则不会删除它,而是会弹出一条消息,如果它调用了其他内容,则继续删除文件。我已经编写了一些代码并且代码编译没有任何错误,但是当我尝试删除“testfile.txt”时,它只是被删除了。也许有人可以给我提示我做错了什么或没有做什么?到目前为止,这是我的代码:#includestructhook_t{//adatatypetostoreinformationaboutourhookboolisHook

c++ - 安装了全局 Hook 后,我如何知道窗口何时开始移动以及何时停止移动?

有没有简单的方法来解决这个问题?我想我可以使用WM_MOVE通过保持计时器来告诉我它何时开始。如果窗口在最后2秒内没有收到WM_MOVE消息,那么我就知道它刚刚开始移动。然后我又设置了一个定时器,等待他们在一段时间内(2秒)没有消息。如果什么都没有收到,那么我可以确信窗口移动已经完成。这是解决这个问题的正确方法吗? 最佳答案 如果您可以看到WM_MOVE消息,那么您也可以看到WM_ENTERSIZEMOVE和WM_EXITSIZEMOVE消息。 关于c++-安装了全局Hook后,我如何知

c# - 系统范围的 Windows CBT Hook 无法正常工作

我正在尝试在Windows操作系统上挂接CBTHook。我目前使用的是Windows7x64。我看过很多帖子讨论这个问题,但没有一个能解决我的问题。应用程序运行良好;Hook已安装,我可以看到一些通知。实际上出现的问题是应用程序没有收到关于同一台机器上运行的其他进程的CBT钩子(Hook)的通知。该应用程序是用C#编写的(使用Microsoft.NET)。这是一个正在运行的示例:usingSystem;usingSystem.Collections.Generic;usingSystem.ComponentModel;usingSystem.Diagnostics;usingSyste

c++ - 低级鼠标钩子(Hook) - 鼠标在断点处卡住

我想自己绘制和移动我的窗口(使用chromium嵌入式框架)。为此,我需要在鼠标移出窗口时进行全局回调-所以我安装了一个低级鼠标钩子(Hook):hMouseLLHook=SetWindowsHookEx(WH_MOUSE_LL,(HOOKPROC)mouseHookProc,hInstance,NULL);钩子(Hook)简单地抓取鼠标事件并调用“CallNextHookEx”。这里没有问题,一切都按预期进行。我现在的问题是:如果调试器中断或抛出异常,我就不能再移动鼠标了。我尝试在另一个线程中处理钩子(Hook),如下所示:HANDLEmouseProcHandle=CreateTh

c - c中的全局键盘 Hook

我想写一个全局键盘钩子(Hook)来禁止任务切换。当我用谷歌搜索时,我在c#、cpp(和delphi)中找到了很多代码,但我需要一些关于钩子(Hook)的基本概念(最好是例子在C中)。因此,请建议可以帮助我从C的角度理解事物的资源和链接。PS:我找到了一个不错的workingexample(适用于winXP和旧版本),但是当我尝试编译代码时,它给了我:我尝试在所有header中搜索“IDC_”常量(MinGWgcc安装附带的默认header和开发人员提供的header),但没有运气......如果有人可以编译代码并使其运行请帮助我。我没有在这里上传源代码本身,因为有一些头文件依赖项,在

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

我想创建一个键盘和鼠标Hook,它将作为Windows服务启动。我想监控全天使用该系统的各种用户的事件。即哪些用户在什么时间活跃。是否可以确定哪个用户将接收事件?(该服务将作为单独的用户运行,因此getCurrentUser不合适) 最佳答案 不,Environment.UserName不起作用-Hook过程不会在输入接收器的上下文中调用。事实上,我认为这是不可能的-如果使用.NET,您无疑会使用_LLHook,它是低级Hook。在我看来,它们在Windows甚至确定哪个桌面/应用程序将接收事件之前就已执行。不过,我可能错了——我自