1. 创建一个win32项目,如下图所示 2.确定后选择下一步,应用程序类型下勾选DLL(D)选项,附加选项去掉预编译头选项(如果忘记也可以在项目 属性下去掉),如下图所示: 3.确定后默认创建如下项目: 右键项目---》生成 可以正常生成 4.删除所有默认生成的文件,如下: 右键项目---》生成,这时候是可以正常生成的。 如果提示缺少预编译头之类的错误,就是创建文件的时候加上的预编译头了,看第二步。 右键项目-->属性,如下设置即可解决该问题 5.添加自己的C源文件及头文件,注意,导出的函数可通过def文件导出,也可通过 在导出函数前添加_declspec(dllexport) 声明,如下: #define API_DECL _declspec(dllexport) extern API_DECL void add(int a, int b); 注意:在导出函数所以对应的源文件,需包含自身头文件,否则编译时只生成Dll,不会生成lib文件(头文件函数的声明需添加 _declspec(dllexport)) 编译成功后,我们需要生成的Dll及对应的lib、头文件这个三个。 6.创建Demo对生成的Dll的调用 对所创建的Demo工程属性设置如下: a.链接器—> 常规 —> 附加库目录 添加lib文件所在路径 b.链接器—> 输入 —> 附加依赖项 添加对应Dll的lib文件名 正确设置之后,Demo中包含对应的头文件即可正常调用Dll中的函数。 |
|