DLL的调试

原创 2003年02月25日 17:43:00

假设:
    要调试hook.dll hook.h hook.lib

1。建立一个新工程Test,将hook整个工程目录拷贝到Test目录下

2。在Test工程中需要用到hook.dll的源文件中(或stdafx.h中)加入
     #include "./hook/hook.h"
   这样在该源文件中使用"::"就可以索引到hook.h中所有的导出函数、
   变量以及类
  
3。在Test的工程设置->Link->Object/library modules中加入
     ./hook/debug/hook.lib

4。编译连接好Test之后,发现未找到hook.dll. 这需要设置path.
   可以在工程设置->Debug->Working directory中加入
     e:/Test/hook/debug/
   也可以在autoexe.bat中设置路径

5。通过工程->Insert Project into Workspace将hook.dsp工程加入 
   Test项目中。

6。设置hook工程为活动工程,在工程>Debug>Executable for 
   Debug session中加入: 
     e:/test/debug/test.exe

7。现在设置断点,按F5可以正常调试了

注意:当调试的DLL被映射到其他的应用程序(非TEST)进程空间并运行时,在该DLL中设置的断点无效,当然可以通过MessageBox来查看变量,若该DLL是MFC扩展DLL,则还可以用TRACE或afxDump来查看变量。

关于文件读写的监控, 通过APIHOOK来实现

有的时候,我们需要对程序读写文件的时候进行监控,尤其是文件的数据是保密的,而且不能直接存储在磁盘上。举个最简单的例子来说,当我们有个文件在磁盘上,而这个文件是加密的,这时候在程序打开文件的时候,通过输...
  • hujkay
  • hujkay
  • 2010年12月18日 02:37
  • 3150

VC 6.0调试 之 DLL调试

你写的DLL或者ActiveX需要调试,因为他们不能直接运行 ,所以不能够直接调试,那么可以试试下面的方法:1. 在Vc 6.0中新建一个Win32 Console Application工程(例如D...
  • FreeWave
  • FreeWave
  • 2007年12月29日 13:12
  • 4463

VS2010调试DLL

使用VS2010编写了一个DLL,而调用DLL的EXE程序早就已经存在了,所以就不用编写测试程序了。 调试DLL时,在VS2010只直接选择使用EXE来启动DLL工程即可。 发现个问题: EXE...
  • friendan
  • friendan
  • 2015年09月02日 00:21
  • 2535

vc 6.0调试dll的方法

基本上vc6.0调试dll有两种方法,我认为的两种方法:第一种方法:1.设置project->settings->Link标签,修改"Output file name"到一个exe文件的目录2.设置p...
  • simeone18
  • simeone18
  • 2011年06月30日 15:01
  • 1307

vs2012,如何调试dll工程

假设有两个项目,TestExe和TestDll,由项目名字就知道用途了。如果要调试TestDll源码的话,需要做如下设置: 1.在VS2012开发环境中右击TestDll项目,选择【属性】->【De...
  • u011854789
  • u011854789
  • 2016年10月19日 17:21
  • 2356

在Visual Studio 2010中调试DLL工程的方法 (C++)

是自己调试时候用的,还是很好用的,留下来记住。如下是步骤: 1、在“Solution Explorer”中找到要调试的dll项目,点击右键,选择Set as StartUp Project,将d...
  • paddybear
  • paddybear
  • 2014年10月14日 14:55
  • 2023

.Net,Dll扫盲篇,如何在VS中调试已经编译好的dll?

什么是Dll? DLL 是一个包含可由多个程序同时使用的代码和数据的库。 例如,在 Windows 操作系统中,Comdlg32 DLL 执行与对话框有关的常见函数。因此,每个程序都可以使用该Dl...
  • yang00322
  • yang00322
  • 2017年08月20日 14:29
  • 518

在Unity中调试dll

在Unity中调试dll 项目中用到一个dll,想进入这个dll调试其中的代码,如何做呢? 1.使用ilspy反编译该dll 2.反编译成功后,选择菜单file->save code保存c#代码(...
  • sunny__chen
  • sunny__chen
  • 2017年02月16日 16:23
  • 946

Windows下DLL文件调试

在Windows操作系统下主流的C语言开发工具是Visual Studio,这个工具与Windows操作系统集成的比较好,功能也比较强大。但是程序过于笨重,不适合个人日常开发使用。在VS中调试很方便,...
  • hijack00
  • hijack00
  • 2016年08月14日 20:57
  • 1267

VS2010 C++中调试DLL工程

1、在“Solution Explorer”(解决方案)中找到要调试的dll项目,点击右键,选择Set as StartUp Project(设为启动项目);然后选择dll项目,点击右键,选择Prop...
  • akzwakzw
  • akzwakzw
  • 2014年01月21日 22:25
  • 2411
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:DLL的调试
举报原因:
原因补充:

(最多只允许输入30个字)