问题标签 [easyhook]
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.
java - 当 java 进程被终止时捕获
当有人通过 taskmanager 或 taskkill 控制台命令杀死我的应用程序(java,但这并不重要)时,我如何捕捉到?
我知道我无法在我的应用程序中捕捉到这一点,但也许我可以通过一些与操作系统(当然是 Windows)的挂钩来做到这一点。也许 easyhook 库(http://www.codeplex.com/easyhook)可以帮助我,但我在那里找不到示例。我们的应用程序经常在客户服务器上死掉,我只想知道是谁(或什么)杀死了它。我们确定这不是应用程序问题,似乎 java.exe 进程被 taskmanager 杀死了
c# - 挂钩 extTextOut 问题
我正在使用 c# 中的 dll 注入软件,注入的 dll 也在 c# 中,并且我正在将 pinvoke 用于某些系统功能。
使用 extTextOut 时,我将字符串打乱,并且线条混合在一起我做错了什么?
我使用来自 codeplex.com 的 EasyHook 连接了 extTextOut,如下所示:
我的 extTextOut 方法是
如果可以的话,还有另一个问题。我怎样才能不断监视失焦或最小化的窗口(使用这种方法它不能正常工作)
非常感谢!
c# - C# 的 EasyHook 替代品
经过大量搜索在 C# 中创建外部应用程序的钩子的方法后,我偶然发现了 EasyHook,这将是理想的。不幸的是周围零社区,该软件自 2008 年以来就没有维护,似乎无法在 Visual Studio 10 下运行,并且在 Visual Studio 2008 下出现问题。
我知道愿意做这种低级工作的程序员通常精通 C/C++,但是如果可能的话,我想避免不得不学习如何在 Windows 下用 C++ 编写代码;)
我也找到了 Deviare,但它仍然是测试版,而且似乎是商业的。它可以是一个替代方案。
有人知道替代图书馆吗?
谢谢
c# - How to correctly hook and return GetDlgItemTextA from C++ to C# to C++ from EasyHook
I'm using EasyHook, a C# library for injecting and detouring functions from unmanaged applications. I'm trying to hook onto GetDlgItemTextA, which takes the arguments:
In my hook, I am casting it as:
And my hook is:
Unfortunately, the moment this is called, the hooked application crashes. Is there a better cast I can use to successfully hook onto this function? Thanks!
I've compiled, editted, and confirmed the working condition of my EasyHook setup. This is just casing and hooking only.
windows - 我可以挂钩链接库中的函数吗?
使用 EasyHook,我已经成功地为各种 C++ 类挂钩了导出函数和已知的 vtable 函数。在所有这些情况下,目标程序都使用了 DLL。
如果我知道函数入口点的地址,当一个库被链接到目标程序而不是一个单独的库时,是否可以这样做?
c# - 来自 c++/c# 的应用程序挂钩 (winsock)
我有一个调用 winsocket 函数的(旧)应用程序:
它目前将其作为ws32_dll.#52导入,而不是正常的名称调用。
我的意图只是能够在主机搜索发生时(应该在应用程序启动时)执行类似打开消息框的操作。
我尝试使用指向 #52 的编译指示创建一个 c++ dll,并将其放在应用程序目录上(包括“exe.local”和“exe.manifest”文件以尝试重定向它),但它加载了 c:\ windows\system32 代替。
之后,我创建了启动进程本身的 ac# 项目(因此从进程对象中获取 PID),向其中添加了 easyhook dll。
我检查了这个例子: http: //www.codeproject.com/KB/DLL/EasyHook64.aspx
将调用更改为:
}
(可能在这里写错了,但项目编译成功@home)。
问题是我不知道我需要做什么来挂钩这个方法<->应用程序本身。
我的意思是.. 剩下的只是用 c#easyhook 进行挂钩(假设应用程序是“foo.exe”)?我需要为easyhook创建一个自定义dll吗?(在这种情况下,我需要在里面定义什么内容?)
我发现它有点...“复杂”的 helloworld 钩子,呵呵。
提前致谢 ;)
c# - 如何将 Easyhook 与非托管可执行文件一起使用
我正在尝试在 c# 中进行一些挂钩(我宁愿不使用 Detours 或 c++),所以我一直在使用 EasyHook。
但是当我这样做时
我得到错误:
连接到目标时出错:System.BadImageFormatException:无法加载给定程序集 [SomePathToAnExecutable.exe] 以进行反射。
这是一个有效的 NET 程序集吗?---> System.BadImageFormatException:无法加载文件或程序集 [SomePathToAnExecutable.exe] 或其依赖项之一。该模块应包含程序集清单。
问题 1)我是否认为 SomePathToAnExecutable 是您想要挂钩的过程?
问题2)那么可执行文件是否必须是托管代码?
我也在 codeplex 项目网站上问过,但没有回应。
http://easyhook.codeplex.com/Thread/View.aspx?ThreadId=235616
c# - 钩闪应用
如果我在我的 C# 应用程序中加载一个打开与服务器 B 的套接字的 Flash 应用程序 A,是否可以设置一个本地挂钩,以便我可以读取 A 和服务器 B 之间交换的数据包?
- 如果需要,我可能会获得 Flash 应用程序源,但我不是编写它们的人
- 我是 C# 的新手(老实说,我仍然想知道为 Windows 编写这种应用程序的最佳语言是什么)和挂钩,所以任何例子都会非常感激:)
- 我在客户端工作
c# - 挂钩 recv 和不可读的缓冲区
我有一个显示 WebBrowser 组件的应用程序,其中包含一个使用服务器创建 XMLSocket 的 flash 应用程序。我现在正在尝试为日志目的挂钩 recv (幸运的是 LocalHook),但是当我尝试读取套接字内容时,我只会得到奇怪的字符,但如果我使用 SpyStudio 设置挂钩,我会得到可读的字符串。这是我使用的代码:
我用
/li>我设置了我需要的一切
}
我已经尝试过使用不同的编码但没有成功。附带说明一下,WebBrowser 似乎没有任何问题。
c# - System.DllNotFoundException 在 Visual Studio 2010 中使用 EasyHook
我有以下代码:
当我运行该项目时,我收到以下错误:
关于可能导致该错误的任何建议?我添加了对所有需要的 dll 的引用...