zoukankan      html  css  js  c++  java
  • 如何调用 DLL 中的函数

    如何调用LL 中的函数

     

    在 DLL工程中的 cpp中函数定义如下:

    extern "C" _declspec (dllexport )

          int add(int a, char b)

    {

          return a + b;

    }

     

     

    一:显示链接

    调用的 DLL的主工程的 main文件中代码如下:

    #include <stdio.h>

    #include <Windows.h>

    #include <tchar.h>

     

    int main()

    {

          HMODULE hModule = NULL;

          typedef int (*Func)(int a, int b);

     

          // 动态加载 DLL 文件

          hModule = LoadLibrary(_TEXT("..//Debug//FuncDll.dll" ));

     

          // 获取 add 函数地址

          Func fAdd = (Func)GetProcAddress(hModule, "add" );

     

          // 使用函数指针

          printf("%d/n" , fAdd(5, 2));

     

          // 最后记得要释放指针

          FreeLibrary(hModule);

     

          return 0;

    }

     

    二:隐式链接:

    调用的 DLL的主工程的 main文件中代码如下:

    #include <stdio.h>

    #include <Windows.h>

    #include <tchar.h>

     

    // 先把 lib 链接进来

    #pragma comment (lib , "..//Debug//FuncDll.lib" )

     

    // 外部声明的 add 函数

    extern "C" _declspec (dllimport )

          int add(int a, char b);

     

    int main()

    {

          // 直接调用 add 函数

          printf("%d/n" , add(5, 2));

     

          return 0;

    }

  • 相关阅读:
    安装iis 安装sql2005安装vs2005
    msdn之构造函数
    winfrom释放word进程 winfrom嵌入word
    看过的好文章,牛人的博客
    数据库相关
    sqlserver得到此数据库所有的表名列名以及列名的类型,字节数等
    c#相关
    c#必须对其强签名
    winform利用读取xml获取webconfig
    JQuery EasyUI Tree
  • 原文地址:https://www.cnblogs.com/java20130722/p/3207215.html
Copyright © 2011-2022 走看看