也许大多数有Qt5库经验的人都会说我应该将qwindows.dll复制到myappfolder/platforms/qwindows.dll

那已经完成并且可以完美地工作了。

问题是我已经在该应用程序中注册了文件扩展名,当我双击打开文件时,该应用程序崩溃,因为它找不到该qwindows.dll

绝望的是,我也尝试过以下代码:

QApplication::addLibraryPath(QCoreApplication::applicationDirPath());
QDir::setCurrent(QCoreApplication::applicationDirPath());
QApplication::addLibraryPath("./");
QString sDir = QCoreApplication::applicationDirPath();
QApplication::addLibraryPath(sDir);
QApplication::addLibraryPath(sDir+"/plugins/");
QApplication::addLibraryPath(sDir+"/platforms/");


但是我也没有运气。

有小费吗?

正如我在评论中所写,这与部署问题不同,因为如果直接打开.exe,它将很好地打开。

最佳答案

因此,我猜想通过像这样运行它实际上会设置快捷方式所在的应用程序默认目录。
您可以通过将快捷方式/任何文件都放在与.exe相同的目录中来进行测试,看看是否可行。

有一些方法可以告诉Qt加载器在其他地方查看,但我从未真正玩过它。看这里:http://www.tripleboot.org/?p=536
并搜索QT_QPA_PLATFORM_PLUGIN_PATH
我认为这是关于将系统变量设置为您的.exe位置
设置QT_QPA_PLATFORM_PLUGIN_PATH = c:\ myapp

祝好运

09-05 22:50