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;

    }

  • 相关阅读:
    P2486 [SDOI2011]染色 (树链剖分)
    机房测试:Dove打扑克(vector暴力)
    机房测试:sort(归并+概率期望dp)
    区间覆盖问题总结(贪心)
    机房测试:停不下来的团长奥加尔(dp)
    博客目录
    团队作业week16
    Beta阶段项目展示
    Beta阶段项目终审报告
    Beta阶段测试报告
  • 原文地址:https://www.cnblogs.com/java20130722/p/3207215.html
Copyright © 2011-2022 走看看