VC中如何调试DLL程序

2022-08-10 科技 73阅读
调试嘛,肯定在Debug模式中由于DLL程序不能生成窗口等等原因不好调试,所以我们无法了解DLL程序的流程是怎么样的。下面简单介绍一个如何来调试DLL程序。应该知道写DLL文件肯定是给某个应用程序使用的,如果没有程序用到它那它就没有存在的意义了。既然知道DLL是给某个应用程序使用之后,那么如果应用程序开始运行了,在加载DLL后,必然会进入到DLL程序内部去,如果这个时候DLL程序中设了断点,而断点又是DLL程序运行必经之处,那么运行到这个地方,应该会停下来的。那么调试是在应用程序中进行呢?还是DLL程序中进行呢?当然是DLL了 因为它就是我们调试的对象嘛。但必须要导入一个能够调用它的程序进来,通过应用程序的启动来达到调试的目的。那么如何在DLL中设置应用程序呢?很简单,打开VC 6.0 在vc里面打开要调试的DLL程序,点击菜单Project(中文版可能叫工程)->setting(设置) 可以看到一个对话框,左边Setting For要选Win32 Debug模式,Setting For下面是一个树形列表,显示的所有工程信息,选择一个你要调试的工程(不需要打开选择下面的.h,.cpp文件)右边点击Debug主要设置三个地方:Catagory:GeneralExecutable for debug session:这个目录很重要,这里就是选择应用程序了(这个应用程序必须要用到这个DLL文件) 比如说 你的DLL文件目录在E盘,而你的应用程序在C:\Test\Test.exe这里,那么这个目录就必须填写C:\Test\Test.exe。Wroking directory:就是填写工作的目录,这里填的应用程序的工作目录就是C:\Test ,就是包含应用程序的目录这样设置好了以后,就可以开始调试啦,你在DLL中设置断点,然后点击调试,可能会出现询问的一个窗口,不要选择那个勾,直接OK就可以了。然后应用程序出现后,你就可以模拟各种情况,来观察DLL中的行为了。OK!打完收工! 还要加一些内容:按F5调试的时候怎么输入命令行参数?int main (int argc, char *argv[]); 就是这个argv,怎么才能输入? Project菜单中的“Settings…”,Debug选项卡,Program Arguments里边添写命令行参数。
声明:你问我答网所有作品(图文、音视频)均由用户自行上传分享,仅供网友学习交流。若您的权利被侵害,请联系fangmu6661024@163.com