如何使用汇编代码取得DLL的加载地址?

lengx7 2010-11-04 05:31:10
如何使用汇编代码取得DLL的加载地址?比如ntdll.dll
...全文
114 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
everlost 2010-11-05
  • 打赏
  • 举报
回复
楼主,如果你要的DLL还没有加载的话,用GetModuleHandle会失败,就只能用LoadLibrary。不管DLL有没有加载,LoadLibrary都不会失败。
大熊猫侯佩 2010-11-05
  • 打赏
  • 举报
回复
另一种办法是从进程的已加载dll列表中获取各个dll的base address
xfcyhuang 2010-11-05
  • 打赏
  • 举报
回复
x86 代码:
szntdll byte "ntdll.dll",0

push offset szntdll
call GetMoudleHandleA

x64代码:
szntdll byte "ntdll.dll",0

lea rcx, szntdll
call GetModuleHandleA
lengx7 2010-11-05
  • 打赏
  • 举报
回复
是用GetModuleHandle('ntdll.dll')获得的地址
everlost 2010-11-04
  • 打赏
  • 举报
回复
你是说loadlibrary吗

21,458

社区成员

发帖
与我相关
我的任务
社区描述
汇编语言(Assembly Language)是任何一种用于电子计算机、微处理器、微控制器或其他可编程器件的低级语言,亦称为符号语言。
社区管理员
  • 汇编语言
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧