DLL(动态链接库)的基本使用及def文件无效问题

  1. 首先创建一个DLL项目
    在这里插入图片描述

  2. 在.cpp文件中随便写一个函数

void fun1()
{
	printf("我是fun1");
}
  1. 在.h文件中写入声明
void fun1();
  1. 在工程目录下添加def模块
    【这里一定要注意是选择模块,添加def文件】
    在这里插入图片描述
    在这里插入图片描述
  2. 在def模块文件中写入以下内容
LIBRARY
EXPORTS
fun1 @ 1
  1. 在解决方案下新建一个控制台项目
    在这里插入图片描述
  2. 在新建的控制台项目中写入以下内容
int main()
{
	fun1();
	system("pause");
}
  1. 先生成DLL项目,再生成控制台项目,最后再运行控制台生成的.exe程序
    在这里插入图片描述

遇到的问题:
生成控制台项目时提示“无法解析的外部符号”
这里的话主要就是模块定义文件的问题

  • 右键点击DLL项目,选择“属性”,找到配置属性->链接器->输入->模块定义文件
    在这里插入图片描述
  • 在创建模块资源时其实已经自动指定了该.def文件,如果这里为空白,添加.def文件名后任然提示“无法解析的外部符号”,则返回上面的第4步,重新添加模块为.def,尽量避免添加别的资源采用更改后缀的方式。
  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值