码迷,mamicode.com
首页 > 其他好文 > 详细

dll库生成和使用

时间:2015-07-15 14:40:54      阅读:103      评论:0      收藏:0      [点我收藏+]

标签:

抄自http://www.cnblogs.com/fangyukuan/archive/2010/06/20/1761464.html

1. VS2010中新建Win32-Win32项目,输入名称DllDemo

技术分享

2. 选择DLL,点击完成

技术分享

3. 在DllDemo.cpp中加入:

// DllDemo.cpp : 定义 DLL 应用程序的导出函数。
//

#include "stdafx.h"

//使用关键字_declspec(dllexport)来声明外部引用的函数
extern "C" __declspec(dllexport) void SayHello(const char * string)
{
    ::MessageBox(NULL, string, "提示", MB_OK);
}

4. 生成解决方案

技术分享

第二步,使用这个Dll库。新建控制台程序TestDll。

在TestDll.cpp中输入:

//#include "stdafx.h"
#include <windows.h>
#include <iostream>
using namespace std;

//定义函数指针
typedef void (*SAYHELLO)(const char *);

int main()
{
    HINSTANCE hDll;

    //装载dll库
    hDll = LoadLibrary(L"DllDemo.dll");
    if (NULL == hDll){
        cout<<"加载dll失败!\n";
    }else{
        // 从dll中获取函数的入口地址
        SAYHELLO lpproc = (SAYHELLO)GetProcAddress(hDll, "SayHello");
        if (NULL != lpproc){
            //调用dll中的函数
            (*lpproc)("优衣库");
        }
        // 卸载库
        FreeLibrary(hDll);
    }
    return 0;
}

点击生成解决方案,再点击运行,运行结果如图:

技术分享

(完)

dll库生成和使用

标签:

原文地址:http://www.cnblogs.com/fwst/p/4648040.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!