我有一个Qt应用程序,其中包含一些嵌入的JPG文件,我想显示这些文件。当我在我的计算机上编译和运行调试和发布版本时,一切都正常。当我将应用程序复制到一个存储设备并在我的计算机上从那里运行时,它也能正常工作。在存储设备上和另一位开发人员的计算机上:OK。但是在第三个非开发人员的计算机上使用存储设备运行时:没有图片!
proj.pri
RESOURCES += ./proj.qrc
proj.qrc:
<RCC>
<qresource prefix="/myApp">
<file>Gui/Resources/logo.jpg</file>
<file>Gui/Resources/another_image.jpg</file>
</qresource>
</RCC>
main.cpp:
{
...
QImage *logo = new QImage( ":/myApp/Gui/Resources/logo.jpg" );
QImage *image = new QImage( ":/myApp/Gui/Resources/another_image.jpg" );
myClass *d1 = new myClass( "Some Text", 48, 30, logo );
myClass *d2 = new myClass( "Some More Text", 48, 30, another_image );
...
}
我确认通过注释.pri文件中的RESOURCES行,将图片添加到可执行文件中。二进制文件的大小减少了图片的大小加上一点点;当我运行应用程序时,图片不会出现。取消注释RESOURCES行,一切都像上面描述的那样工作。
我错过了什么?非开发人员机器上的DLL文件?
环境: - Win XP - Qt 4.6.1 - Visual Studio 2008 - Qt Creator 1.3.1