zoukankan      html  css  js  c++  java
  • VC生成的DLL给QT的EXE调用时lib路径问题小结

    VC生成的DLL给QT调用,有两种方式,一种是隐式调用调用(使用.lib文件方式):

    ① 在*.pro工程文件中添加VC生成的lib文件路径时,或者使用一个绝对路径,如:

    LIBS += "D:/Test/QT_ex/VC_DLL.lib"

    或者使用一个相应路径,如:

    LIBS += "VC_DLL.lib"

    注:该相对路径指的是build-VCDLL_QTXXX-Desktop_Qt_5_5_0_MSVC20XX_32bit-Debug类似的目录下,该路径经常使用下面语句查看,即工作路径:

        qDebug()<<QDir::currentPath();
    
    

    很奇怪,*.pro文件中,各个*.cpp、h文件都是相对于pro文件所在的目录,而lib文件就有些不同。

    ② 要正确的运行,还要将 *.dll拷贝到exe所在的目录。

    另一种方式是显示调用,即直接使用.dll方式,也存在着*.dll文件放在工作目录的问题:

    ① 如果是在QT Creator中运行,因为工作目录(

    QDir::currentPath()

    )是在build-VCDLL_QTXXX-Desktop_Qt_5_5_0_MSVC20XX_32bit-Debug中,因此需要将dll文件拷贝到该目录下,而不是exe文件所在的目录;

    ② 如果是双击鼠标直接运行exe,则dll文件和exe文件在一个目录下。

    http://blog.csdn.net/dijkstar/article/details/48859893

  • 相关阅读:
    appium之adb常用命令
    测试基础之等价类
    selenium之CSS定位
    括号序列的最小代价
    Spark相对于MapReduce的优势
    Cache系统设计
    [京东2017实习生笔试] 终结者C
    [京东2017实习生笔试] 通过考试
    [hihoCoder] 1078. 线段树的区间修改
    [转载] 一步一步理解线段树
  • 原文地址:https://www.cnblogs.com/findumars/p/5321245.html
Copyright © 2011-2022 走看看