c/c++创建动态库
2021/8/8 9:06:20
本文主要是介绍c/c++创建动态库,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
上一篇 用的命令
cl /c xx.cpp //编译成obj link /dll /out:mou1.dll x.obj //链接生成dll 文件
cpp 的导入可以直接声明 导出函数
extern "C" __declspec(dllexport) void mou1() { puts("mou1"); }
不需要加
__declspec(dllexport)
也可以在当前文件里面写def 导出文件
接着命令 导出函数
link /dll /def:mou.def /out:mou1.dll x.obj
dumpbin /exports mou1.dll
查看导出函数
写代码调用dll
#include <stdio.h> #include <stdlib.h> #include <windows.h> typedef void (*fun)(); int main() { //mou1(); //加载这个dll HMODULE hModule=LoadLibrary(L"mou1.dll"); //获取导出函数地址 fun pfn = (fun)GetProcAddress(hModule, "mou1"); printf("%p", pfn); if (pfn!=NULL) { pfn(); } //卸载 FreeLibrary(hModule); system("pause"); }
如果要导出类必须需要用 关键字
__declspec(dllexport)
但是也是以函数形式导出的 构造函数,析构函数。。
这篇关于c/c++创建动态库的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-07-03微信支付提示下单账户与支付账户不一致-icode9专业技术文章分享
- 2024-07-03微信支付提示订单号重复-icode9专业技术文章分享
- 2024-07-02微服务启动nacos注册上去了,但是一直没有收到请求-icode9专业技术文章分享
- 2024-07-02如何检查文件的编码格式-icode9专业技术文章分享
- 2024-07-02sublime 更改编码格式-icode9专业技术文章分享
- 2024-06-30uniAPP 实现全屏左右滚动滚动的效果-icode9专业技术文章分享
- 2024-06-30如何在本地使用授权或插件-icode9专业技术文章分享
- 2024-06-30伪静态规则配置方法汇总-icode9专业技术文章分享
- 2024-06-29易优CMS安装常见问题汇总-icode9专业技术文章分享
- 2024-06-28易优新手必读安装教程-icode9专业技术文章分享