利用VS2010工具,调试DLL文件的方法现总结如下:

在一个解决方案中生成两个工程,假设MYDLL和MYDLG两个工程,前者是DLL工程,后者DLG调用前边的DLL工程。设置如下:

目录如下:图,本文例子中,DLL文件和EXE文件都生成在下边的这个DEBUG文件中:D:\My Documents\Visual Studio 2010\Projects\MYDLL\Debug,当然,也可以生成在其他文件目录下,只要设置正确即可。

 
    目的:遵循DLL和exe最后生成的文件在一个目录内,且两个工程之间有种关联,使EXE工程能够调用DLL工程。
首先编译DLL工程。
接着,进行下边的设置。

一、MYDLG工程设置

1.MYDLG工程采用调用静态MFC

2.输出目录要和将要生成的DLL文件在一个目录下,如设为D:\My Documents\Visual Studio 2010\Projects\MYDLL\Debug

3.采用静态调用DLL的方式调用我自己生成的lib文件 (很关键),如果采用动态调用,就需要用loadlibrary函数,并为每个导出的函数重新命名。

 
添加库目录或者添加到附加库目录中,两者原则上都可以,首选修改附加库目录
添加到库目录如下图,目录为D:\My Documents\Visual Studio 2010\Projects\MYDLL\Debug
 
 
添加到附加库目录中,如下图

这样,DLG工程就和DLL工程之间建立了关联。

接下来,再来设置DLL工程。。。。。。

二、MYDLL工程里面设置:

1、MYDLL工程采用静态链接库,

2、输出目录采用默认目录如D:\My Documents\Visual Studio 2010\Projects\MYDLL\Debug

3、设置本地Wiindows调试器中命令参数为DLG工程上边生成的exe文件路径,如D:\My Documents\Visual Studio 2010\Projects\MYDLL\Debug(关键)。

(题外话:如果已经有一个写好的EXE,可以把已经存在的exe随便放在一个路径下,然后在此处的命令参数中设置好exe的路径,之后就可以启动dll,单步调试dll了)

这样DLL就和DLG工程间建立了关联。

之后,就可以再DLG工程中调用DLL工程中的接口函数了。

最新文章

  1. leetcode 172
  2. Scrapy爬取美女图片 (原创)
  3. Lua metatable & metamethod
  4. HDU 4064 Carcassonne(插头DP)(The 36th ACM/ICPC Asia Regional Fuzhou Site —— Online Contest)
  5. iOS sqlite3数据库解析
  6. Cloudera Impala 之 ORDER BY without LIMIT currently not supported
  7. docker安装lnmp 环境
  8. [置顶] Android资源文件分析
  9. MC-设置 止盈
  10. C#开发命名规范总结整理
  11. Lesson 29 Taxi!
  12. 一行代码搞定 R 语言模型输出!(使用 stargazer 包)
  13. zabbix安装(Ubuntu)
  14. python简说(九)函数
  15. bitnami下mysql配置-包含phpMyAdmin配置
  16. Excel中countif函数的使用方法
  17. Unix 网络编程 读书笔记3
  18. Django官网案例教程
  19. jqury动画,循环
  20. Spring_使用 JdbcTemplate和JdbcDaoSupport-代码

热门文章

  1. Kafka:ZK+Kafka+Spark Streaming集群环境搭建(七)针对hadoop2.9.0启动DataManager失败问题
  2. Jquery中的高度
  3. 从头来之【MAC下代码管理工具】
  4. 被查封7周之后,全球最大BT网站“海盗湾”又重新活过来了【36kr】
  5. springboot微信sdk方式进行微信支付
  6. 使用jstl报http://java.sun.com/jsp/jstl/core cannot be resolved in either web.xml or the jar错误
  7. jQuery开发技巧
  8. VMware用于Site Recovery Manager 5的vSphere Replication功能一览
  9. h5可伸缩布局方案
  10. 西数移动固态SSD