2011-07-17 58 views
6

我製作了一個加載jpeg文件的Qt GUI應用程序。在我的開發系統(Win7)上,我已經安裝了QtSDK(4.7.3)。 當我將應用程序和一些必需的dll(如QtGui4.dll等)移動到另一個未安裝QtSDK的系統時,程序將執行,但無法加載jpegs。 我讀過,我必須添加jpeg插件,但我不知道如何。在我的應用程序中包含jpeg插件

我已經嘗試過這在我的main.cpp:

Q_IMPORT_PLUGIN(qjpeg); 

一起在我的項目文件:

QTPLUGIN += qjpeg 

但我得到的錯誤:

cannot find -lqjpegd 

我不關心我是否以動態或靜態的方式包含這個插件。我只需要我的應用程序在其他系統上工作。我更喜歡那種更簡單的方式。我試過的是靜態的方式,對吧?我如何才能將它作爲一個dll文件包含在我的應用程序中? 我還檢查我的

mingw\plugins\imageformats 

目錄,實在是沒有qjpeg.dll。但也有:

qjpeg4.dll qjpegd4.dll libqjpeg4.a

比我有嘗試過:

Q_IMPORT_PLUGIN(qjpeg4); 
QTPLUGIN += qjpeg4 

但得到了同樣的錯誤味精。怎麼了?

感謝您的回答!

回答

3

plugins\imageformats文件夾複製到您的應用程序目錄中。 在你的main()中加入這個

QApplication a(argc, argv); 
QString sDir = QCoreApplication::applicationDirPath(); 
a.addLibraryPath(sDir+"/plugins"); 
+0

什麼對象是'a'? – Pietro

+0

'QApplication a(argc,argv);' –

+0

它仍然不起作用...輸出(使用QPrinter打印到pdf)沒有任何圖像。任何解決方法? – clearScreen

相關問題