簡體   English   中英

無法在UWP工具包下運行Qt應用程序

[英]Can't run Qt application under UWP kit

我的應用程序是基於Qt Quick Controls 2的應用程序。 Qt 5.7.1,Windows 10,Visual Studio 2015。

桌面32位版本工作正常。

但是,當我切換到通用Windows平台32位套件的Qt 5.7.1時 ,它無法運行並出現以下錯誤:

winrtrunner --device 0 --start --stop --install --wait 0 --profile appx C:/Work/Source/build-MusicPlayer-Qt_5_7_1_for_Universal_Windows_Platform_32bit-Release/bin/player.exe
qt.winrtrunner: Using the Appx profile.
qt.winrtrunner: Failed to activate application: 0x8027025b "The app didn't start."
Error while executing the WinRT Runner Tool: Process crashed

在此處指出缺少某些依賴性。 我已經使用Dependency Walker檢查了它,似乎所有需要的DLL都在應用程序的文件夾中。 我也嘗試過將Qt kit安裝中的所有文件僅復制到應用程序的目錄中。

我的應用程序由一個主要的可執行文件和三個.DLL文件組成。 我已經為他們每個人啟動了windeployqt。 嘗試了調試和發行版本。

我在Windows 10,Qt 5.8(也是5.7),Windows Runtime 64位VC2015上遇到相同的問題。

這個主題是在Qt網站上打開的: https : //forum.qt.io/topic/73272/qt-5-7-for-winrt-and-dynamic-libraries ,但對我的情況沒有幫助:(。我在這里打開了一個新主題: https : //forum.qt.io/topic/75424/cannot-start-qt-quick-winrt-application

我有同樣的問題。

您需要重新編譯應用程序用於Windows 10 SDK的所有靜態/動態庫。 問題是您需要使用WinRT dll來提供沙箱環境,而不是“普通” Windows庫。 Windows Store應用程序需要這樣做。

就我而言,我使用的是zip靜態庫(zlibstat.lib)和Quazip靜態庫(quazip.lib),該庫是在Windows 7中使用Visual Studio 2012編譯的。

相反,我使用Qt zip,因為Qt在QtCore.dll中提供了zip庫(只需使用#include而不是#include“ zlib.h”),並將Quazip重新編譯為Windows 10 SDK的靜態庫。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM