C++ 操作DLL的函数 Loadlibrary GetProcAddress FreeLibrary

举报
AI浩 发表于 2021/12/23 00:03:16 2021/12/23
【摘要】 LoadLibrary("文件名"):返回得到的模块句柄,可以加载一个动态连接库或exe文件。 例:   HINSTANCE hLib = NULL;   string path = g_strExeFilePath + "\\xx.dll";     LPCSTR strPath...

LoadLibrary("文件名"):返回得到的模块句柄,可以加载一个动态连接库或exe文件。

例:

  HINSTANCE hLib = NULL;

  string path = g_strExeFilePath + "\\xx.dll";
    LPCSTR strPath = path.c_str();
    hLib = LoadLibrary(strPath);
    if (hLib == NULL)
    {
        printf("LoadLibraryA()失败!  error = %d,{%d}", GetLastError(), __LINE__);
        return FALSE;
    }
    else {
        printf("LoadLibraryA()开始");

       }

GetProcAddress(Hinstance,lpname):用来获取指定的动态连接库函数的地址。

Hinstance:为由LoadLibrary返回的模块句柄,lpname为文件名/函数名,返回值,成功返回动态连接库的地址,失败返回NULL

FreeLibraryHinstance):Hinstance为由LoadLibrary返回的模块句柄,功能是:释放动态连接库!

if (hLib != NULL)
    {
        FreeLibrary(hLib);
        hLib = NULL;
    }

文章来源: wanghao.blog.csdn.net,作者:AI浩,版权归原作者所有,如需转载,请联系作者。

原文链接:wanghao.blog.csdn.net/article/details/108356512

【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。