C++调用dll

很长时间没有用C++, 项目需要,重新温习下。

假设需要调用的dll为dll_win32.dll,位置为C:dll中,实现的是两个变量相加的操作,函数名称为Add,步骤如下:

1、新建一个project, 名字为console_win32

2、console_win32.cpp代码如下:

  // console_win32.cpp : 定义控制台应用程序的入口点。
//

#include "stdafx.h"
#include "iostream"
#include <windows.h>
typedef int (*DLLFunc)(int,int);
using namespace std;
int _tmain(int argc, _TCHAR* argv[])
{
    DLLFunc dllFunc;
    int x;
    //HINSTANCE hInstLibrary = LoadLibrary("dll_win32.dll");
    HINSTANCE hInstLibrary =LoadLibraryEx("C:\dll\dll_win32.dll", NULL, LOAD_WITH_ALTERED_SEARCH_PATH);
    if(hInstLibrary == NULL)
    {
        FreeLibrary(hInstLibrary);
    }
    else
    {
        dllFunc=(DLLFunc)GetProcAddress(hInstLibrary,"Add");//Add为dll中函数名称
        if(dllFunc==NULL)
        {
            FreeLibrary(hInstLibrary);
        }
        else
        {
            x=dllFunc(14,6);
            cout<<"mdc  "<<x<<endl;
            FreeLibrary(hInstLibrary);        
        }
    }
    return 0;
}

原文地址:https://www.cnblogs.com/csshaw/p/3958309.html