操作步驟:
1 拷貝xxx.exe文件到單獨的目錄中
2 執行windeployqt xxx.exe --qmldir F:\Qt\5.9.1\msvc2017_64\qml
3 雙擊運行xxx.exe
現象:
沒有報任何錯誤,也沒有任何反應,但是通過任務管理器看這個進程又已經運行
然後百思不得其解;然後通過各種嘗試和搜索,發現一篇文章描述了該問題,也從另一方面解決了該問題,但是沒有描述出現該問題的原因,url:https://blog.csdn.net/jhkdiy/article/details/65443782.後來我根據他的靈感,最後將問題鎖定在windeployqt工具的參數上面,然後仔細的研究了下,發現windeployqt工具中有--no-patchqt選項:
通過描述可以發現,這個選項的作用是讓windeployqt不對Qt5Core這個庫進行patch.所以我們把之前生成的所有文件全部刪除掉,重新執行命令:
windeployqt xxx.exe --qmldir F:\Qt\5.9.1\msvc2017_64\qml --no-patchqt
雙擊運行,成功執行.