zoukankan      html  css  js  c++  java
  • windows制作动态链接库和使用二

    动态库的另一种制作方法:

    不使用_declspec(dllexport)关键字,使用.def文件

    //exportFun.def 文件名随意
    EXPORT
    add @1              //格式  函数名 @编号 <NONAME> 函数名应该就是导出的含书名,PE工具看过能对上号。可以在getprocaddress里直接用这名字  
    sub @2 NONAME
    //myDll.cpp
    int add(int a,int b)
    {
    return a+b;
    }
    
    int sub(int a,int b)
    {
      return a-b;  
    }
    //入口函数,文件名随意xx.cpp
    #include <Windows.h>
    
    BOOL APIENTRY DllMain( HMODULE hModule,
                           DWORD  ul_reason_for_call,
                           LPVOID lpReserved
                         )
    {
        switch (ul_reason_for_call)
        {//下边几个自由发挥
        case DLL_PROCESS_ATTACH:
        case DLL_THREAD_ATTACH:
        case DLL_THREAD_DETACH:
        case DLL_PROCESS_DETACH:
            break;
        }
        return TRUE;
    }

    使用方法有两种:

    显式调用,只需要dll文件

    隐式调用,需要dll和lib文件

  • 相关阅读:
    二维数组和最大字数组求取 2
    spring冲刺第七天
    spring冲刺第六天
    寻找水王
    spring冲刺第五天
    spring冲刺第四天
    spring冲刺第三天
    spring冲刺第二天
    大道至简读书笔记3
    spring冲刺第一天
  • 原文地址:https://www.cnblogs.com/a-s-m/p/12215325.html
Copyright © 2011-2022 走看看