如何停止对DirectX的拦截调用

时间:2012-11-28 10:48:35

标签: directx dll-injection

我已经阅读了一篇名为 Intercept Calls to DirectX with a Proxy DLL 的文章,它使用了DLL代理拦截调用,并且可以为DirectX进行覆盖。

我正在编写一些DirectX应用程序,不希望其他人通过此方法更改它。我该如何防止这种情况?

我可以通过检查原始DLL以及如何执行此操作来完成此操作吗?

2 个答案:

答案 0 :(得分:1)

检测是否是代理的“最简单”方法是确定加载的d3d9.dll的路径,计算哈希值并将其与存储的哈希值进行比较。但这只适用于他们让你的应用程序加载d3d9代理dll而不是挂钩/注入的情况。

答案 1 :(得分:0)

在您的应用程序工作目录中检测d3d9.dll(所有DX dll)文件,如果有,那么有人试图代理。它很容易实现。无论如何你不能做出100%保护的东西,所以任何比这更复杂的东西都不值得花时间投入:) 我设法通过3D Ripper DX从所有游戏中获取数据,并且他们有数百万的预算:)