qml坑之發布exe

2021-08-11 12:19:56 字數 704 閱讀 2591

release版本exe,編譯,執行,沒有反應,任務管理器沒有程序

嘗試windeployqt.exe,可以在exe的目錄自動生成依賴項,執行,依舊沒有反應

嘗試將exe拷貝至qt的bin目錄,可以執行,說明依賴項不全,windeployqt.exe也不能檢測出來,更何況人為去找

只能在本機上執行,在其他機器上執行沒有反應

該問題暫時無解,qml無法發布,慎用

問題解決,手動新增依賴項,檢視依賴項的終極方法:qt creator debug,在main函式處加乙個breakpoint,執行至breakpoint,「view」-「modules」,既可以檢視exe執行載入的所有dll,將與qt有關的一一拷貝出來,主要為qt目錄的「bin」、「plugins」、「qml」,注意之拷貝這幾個目錄內的內容,目錄本身去掉,如「plugins」-「platform」-qwindows.dll,只保留「platform」-qwindows.dll;注意,「qml」目錄存放的是qml外掛程式,一系列.qmlc和.qml檔案,呼叫到哪乙個外掛程式,就要將外掛程式所在的整個資料夾拷貝出來,如呼叫了「qml\qtquick\controls.2」-qtquickcontrols2plugin.dll,則需要拷貝整個「qtquick\controls.2」資料夾

測試從windows7編譯的exe放到win10執行,發現兩個問題:(1)客戶端機器載入速度慢,exe執行後要等較長時間才彈出,開發端沒有該問題;(2)圖示沒有布局

Qt 的exe打包發布

qt的exe發布分2個版本,qt4和qt5,qt5的打包相當簡單,因為qt5提供了乙個叫windeployqt的指令,我這裡使用的是qt5.7的版本,在程式裡面找到qt 5.7 for desktop mingw 5.3.0 32 bit 開啟後是想dos一樣的命令列。首先在creator中選擇re...

用Pyinstaller打包發布exe應用

pyinstaller 先去官網看支援的python版本 安裝方法1 1.cmd到 python scripts 找到pyinstaller.exe 2.輸入命令 1 pyinstaller.exe f path demo.py 後記 1.程式設定自定義圖示 pyinstaller f i ico ...

將hta包裝為exe發布

hta在開啟的時候,有時候會被防毒軟體攔截而不給執行,更重要的一點是通常都可以右擊檢視源 裡面如果涉及到網域名稱或者其它的一些細節就很容易被其它人了解。很簡單,主要的實現過程是 將hta作為資源新增至專案中,exe啟動後讀取資源檔案,並寫入本地磁碟,然後呼叫mshta命令啟動hta,當hta被關閉時...