Qt5 程序發佈windowsXP一些問題

Qt5 程序發佈windowsXP一些問題

標籤: windowsxpqt5vs2013

 1622人閱讀 評論(1) 收藏 舉報

category_icon.jpg 分類:

編程(2) arrow_triangle%20_down.jpg

開發環境win7 + vs2013 + Qt5

目標機器:xp,沒有安裝vs和Qt

首先將EXE文件即其依賴dll放入同一文件夾,拷貝到目標機器上,雙擊運行,出現錯誤1

1、“exe不是有效的Win32程序,如圖”



Vs2013支持xp環境的程序,不過得設置一下。方法如下:

在vs2013中,在工程名上點擊右鍵-》屬性-》配置屬性-》常規-》平臺工具集,選擇xp項,如下圖



系統差異問題解決,第二個就是vs編譯環境問題。

 

2、“沒有找到MSVCR120.dll,因此這個應用程序未能啓動,重新安裝應用程序可能會修復此問題”



       原因在於缺少vs2013程序環境,一種方法是根據提示卻上什麼dll文件,就下載並將其拷貝到“C:\Windows\System32”中,第二種方法是到微軟網站下載Visual C++ RedistributablePackages for Visual Studio 2013,鏈接:http://www.microsoft.com/zh-cn/download/details.aspx?id=40784

接下來就是Qt5的環境問題,此問題要複雜一點兒,之前也沒接觸,故花的時間略多。

 

3、Qt5,“this application failed tostart because it could not find or load the Qt platform plugin “windows””



出現此問題可能原因有兩個:

第一是EXE同文件夾中缺少libEGL.dlllibGLESv2.dlldebug版本程序使用libGLESv2d.dll),將這兩個文件考入文件夾

第二個Qtwindows下運行必須要qwindows.dll文件,此文件在“Qt\Qt5.3.2\5.3\msvc2013\plugins\platforms”路徑下,但不能類似前面處理方式一樣將qwindows.dll文件拷貝到EXE目錄,這和Qtplugins的加載方式有關。解決步驟如下:

a)       在main函數開頭加入下面語句

       QApplication::addLibraryPath("./plugins");

b)       在EXE目錄中新建platforms文件夾,將qwindows.dll文件拷入



當然這裏因爲我只用到了qwindows.dll,如果還用到其他的plugins也得一起拷進去。

這個問題可以採用qt.conf解決,但我沒有看過,可以參考Qt官網的資料

http://qt-project.org/doc/qt-5/windows-deployment.html


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章