原理是将dll工程属性修改为控制台属性,于是main函数就可以启动了。

有如下动态库代码【顺便写一个main函数调用】:

此时有两种方法可以修改工程属性

方法一:直接修改工程对应的vcxproj文件

1.将<SubSystem>Windows</SubSystem>

替换成<SubSystem>Console</SubSystem>

2.将<ConfigurationType>DynamicLibrary</ConfigurationType>

替换成<ConfigurationType>Application</ConfigurationType>

如图:

方法二:vs页面进行修改

配置类型改为应用程序exe

子系统改为控制台

属性修改完以后,就可以从main函数运行了。

如果不想修改成控制台程序,可以写winmain的入口:

int APIENTRY _tWinMain(HINSTANCE hInstance,
HINSTANCE hPrevInstance,
LPTSTR    lpCmdLine,
int       nCmdShow)
{
int x = fun(10);
return 0;

}

注意问题:

mfc动态库使用clr支持时,这个方法没法用

win32动态库clr支持时,调用也存在一些问题

VS调试c++动态库最简单最高效的方法相关推荐

  1. python123九宫格输入_使用python PIL库实现简单验证码的去噪方法步骤

    字符型图片验证码识别完整过程及Python实现的博主,我的大部分知识点都是从他那里学来的. 想要识别验证码,收集足够多的样本后,首先要做的就是对验证码原始图片进行处理,对验证码识别分类之前,一般包括: ...

  2. 使用VS2019开发调试Android动态库

    1. 环境准备 1.1 安装JDK:jdk1.8.0_112 1.2 安装Android SDK SDK可以安装指定的platforms和ndk-bundle.为了兼容性考虑,单独安装了版本比较老的a ...

  3. Ubuntu下CodeBlocks的安装、配置及静态库动态库的简单使用举例

    1.  从Ubuntu Software Center中搜索Code::Blocks并安装: 2.  在第一次启动时选择GNU GCC Compiler作为默认的编译器: 3.  生成静态库并调用操作 ...

  4. Ubuntu下makefile及gcc生成静态库动态库的简单使用举例

    环境:Ubuntu-13.10  32位(虚拟机).gcc4.8.1 首先创建一个test_makefile_gcc文件夹,此test_makefile_gcc文件夹下包括:src文件夹用于存放源文件 ...

  5. android ffmpeg编译动态库,最简单的android studio调用ffmpeg动态库

    准备工作: 1.编译好的ffmpeg动态库.so文件,以及ffmpeg的头文件: 2.android studio开发环境,包括NDK等可用环境: 步骤一: 新建一个android studio工程, ...

  6. 让Visual Studio (VS)链接静态库(lib)及动态库(dll)文件的方法汇总

    本文为原创+转载,旨在总结一下VS链接动态链接库(dll)和静态链接库(lib)的方法. 在调试 Visual Studio 程序时,经常有一些动态链接库(即 dll 文件)需要加载到工程里,这样才能 ...

  7. 怎么把视频做成高清的GIF动态图?简单又快的方法

    平时看到各种影视剧或者视频的时候,总会想把把视频最精华的片段或者自己喜欢的部分做成GIF动图- 我一般会用超级转换秀来把视频转成GIF,可以导出高清的GIF动图 而且我刚开始用的时候,也会觉得操作起来 ...

  8. [DLL] DLL动态库没有生成LIB的解决方法

    在导出函数在声明和定义时,都一定要有关键字 _declspec(dllexport)  ,这样才会同时生成 .dll 和 .lib 文件. demo: 接口头文件: #pragma onceexter ...

  9. Qt5对Excel表格简单、高效处理方法

    由于经常用Qt对Excel中的一些数据进行处理,最终综合出一套简单好用的读.写数据方案. 主要代码如下(完整测试项目地址见本文最下方): bool ExcelManger::Test(QString ...

  10. 百度网盘下载提速-最简单的高效的方法

    一.打开百度网盘的安装路径,删除下图中的四个文件 二.重新打开百度网盘(130k提升到3M,当然能提升多少与你的带宽有关系)

最新文章

  1. LeetCode简单题之删除某些元素后的数组均值
  2. hadoop如何学习?
  3. 091101 T IModel
  4. 抢票 | AI未来说学术论坛第八期 深度学习特别专场
  5. 类如何调用自己的私有成员_如何正确地给自己和团队成员贴标签?|衡量团队管理 20 讲视觉笔记 14...
  6. ……OleContainer中嵌入WORD后,用什么办法显示滚动条???……
  7. animate中使用HTML5,animate.css怎么使用?
  8. oracle 读懂10046视频,10046、10053、实操记录
  9. php无刷新跳转,用#号实现web页面的无刷新跳转
  10. Linux磁盘空间监控告警
  11. JSP:Cookie实现永久登录(书本案例)
  12. c++实现飞机大战小游戏
  13. VNN结合金蝶Kis9.1专业版Sp1的应用及解决方案
  14. FileZilla Client中文乱码
  15. oracle ebs bug,ORACLE EBS 价目表的导入效能-存储过程BUG
  16. 使用Servlet和JSP开发Java应用程序 ----错误处理
  17. 阿里云Quick BI理论学习
  18. wps交叉表_WPS交叉引用的使用方法
  19. 关于计算机语言最高奖项 图灵奖 的12位得主!你认识几个?
  20. python数据分析及可视化

热门文章

  1. 前端js如何生成一个对象,并转化为json字符串
  2. linux 下svn安装
  3. Sharepoint 浅谈 [转]
  4. 2009年上半年软考所有试题和答案公布 专家解析中
  5. FTP服务器架设速成手册
  6. python 条件查询_Python SQLAlchemy 不确定条件查询
  7. C# 尝试还原程序包时出错:找不到“XXXXX”版本的程序包“XXXXXX”
  8. java检查页面ajax请求,Java AJAX电子邮件检验示例
  9. merge r语言daframe_R语言:数据框
  10. ThinkPhp报错:thinkphp\library\think\Template.php Line(1243) template not exists:...test\...\index.html