執行、偵錯及測試 MSIX 套件

執行您的已封裝應用程式來查看外觀,而不需要簽署。 然後,設定中斷點和逐步執行程式碼。 當您準備好在生產環境測試應用程式時,請簽署應用程式,然後再安裝。 此主題將會告訴您如何執行每個項目。

執行您的應用程式

您可以在本機執行應用程式並進行測試,而不需要取得憑證和進行簽署。 執行應用程式的方式取決於您用來建立套件的工具。

您已使用 Visual Studio 建立套件

將封裝專案設定為起始專案,然後按 F5 啟動應用程式。

您已使用不同的工具建立套件

開啟 Windows PowerShell 命令提示字元,然後從套件檔案的根目錄中,執行此 Cmdlet:

Add-AppxPackage –Register AppxManifest.xml

若要啟動您的應用程式,請在 Windows [開始] 功能表中找到應用程式。

Packaged application in the start menu

注意

封裝的應用程式總是會以互動使用者的身分執行,您安裝已封裝應用程式的任何磁碟機都必須格式化為 NTFS 格式。

偵錯應用程式

偵錯應用程式的方式取決於您用來建立套件的工具。

如果您已使用 Visual Studio 2017 15.4 版和更新版本 (包括 Visual Studio 2019) 提供的新封裝專案建立套件,則只需將封裝專案設定為啟始專案,然後按下 F5 即可偵錯應用程式。

如果已使用任何其他工具建立套件,請依照下列步驟執行:

  1. 請務必至少啟動您的已封裝應用程式一次,讓其安裝在本機電腦上。

    請參閱上述執行您的應用程式一節。

  2. 啟動 Visual Studio。

    如果您想要以提升權限偵錯的應用程式,可以利用 [以系統管理員身分執行]選項來啟動 Visual Studio。

  3. 在 Visual Studio 中,選擇 [偵>錯-其他偵錯目標偵>錯已安裝的應用程式套件]。

  4. 在 [已安裝的應用程式套件] 清單中,選取您的應用程式套件,然後選擇 [附加] 按鈕。

在偵錯工作階段之間修改您的應用程式

若您變更應用程式以修正問題,請使用 MakeAppx 工具重新封裝。 請參閱執行 MakeAppx 工具

偵錯整個應用程式生命週期

在某些情況下,您可能會想對偵錯處理程序進行更細微的控制,包括能夠在啟動應用程式之前進行偵錯。

您可以使用 PLMDebug 取得對應用程式生命週期的完整掌控權,包括暫止、繼續,與終止。

PLMDebug 隨附於 Windows SDK。

測試您的應用程式

若要在準備散發時部署已封裝應用程式進行端對端生產測試,您必須使用應用程式部署所在電腦上受信任的憑證來簽署您的套件。

測試已使用 Visual Studio 封裝的應用程式

Visual Studio 使用測試憑證來簽署您的應用程式。 您會在輸出資料夾中找到建立應用程式套件精靈產生的憑證。 憑證檔案有 .cer 副檔名,而且您必須將該憑證安裝到受信任的人員憑證存放區,此憑證存放區位於您想要在其上測試應用程式的電腦上。 請參閱在 Visual Studio 中封裝傳統型或 UWP 應用程式

測試已使用不同工具封裝的應用程式

如果您在 Visual Studio 之外封裝應用程式,則可以使用簽署工具來簽署應用程式套件。 如果您用於簽署的憑證在要測試的電腦上不受信任,則您必須先將憑證安裝到「受信任的人員」憑證存放區,然後再安裝應用程式套件。

簽署您的應用程式套件

若要手動簽署您的應用程式套件:

  1. 建立憑證。 請參閱建立憑證

  2. 將該憑證安裝到您系統上受信任的人員憑證存放區。

  3. 使用該憑證來簽署您的應用程式,請參閱使用 SignTool 簽署應用程式套件

重要

請確定您憑證的發行者名稱符合應用程式的發行者名稱。

相關範例

SigningCerts

使用 comparepackage.exe 測試您的應用程式

ComparePackage.exe 是 Windows SDK 中的工具,其中顯示報告指出哪些檔案已變更、新增了哪些檔案、已刪除哪些檔案,以及當應用程式從某個版本更新至下一個版本時,哪些檔案保持不變。

針對 Windows 10 S 測試您的應用程式

在發行您的應用程式之前,請確保其可在執行 Windows 10 S 的裝置上正常運作。事實上,如果您計畫在 Microsoft Store 發行應用程式,則必須執行此步驟,因為這是 Microsoft Store 需求。 無法在執行 Windows 10 S 的裝置上正確運作的應用程式,無法獲得認證。

請參閱針對 Windows 10 S 測試您的 Windows 應用程式

在完全信任容器內執行另一個進程

您可以在指定應用程式套件的容器內叫用自訂進程。 這適用於測試案例(例如,如果您有自定義的測試控管,而且想要測試應用程式的輸出)。 若要這樣做,請使用 Invoke-CommandInDesktopPackage PowerShell Cmdlet:

Invoke-CommandInDesktopPackage [-PackageFamilyName] <string> [-AppId] <string> [-Command] <string> [[-Args]
    <string>]  [<CommonParameters>]

下一步

有任何疑問嗎? 請在 MSIX 技術社群上詢問我們。