首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >QLibrary没有加载DLL

QLibrary没有加载DLL
EN

Stack Overflow用户
提问于 2019-09-16 19:49:57
回答 2查看 308关注 0票数 1

我希望在C++程序中加载DLL并创建函数指针。为了避免任何混淆,我提供DLL的绝对路径。但是,DLL仍未加载。

我的代码:

代码语言:javascript
复制
void CallFunctionPointers()
{
    QString strMsg;
    QString strLibPath("D:\\dll\\AtmoRemote.dll");

    QLibrary* m_p_lib = new QLibrary();
    m_p_lib->setFileName(strLibPath);

    if (!m_p_lib->load())
    {
        strMsg = QString("Could not load %1").arg(strLibPath); //<<<<-----------PROGRAM ALWAYS ENTERS HERE
    }
    else
    {
        strMsg = QString("Successfully loaded: %1").arg(strLibPath); 
    }
}
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2019-09-16 20:48:23

可能有很多原因,不可能用这里提供的细节来诊断。

例如:使用Qt的进程是64位,DLL是32位。反之亦然。另一个: DLL依赖于QLibrary不可用的其他DLL。我对您的建议是:使用依赖步行器或类似的实用程序来诊断这些问题。

票数 3
EN

Stack Overflow用户

发布于 2019-09-16 20:00:31

检查错误。

QString QLibrary::errorString() const 返回一个文本字符串,其中包含发生的最后一个错误的说明。目前,只有在load()、unload()或errorString ()由于某种原因失败时才会进行设置。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/57963535

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档