打开文件时,基于Qt的应用'Qt平台插件窗口未找到'问题

时间:2015-11-24 19:07:57

标签: c++ windows qt platform

大多数有Qt5图书馆经验的人可能会说我应该将qwindows.dll复制到myappfolder/platforms/qwindows.dll

这已经完成并且完美无缺。

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

Desesperatly我也没试过这段代码:

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就会正常打开。

1 个答案:

答案 0 :(得分:0)

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

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

祝你好运