动态链接库(DLL)总结---动态链接库的创建与使用(5)

21 篇文章 1 订阅
10 篇文章 2 订阅
 我们将  动态链接库(DLL)总结---静态链接库的创建与使用(4)中的工程修改下属性即可,如下图:
 
 编写代码。
 编辑Lib1.h文件
  **extern "C" __declspec(dllexport) void Msg();**
 Lib1.cpp文件内容不变,然后重新生成即可。

调用Dll
1)隐式链接
将生成的lib文件和dll文件拷贝到要测试项目目录下。
测试代码如下:
    #include "../Win32Project1/Lib1.h"
    #pragma comment(lib,"Win32Project1.lib") 
    int _tmain(int argc, _TCHAR* argv[])
    {
        Msg();
        return 0;
    }

 2)显示链接
 此时只需要dll文件即可,不需要使用lib文件
 测试代码如下:
 int _tmain(int argc, _TCHAR* argv[])
{
    //1 定义调用函数指针
    typedef void(*FUN)();

    //2 获取DLL的实例句柄
    HINSTANCE hInst = LoadLibrary(L"Win32Project1.dll");

    //3 得到dll中的函数地址
    FUN pMsg = (FUN)GetProcAddress(hInst, "Msg");

    //4 使用函数
    pMsg();

    //5 释放DLL
    FreeLibrary(hInst);
return 0;

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值