对于自己制作的.DLL文件,一直没有比较好的调试方法,其实是知道的太少。

下面就说说VC6.0下面 怎么调试DLL文件:

首先得有一个调用DLL文件的可执行程序,然后调用这个可执行程序。

在工程上 右键  settings  在弹出的对话框中,选择debug标签,然后设置executable for debug session:  在这里面填写可执行程序的路径

eg:C:\Program Files\Java\jdk1.6.0_15\bin\java.exe

Working directory  工作目录,即.exe的工作目录  (类似于 环境变量中的path吧)

eg:C:\Documents and Settings\Administrator\桌面\lua\NEUSOFT\Debug 

program arguments 程序入参 eg:helpMain    (helpMain  是一个Java写的类  java helpMain就可以 执行)

 

OK,现在按F5   就可以调试了,在DLL程序中  设置断点,就可以进入中断了。

下面说一下这个原理吧!

原理就是只要是程序运行,就会产生一个进程,将VC6.0挂在这个进程上面(通过上面的设置,然后 debug来启动设置的.exe  这时候 VC6.0 就会挂在 .exe的进程中);

然后 VC6.0 设置断点,实际上是对内存中地址的标记,这时候 只要运行到这个地址,就会中断。