码迷,mamicode.com
首页 > 编程语言 > 详细

在VS2015中用C++创建DLL并用C++调用且同一时候实现对DLL的调试

时间:2018-01-13 17:00:45      阅读:342      评论:0      收藏:0      [点我收藏+]

标签:font   设置断点   c++编写   pos   提示   新项目   body   mod   src   

一:用C++创建DLL? ??

? ? ? ?依照【在VS2015中用C++编写可被其他语言调用的动态库DLL】提示创建C++编写的DLL。或參考【 在VS2015中用C++创建DLL并用C#调用且同一时候实现对DLL的调试】中的步骤二:用C++创建DLL。

二:用C++隐式调用DLL? ??

? ? ? ? 由于是隐式调用DLL所以在Debug模式下生成DLL了。然后调用时也在Debug模式下。这样在调试时就不用赋值动态库了

? ? ? ? 隐式调用仅在C++CallDLL.h文件里设置了lib文件的相对位置,并没有牵扯到DLL文件,若在Release模式下生成DLL,在Debug模式下调用,则Debug目录下会因缺少DLL而出错,此时能够将Release目录中的DLL复制到Debug目录中,在调试就没有问题了。

(1)在解决方式上右击进行例如以下选择

技术分享图片

(2)在加入新项目对话框中进行例如以下选择填写

技术分享图片

(3)在【头文件】上右击进行例如以下选择

技术分享图片

(4)在加入新项对话框进行例如以下选择填写

技术分享图片

(5)在C++CallDLL.h文件里加入下图所看到的測试代码,代码中的相对路径指的是:编译后的exe程序相对于DLL的路径

技术分享图片

(6)在C++CallDLL.cpp文件里加入下图所看到的測试代码

技术分享图片

(7)将解决方式切换到Debug模式下。而且在C++CallDLL项目上右击设置为启动项目

技术分享图片

(8)执行C++CallDLL项目结果例如以下:

技术分享图片

(9)在C++项目的源代码中设置断点,在Debug模式下执行,程序会自己主动跳到断点处,例如以下图,从中能够看到C++项目中的值已经传到DLL中了

技术分享图片

(10)源代码下载地址:在VS2015中用C++创建DLL并用C++调用且同一时候实现对DLL的调试源代码

在VS2015中用C++创建DLL并用C++调用且同一时候实现对DLL的调试

标签:font   设置断点   c++编写   pos   提示   新项目   body   mod   src   

原文地址:https://www.cnblogs.com/zhchoutai/p/8279118.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!