Directx win10 d3d9.dll挂钩没有模式';C7 06??89 86';

Directx win10 d3d9.dll挂钩没有模式';C7 06??89 86';,directx,hook,Directx,Hook,嗨,我想挂DirectX9。(挂钩dll) 游戏的创造者是我,游戏没有任何保护 我发现模式“C7 06???89 86???89 86”,它称为虚拟表(vtable)地址 但是在我的d3d9.dll中没有模式。。 (findpattern()函数不起作用,作弊引擎找不到模式) 所以我在其他网站下载了一个新的d3d9.dll,最后我可以找到vtable的模式 但不幸的是,我使用的是Windows 10,它不能取代d3d9.dll (可能win10是基于direct x的所有应用程序,它总是说“d3

嗨,我想挂DirectX9。(挂钩dll) 游戏的创造者是我,游戏没有任何保护

我发现模式“C7 06???89 86???89 86”,它称为虚拟表(vtable)地址

但是在我的d3d9.dll中没有模式。。 (findpattern()函数不起作用,作弊引擎找不到模式) 所以我在其他网站下载了一个新的d3d9.dll,最后我可以找到vtable的模式

但不幸的是,我使用的是Windows 10,它不能取代d3d9.dll (可能win10是基于direct x的所有应用程序,它总是说“d3d9.dll” 由应用程序“xxxx.exe”使用

我该怎么办?为什么win10 d3d9.dll没有字节模式
“C7 06???89 86???89 86”?

DirectX是操作系统的一部分,没有理由相信一个版本的操作系统的特定
d3d9.dll
将与任何其他版本完全相同。如果你是游戏的创建者,那么你的源代码发生了什么?d3d9.dll的唯一“契约”将是从操作系统到操作系统的公共导出(像Direct3DCreate9这样的函数)和Direct3D 9接口本身。二进制文件中的任何内容都不必相同,而在现代版本的操作系统中,大部分都是“放样”到较新的DIrect3D版本。替换
d3d9.dll
system dll对于“钩住”除本地系统之外的任何二进制文件来说都不是一种可行的方法,因此很容易使操作系统不稳定。@ChuckWalbourn感谢您的评论,但首先我搜索了关于d3d9钩子的内容。但是关于d3dx vtable有一个广泛使用的二进制模式“C7 06???…~”。每个人都使用这个模式来查找dx9的vtable,但我的d3d二进制模式不是那个模式。。。p、 s:我有源代码,但我正在研究反向工程。我调试了ChuckWalbourn,最后发现了我的d3d9.dll(c:/windows/system32/d3d9.dll)的新二进制模式,它可以找到vtable地址。它是“C700???89 B0???83 4D”,但我不知道为什么我的d3d9.dll与其他的不同?(win 10的d3d9.dll和win 7'd3d9.dll是否不同?)正如我所说,没有理由相信
d3d9.dll在Windows 7 RTM、Windows 7 Service Pack 1、Windows 8.0、Windows 8.1、Windows 8.1更新、Windows 10(10240)、Windows 10(10586)、Windows 10(14393)、Windows 10(15093)或任何未来版本的Windows之间是相同的。你所采取的方法是脆弱的<另一方面,如果安装了代码>D3DX9_43.DLL,则它在所有这些平台上都是相同的,因为它不是操作系统的一部分。看见