Mhook 替代品
4我们整理了一个包含4个免费和付费的Mhook替代方案的列表。主要竞争对手包括:Microsoft Research Detours, WinAPIOverride。除了这些之外,用户还会将Mhook与HookInjEx, Deviare In-Process进行比较。此外,您还可以在这里查看其他类似的选项:开发软件, 组件库软件。
我们整理了一个包含4个免费和付费的Mhook替代方案的列表。主要竞争对手包括:Microsoft Research Detours, WinAPIOverride。除了这些之外,用户还会将Mhook与HookInjEx, Deviare In-Process进行比较。此外,您还可以在这里查看其他类似的选项:开发软件, 组件库软件。
我们整理了一个包含4个免费和付费的Mhook替代方案的列表。主要竞争对手包括:Microsoft Research Detours, WinAPIOverride。除了这些之外,用户还会将Mhook与HookInjEx, Deviare In-Process进行比较。此外,您还可以在这里查看其他类似的选项:开发软件, 组件库软件。
Mhook是用于安装API挂钩的库。
Mhook是用于安装API挂钩的库。
如果您涉足这一领域,那么您已经知道Microsoft Research的Detours在API挂钩方面几乎树立了基准。 那么,为什么我们不迅速进行比较呢?
与DEOTOURS VS. HO
带有非商业许可证的Detours是免费提供的,但仅支持x86平台。 Detours也可以被许可用于商业用途,这也为您提供了全面的x64支持,但是您只有在签署NDA后才能看到许可条件。
Mhook是根据MIT许可证免费发行的,并支持x86和x64。
Detours避开了正式支持将钩子附加到正在运行的应用程序的想法。 当然,您可以自由执行此操作-但是如果最终在此处或此处导致随机崩溃,则只能怪自己。
Mhook旨在能够在正在运行的应用程序中设置和删除钩子-毕竟,这就是您在现实世界中所需的钩子。 尽力避免覆盖可能被另一个线程执行的代码。
Detours支持事务挂钩和脱钩; 也就是说,采用全有或全无的方法同时设置一堆钩子。 仅当可以全部设置挂钩时,才会设置挂钩,否则库将回滚所做的所有更改。 Mhook不会这样做。
最后,Mhook在管理其使用的蹦床的内存时非常懒惰。 Detours根据需要分配内存块,并使用结果数据区域在内部存储尽可能多的蹦床。 另一方面,Mhook对每个已设置的挂钩使用一次对VirtualAlloc的调用。 每个钩子都需要少于100个字节的存储空间,因此这非常浪费,因为VirtualAlloc每次Mhook调用它时都会从进程的虚拟地址空间中获取64K。 (实际分配的内存将是一个页面,这也非常浪费。)但是,最后,这实际上并不重要,除非您在应用程序中设置了大量的挂钩。 另外,这很容易解决。
分享您对软件的看法,留下评论,帮助使其变得更好!
建議更改
你的反馈
Your vote has been counted.
Do you have experience using this software?