我的应用程序是用Qt 5.0.1和QtQuick 2.0构建的。它在QtCreator中运行得很好,但我很难正确部署它。我将可执行文件(发布版本)复制到桌面上一个名为"项目部署"的目录中,并添加了一堆DLL(发布版本,而不是调试)、QML文件和SVG图像。
除了SVG图像之外,一切都很好,这些图像根本不会显示。我把其中一个转换成GIF,它显示得很完美。很明显,我没有正确设置QT SVG插件。
我在main()中找到了这个,就在定义了QApplication应用程序之后:
QStringList libPaths = QCoreApplication::libraryPaths();
libPaths.append(QCoreApplication::applicationDirPath() + "/plugins");
app.setLibraryPaths(libPaths);
在Project Deployment/plugins
文件夹中,我已经放置了iconengines/qsvgicon.dll
和imageformats/qsvg.dll
。在Project Deployment
文件夹中,我有Qt5Xml.dll(因为我在某个地方读到,因为SVG是XML格式的,所以它使用该dll)。
我完全没有想法(也没有网络资源)。有人能帮忙吗?
谢谢!
如果您通过Dependency Walker运行SVG插件(QSvg.dll),您会发现它依赖于Qt5Svg.dll
。
它需要放在imageformats
文件夹中,例如C:Program FilesAppFolderimageformatsqsvg.dll
更多信息请点击此处:http://doc.qt.digia.com/stable/deployment-plugins.html