OD调试一看 没有D3D9.DLL 不知道如何找到 Direct3DCreate9 的地址了
如果可以找到 这个函数指针 在利用偏移(虚构函数)可以定位到你想要用的地址
这个游戏只是加载了 d3d9x_29.dll 不知道利用这个里面的函数 是否可以达到相应的功能
在游戏启动以后 我在OD 日志里 根本看不到他去调用d3d9.dll
3 个解决方案
#1
Loaded 'C:\Windows\System32\ntdll.dll', No symbols loaded.
Loaded 'C:\Windows\System32\kernel32.dll', No symbols loaded.
Loaded 'C:\Windows\System32\KernelBase.dll', No symbols loaded.
Loaded 'C:\Windows\System32\d3dx9_35.dll', No symbols loaded.
Loaded 'C:\Windows\System32\msvcrt.dll', No symbols loaded.
Loaded 'C:\Windows\System32\gdi32.dll', No symbols loaded.
Loaded 'C:\Windows\System32\user32.dll', No symbols loaded.
Loaded 'C:\Windows\System32\lpk.dll', No symbols loaded.
Loaded 'C:\Windows\System32\usp10.dll', No symbols loaded.
Loaded 'C:\Windows\System32\advapi32.dll', No symbols loaded.
Loaded 'C:\Windows\System32\sechost.dll', No symbols loaded.
Loaded 'C:\Windows\System32\rpcrt4.dll', No symbols loaded.
Loaded 'C:\Windows\System32\d3d9.dll', No symbols loaded.
请看上面的第4行和最后一行。 怎么会没有加载d3d9.dll呢。
除非你看的游戏工程里没有链接 d3d9.lib
Loaded 'C:\Windows\System32\kernel32.dll', No symbols loaded.
Loaded 'C:\Windows\System32\KernelBase.dll', No symbols loaded.
Loaded 'C:\Windows\System32\d3dx9_35.dll', No symbols loaded.
Loaded 'C:\Windows\System32\msvcrt.dll', No symbols loaded.
Loaded 'C:\Windows\System32\gdi32.dll', No symbols loaded.
Loaded 'C:\Windows\System32\user32.dll', No symbols loaded.
Loaded 'C:\Windows\System32\lpk.dll', No symbols loaded.
Loaded 'C:\Windows\System32\usp10.dll', No symbols loaded.
Loaded 'C:\Windows\System32\advapi32.dll', No symbols loaded.
Loaded 'C:\Windows\System32\sechost.dll', No symbols loaded.
Loaded 'C:\Windows\System32\rpcrt4.dll', No symbols loaded.
Loaded 'C:\Windows\System32\d3d9.dll', No symbols loaded.
请看上面的第4行和最后一行。 怎么会没有加载d3d9.dll呢。
除非你看的游戏工程里没有链接 d3d9.lib
#2
那这个游戏太牛了。。。。可以脱离实际框架产生那个框架的效果。。。
#3
LZ指的是目前火爆的FPS射击游戏CF(穿越火线)吧,没有d3d9.dll ,请问一个3D游戏怎么会没使用d3d9.dll。很明确的告诉你它使用了d3d9.dll,不过是用内核技术隐藏看而已。 你直接HOOK d3d9x_29.dll也行,至于是哪个函数自己摸摸吧。
#1
Loaded 'C:\Windows\System32\ntdll.dll', No symbols loaded.
Loaded 'C:\Windows\System32\kernel32.dll', No symbols loaded.
Loaded 'C:\Windows\System32\KernelBase.dll', No symbols loaded.
Loaded 'C:\Windows\System32\d3dx9_35.dll', No symbols loaded.
Loaded 'C:\Windows\System32\msvcrt.dll', No symbols loaded.
Loaded 'C:\Windows\System32\gdi32.dll', No symbols loaded.
Loaded 'C:\Windows\System32\user32.dll', No symbols loaded.
Loaded 'C:\Windows\System32\lpk.dll', No symbols loaded.
Loaded 'C:\Windows\System32\usp10.dll', No symbols loaded.
Loaded 'C:\Windows\System32\advapi32.dll', No symbols loaded.
Loaded 'C:\Windows\System32\sechost.dll', No symbols loaded.
Loaded 'C:\Windows\System32\rpcrt4.dll', No symbols loaded.
Loaded 'C:\Windows\System32\d3d9.dll', No symbols loaded.
请看上面的第4行和最后一行。 怎么会没有加载d3d9.dll呢。
除非你看的游戏工程里没有链接 d3d9.lib
Loaded 'C:\Windows\System32\kernel32.dll', No symbols loaded.
Loaded 'C:\Windows\System32\KernelBase.dll', No symbols loaded.
Loaded 'C:\Windows\System32\d3dx9_35.dll', No symbols loaded.
Loaded 'C:\Windows\System32\msvcrt.dll', No symbols loaded.
Loaded 'C:\Windows\System32\gdi32.dll', No symbols loaded.
Loaded 'C:\Windows\System32\user32.dll', No symbols loaded.
Loaded 'C:\Windows\System32\lpk.dll', No symbols loaded.
Loaded 'C:\Windows\System32\usp10.dll', No symbols loaded.
Loaded 'C:\Windows\System32\advapi32.dll', No symbols loaded.
Loaded 'C:\Windows\System32\sechost.dll', No symbols loaded.
Loaded 'C:\Windows\System32\rpcrt4.dll', No symbols loaded.
Loaded 'C:\Windows\System32\d3d9.dll', No symbols loaded.
请看上面的第4行和最后一行。 怎么会没有加载d3d9.dll呢。
除非你看的游戏工程里没有链接 d3d9.lib
#2
那这个游戏太牛了。。。。可以脱离实际框架产生那个框架的效果。。。
#3
LZ指的是目前火爆的FPS射击游戏CF(穿越火线)吧,没有d3d9.dll ,请问一个3D游戏怎么会没使用d3d9.dll。很明确的告诉你它使用了d3d9.dll,不过是用内核技术隐藏看而已。 你直接HOOK d3d9x_29.dll也行,至于是哪个函数自己摸摸吧。