windows调试——DLL

调试dll的方法:

方法一:如果有调用dll工程的代码:从调用dll的那个工程开始调试:

打开Debug-->windows-->modules,查看是如何调用的,然后看一下调用的dll的目录是否为你现在的工程目录!!

dll调用是有一个顺序的,如果先调用的是c:/window/  里面的 ,可以把c:/window/ 路径下的dll删除。此时在dll代码内设置断点然后调试。

附录:dll的调用顺序

关于用LoadLibrary  搜索dll路径的问题

在默认情况下,Windows 加载程序在用户磁盘上搜索 DLL 的搜索顺序:

  1. 包含可执行文件的目录。
  2. Windows 的系统目录,该目录可以通过 GetSystemDirectory 得到,一般为 System32 目录,若为 32 位程序跑在 64 位系统下,则为 SysWOW64 目录。
  3. 16 位的系统目录,即 Windows 目录中的 System 目录。
  4. Windows 目录,该目录可以通过 GetWindowsDirectory 得到。
  5. 进程的当前目录。
  6. PATH 环境变量中所列出的目录。

如果调用 LoadLibrary 时传入的是绝对路径,那么加载程序将只尝试从该绝对路径搜索 DLL。

 

方法二:如果没有调用dll工程的源代码,那么如下设置之后,运行dll的工程

https://blog.youkuaiyun.com/qianghaohao/article/details/50190905

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值