gpt4 book ai didi

c++ - 将 Qt DLL 保存在单独的文件夹中

转载 作者:行者123 更新时间:2023-11-30 05:32:40 24 4
gpt4 key购买 nike

我是Qt开发环境的新手,我部署了一个小的Qt应用程序(发布版),我也复制了必要的dll到与.exe文件相同的目录级别和一个名为 platforms 的单独文件夹,用于平台特定的 dll。现在程序运行正常。

但我想将 dll 保存在单独的子文件夹中。

我在这个问题上找到的大多数搜索结果都提供了第三方 dll 的解决方案。并特别提到创建一个 plugins 子目录,但我正在尝试移动 Qt5core.dllQt5Gui.dllQt5Widgets。 dllicu dll 在一个单独的位置(当然在应用程序目录内)。

据我所知,该程序会在与 .exe 文件相同的目录级别中搜索必要的 dll。

那么,如何设置dlls 的相对路径呢?目录结构如下:

appDirectory/app.exe
appDirectory/lib/all_necessary_dlls
appDirectory/platforms/platform_specific_dll

I have been searching Qt forums and SO for quite long time but failed to find a satisfying answer.

最佳答案

Qt dll 文件在程序启动时静态加载,这意味着 Windows 将首先在应用程序目录中查找,然后在包含在 %PATH% 环境变量中的每个目录中查找。

因此,为了从子目录加载它们,我能想到的唯一方法是在启动程序之前将您的子目录添加到 %PATH% 环境变量中(可能在安装期间或其他东西),但这根本不是一种干净的方法。

但是为什么你必须这样做呢?

如果您不喜欢随您的应用程序一起分发的 dll 文件,始终可以选择静态链接(但请确保您在使用它时没有违反许可证)。

关于c++ - 将 Qt DLL 保存在单独的文件夹中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35051272/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com