zoukankan      html  css  js  c++  java
  • dll的使用

    其中lr中使用dll很简单,主要是lr_load_dll()函数来实现。
    我是头一次接触dll,所以又是花了一天的时间才搞定!笨阿!
    这里主要简单介绍一下dll的编写。
    dll的编写主要分以下部分:头文件编写,导出函数,主程序(包含入口点)
    1.头文件中是用来声明函数的,其中可以在这里声明要使用何种语言:
    #ifndef sample_h
    #define sample_h
    extern "C" int desinit(int a, int b)
    extern "C" int desdone(int a, int b)

    #endif

    2.声明导出函数
    (1)DLL导出函数,可供应用程序调用;
    (2) DLL内部函数,只能在DLL程序使用,应用程序无法调用它们。
    ;LIBRARY dllname
    LIBRARY sample
    EXPORTS
    ;导出函数名
    desinit
    desdone

    编译时,要将这两个文件放到header文件里

    3.主程序
    这里就可以用c编写你需要的程序了。
    其中他的入口点,使默认的缺省函数。如果你只是单线程单进程,就不用编写了。他默认为
    BOOL APIENTRY DllMain(HANDLE hModule,
                                                DWORD ul_reason_for_call,
                                                LPVOID lpReserved)
    {
    return TRUE;
    }
    编译后,将debug里的*.dll和*.lib文件放到lr的脚步目录下。这样就可以直接调用dll了,可以使用dll中的导出函数。大大提高了效率。
  • 相关阅读:
    51nod1376 最长递增子序列的数量
    51nod1201 整数划分
    51nod1202 子序列个数
    51nod 博弈论水题
    51nod1052 最大M子段和
    51nod1678 lyk与gcd
    51nod1262 扔球
    BZOJ2763, 最短路
    吃西瓜 最大子矩阵 三维的。 rqnoj93
    noip2015 信息传递 强连通块
  • 原文地址:https://www.cnblogs.com/morebetter/p/259450.html
Copyright © 2011-2022 走看看