查看: 562|回复: 2

[C/C++] [DLL开发教程] 1.2创建一个DLL项目

[复制链接]

0

技术

9

魅力

1

原创

版主

禁止访问

Rank: 7Rank: 7Rank: 7

积分
7734
人气
176
分享
52

最佳新人活跃会员

发表于 2022-10-15 20:25:24 | 显示全部楼层 |阅读模式
首先打开Visual Studio (否则后面的一个关键字可能会不支持)

新建一个 具有导出项的(DLL)动态链接库 项目

这里需要注意两点:
1.这个项目需要搜索 DLL 才能找到,反正我把项目列表翻了几遍也没找到
2.一定要选择 具有导出项的 否则呢。。。啊我也不知道
反正选这个准没错。如果有人很闲,可以试一下普通的DLL项目,我不确定能否成功

创建成功后,会出现两个.cpp文件,非别是 dllmain.cpp 和 项目名称.cpp
例如,我的项目是testDll,那么两个文件就会分别是 dllmain.cpp 和 testDll.cpp
两个文件中分别有以下代码:
dllmain.cpp
[C++] 纯文本查看 复制代码
// dllmain.cpp : 定义 DLL 应用程序的入口点。
#include "pch.h"

BOOL APIENTRY DllMain( HMODULE hModule,
                       DWORD  ul_reason_for_call,
                       LPVOID lpReserved
                     )
{
    switch (ul_reason_for_call)
    {
    case DLL_PROCESS_ATTACH:
    case DLL_THREAD_ATTACH:
    case DLL_THREAD_DETACH:
    case DLL_PROCESS_DETACH:
        break;
    }
    return TRUE;
}


testDll.cpp
[C++] 纯文本查看 复制代码
// testDll.cpp : 定义 DLL 的导出函数。
//

#include "pch.h"
#include "framework.h"
#include "testDll.h"


// 这是导出变量的一个示例
TESTDLL_API int ntestDll=0;

// 这是导出函数的一个示例。
TESTDLL_API int fntestDll(void)
{
    return 0;
}

// 这是已导出类的构造函数。
CtestDll::CtestDll()
{
    return;
}

我们接下来会在testDll.cpp中进行编程


本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x

本帖被以下淘专辑推荐:

小菜鸡一枚~
Gitee主页:https://gitee.com/juruoqwq

4

技术

17

魅力

6

原创

版主

禁止发言

Rank: 7Rank: 7Rank: 7

积分
5367
人气
208
分享
36

最佳新人活跃会员

发表于 2022-10-15 23:07:31 | 显示全部楼层
有没有兴趣发到技术教程区来
YF工作室驻x64论坛分部
工作室曾开发的软件:YFSafe安全软件,YFChat在线聊天软件,MBRTools等。
欢迎有能力的你加入我们一起共同进步。请发邮件至yfstudio2021@outlook.com

0

技术

9

魅力

1

原创

版主

禁止访问

Rank: 7Rank: 7Rank: 7

积分
7734
人气
176
分享
52

最佳新人活跃会员

 楼主| 发表于 2022-10-16 17:05:18 | 显示全部楼层
YFSafe 发表于 2022-10-15 23:07
有没有兴趣发到技术教程区来

你和@Andysun06 看着办呗,如果移到技术教程区,我以后就去技术教程区发,反正都是C++相关呢内容,在哪发都一样
小菜鸡一枚~
Gitee主页:https://gitee.com/juruoqwq
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

快速回复 返回顶部 返回列表