共用方式為


針對 Windows 應用程式的封裝、部署和查詢進行疑難排解

使用這些建議,針對您以開發人員身分封裝、部署或查詢 Windows 應用程式套件 (.msix/.appx) 時遇到的問題進行疑難解答。

注意

本文適用於開發人員。 如果您不是開發人員,而且正在尋找 Windows 應用程式安裝錯誤的說明,請參閱 Windows 支援

取得診斷資訊

當 API 失敗時,它會傳回描述問題的錯誤碼。 如果錯誤碼未提供足夠的資訊,您可以在詳細的事件記錄中找到更多診斷資訊。

若要使用 事件檢視器 存取封裝和部署事件記錄檔,請遵循下列步驟:

  1. 請執行下列其中一個步驟:

    • 單擊 Windows 功能表上的 [開始],輸入 事件檢視器,然後按 Enter
    • 執行 eventvwr.msc
  2. 在左側頁面中,展開 [事件檢視器 [本機]> [應用程式及服務記錄>Microsoft>Windows]。

  3. 檢查這些類別底下的可用紀錄:

    • AppxPackagingOM>Microsoft-Windows-AppxPackaging/Operational
    • AppXDeployment-Server>Microsoft-Windows-AppXDeploymentServer/Operational

從查看 AppXDeployment-Server 底下的記錄開始。 如果錯誤是由0x80073CF0或ERROR_INSTALL_OPEN_PACKAGE_FAILED所造成,AppxpackagingOM 記錄中可能會顯示其他詳細數據。

您也可以在 PowerShell 中使用 Get-AppxLog 命令來取得前幾個記錄的事件。 下列範例會顯示與最近部署作業相關聯的記錄。

Get-Appxlog

下列範例會在個別視窗中顯示與互動式數據表中最近部署作業相關聯的記錄。

Get-Appxlog | Out-GridView

常見的錯誤碼

下表列出一些最常見的錯誤碼。 如果您需要上述其中一個錯誤的進一步協助,或遇到不在這份清單中的錯誤碼,請參閱 其他說明選項

錯誤碼 描述和可能的原因
E_FILENOTFOUND 0x80070002 找不到檔案或路徑。 這可能發生在 COM typelib 驗證期間,要求目錄的路徑實際上存在於 MSIX 套件中。
ERROR_BAD_FORMAT 0x8007000B 套件的格式不正確,而且必須重新建置或重新簽署。
如果簽署憑證主體名稱與AppxManifest.xml發行者名稱不符,您可能會收到此錯誤。
請參閱 如何使用 SignTool 簽署應用程式套件。
E_INVALIDARG 0x80070057 一或多個自變數無效。 如果您檢查 AppXDeployment-Server 事件記錄檔,並看到下列事件:「安裝套件時,系統因下列錯誤而無法註冊 windows.repositoryExtension 擴充功能:參數不正確。
如果指令清單元素 DisplayName 或 Description 包含 Windows 防火牆 |不允許的字元,您可能會收到此錯誤,因為 Windows 無法建立套件的 AppContainer 配置檔。 請從指令清單中移除這些字元,並嘗試安裝套件。
ERROR_INSTALL_OPEN_
PACKAGE_FAILED
0x80073CF0 無法開啟套件。
可能的原因:
  • 套件未經簽署。
  • 發行者名稱不符合簽署憑證主體。
  • 遺漏 file:// 前置詞,或找不到位於指定位置的封裝。
如需詳細資訊,請檢查 AppxPackagingOM 事件記錄檔。
ERROR_INSTALL_PACKAGE_
NOT_FOUND
0x80073CF1 找不到套件。
拿掉未為目前使用者安裝的套件時,您可能會收到此錯誤。
ERROR_INSTALL_INVALID_

0x80073CF2 封裝數據無效。
ERROR_INSTALL_RESOLVE_
DEPENDENCY_FAILED
0x80073CF3 套件更新、相依性或衝突驗證失敗。
可能的原因:
  • 傳入的套件與安裝的套件衝突。
  • 找不到指定的套件相依性。
  • 套件不支援正確的處理器架構。
如需詳細資訊,請檢查 AppXDeployment-Server 事件記錄檔。
ERROR_INSTALL_OUT_
OF_DISK_SPACE
0x80073CF4 您的電腦上沒有足夠的磁碟空間。 釋放一些空間,然後再試一次。
ERROR_INSTALL_NETWORK_
失敗
0x80073CF5 無法下載套件。
ERROR_INSTALL_
REGISTRATION_FAILURE
0x80073CF6 無法註冊套件。
如需詳細資訊,請檢查 AppXDeployment-Server 事件記錄檔。
ERROR_INSTALL_
DEREGISTRATION_EFAILURE
0x80073CF7 無法取消註冊套件。
拿掉套件時,您可能會收到此錯誤。
如需詳細資訊,請檢查 AppXDeployment-Server 事件記錄檔。
ERROR_INSTALL_CANCEL 0x80073CF8 使用者已取消安裝要求。
ERROR_INSTALL_FAILED 0x80073CF9 套件安裝失敗。 請連絡軟體廠商。
如需詳細資訊,請檢查 AppXDeployment-Server 事件記錄檔。
ERROR_REMOVE_FAILED 0x80073CFA 套件移除失敗。
針對套件卸載期間發生的失敗,您可能會收到此錯誤。
如需詳細資訊,請參閱 RemovePackageAsync
ERROR_PACKAGE_
ALREADY_EXISTS
0x80073CFB 提供的套件已安裝,並已封鎖套件的重新安裝。
如果安裝與已安裝之套件不相等的套件,您可能會收到此錯誤。 請注意,數字簽名也是套件的一部分。 因此,如果重建或重新簽署套件,它就不會再與先前安裝的套件位相同。 修正此錯誤的兩個可能選項如下:(1) 遞增應用程式的版本號碼,然後重建並重新簽署套件 (2) 在安裝新套件之前,移除系統上每個使用者的舊套件。
ERROR_NEEDS_REMEDIATION 0x80073CFC 無法啟動應用程式。 請嘗試重新安裝應用程式。
ERROR_INSTALL_
PREREQUISITE_FAILED
0x80073CFD 無法滿足指定的安裝必要條件。
ERROR_PACKAGE_
REPOSITORY_CORRUPTED
0x80073CFE 套件存放庫已損毀。
如果此登入機碼所參考的資料夾不存在或損毀,您可能會收到此錯誤:
HKLM\Software\Microsoft\Windows</strong>
CurrentVersion\Appx\PackageRepositoryRoot
若要從此狀態復原,請重新整理您的計算機。
ERROR_INSTALL_
POLICY_FAILURE
0x80073CFF 若要安裝此應用程式,您需要開發人員授權或已啟用側載的系統。
如果套件不符合下列其中一項需求,您可能會收到此錯誤:
  • 應用程式會在具有 Windows 開發人員授權的電腦上,於 Visual Studio 中使用 F5 進行部署。
  • 套件會以 Microsoft 簽章簽署,並部署為 Windows 或 Microsoft Store 的一部分。
  • 套件會使用信任的簽章進行簽署,並安裝在具有開發人員授權的計算機上、已啟用AllowAllTrustedApps原則的已加入網域計算機,或已啟用AllowAllTrustedApps原則的Windows側載授權的電腦。
ERROR_PACKAGE_UPDATING 0x80073D00 無法啟動應用程式,因為它目前正在更新。
ERROR_DEPLOYMENT_
BLOCKED_BY_POLICY
0x80073D01 原則會封鎖套件部署作業。 請連絡您的系統管理員。
可能的原因:
  • 應用程控原則會封鎖套件部署。
  • 「允許特殊配置檔中的部署作業」原則封鎖套件部署。
其中一個可能的原因是漫遊配置檔的需求。 如需在使用者帳戶上設定漫遊使用者策略檔的相關信息,請參閱 部署漫遊使用者策略檔。 如果您的系統上未設定任何原則,您仍然看到此錯誤,或許您已使用暫時配置檔登入。 註銷后再次登入,然後再操作一次。
ERROR_PACKAGES_IN_USE 0x80073D02 無法安裝套件,因為其修改的資源目前正在使用中。
ERROR_RECOVERY_
FILE_CORRUPT
0x80073D03 無法復原套件,因為復原所需的數據已損毀。
ERROR_INVALID_
STAGED_SIGNATURE
0x80073D04 簽章無效。 若要在開發人員模式中註冊,AppxSignature.p7x 和 AppxBlockMap.xml必須有效或不應該存在。
如果您是使用 F5 搭配 Visual Studio 的開發人員,請確定您建置的專案目錄不包含來自舊版套件的簽章或封鎖對應檔案。
ERROR_DELETING_EXISTING_
APPLICATIONDATA_STORE_FAILED
0x80073D05 刪除套件先前現有的應用程式數據時發生錯誤。
如果模擬器正在執行,您可以收到此錯誤。 關閉模擬器。 如果在應用程式資料中開啟檔案,您也可以收到此錯誤(例如,如果您在文字編輯器中開啟記錄檔)。
ERROR_INSTALL_
PACKAGE_DOWNGRADE
0x80073D06 無法安裝套件,因為已安裝此套件的較高版本。
ERROR_SYSTEM_
NEEDS_REMEDIATION
0x80073D07 偵測到系統二進位檔中的錯誤。 若要修正此問題,請嘗試重新整理計算機。
ERROR_APPX_INTEGRITY_
FAILURE_EXTERNAL
0x80073D08 系統上偵測到損毀的非 Windows 二進位檔。
ERROR_RESILIENCY_
FILE_CORRUPT
0x80073D09 無法繼續作業,因為復原所需的數據已損毀。
ERROR_INSTALL_FIREWALL_
SERVICE_NOT_RUNNING
0x80073D0A 無法安裝套件,因為 Windows 防火牆服務未執行。 啟用 Windows 防火牆服務,然後再試一次。
ERROR_PACKAGE_MOVE_FAILED 0x80073D0B 封裝移動作業失敗。
ERROR_INSTALL_VOLUME_
NOT_EMPTY
0x80073D0C 部署作業失敗,因為磁碟區不是空的。
ERROR_INSTALL_VOLUME_
離線
0x80073D0D 部署作業失敗,因為磁碟區已離線。 針對套件更新,磁碟區是指所有套件版本的已安裝磁碟區。
ERROR_INSTALL_VOLUME_
腐敗
0x80073D0E 部署作業失敗,因為指定的磁碟區已損毀。
ERROR_NEEDS_REGISTRATION

0x80073D0F 部署作業失敗,因為必須先註冊指定的應用程式。
ERROR_INSTALL_WRONG_
PROCESSOR_ARCHITECTURE
0x80073D10 部署作業失敗,因為套件是以錯誤的處理器架構為目標。
ERROR_DEV_SIDELOAD_
LIMIT_EXCEEDED
0x80073D11 您已達到此裝置上允許的開發人員側載套件數目上限。 請卸載側載套件,然後再試一次。
ERROR_INSTALL_OPTIONAL_
PACKAGE_REQUIRES_
MAIN_PACKAGE
0x80073D12 安裝此選擇性套件需要主要應用程式套件。 請先安裝主要套件,然後再試一次。
ERROR_PACKAGE_NOT_
SUPPORTED_ON_FILESYSTEM
0x80073D13 此檔案系統不支援此應用程式套件類型。
ERROR_PACKAGE_MOVE_
BLOCKED_BY_STREAMING
0x80073D14 封裝移動作業會遭到封鎖,直到應用程式完成串流。
ERROR_INSTALL_OPTIONAL_
PACKAGE_APPLICATIONID_
NOT_UNIQUE
0x80073D15 主要或另一個選擇性應用程式套件具有與這個選擇性套件相同的應用程式識別碼。 變更選用套件的應用程式識別碼,以避免衝突。
ERROR_PACKAGE_STAGING_
ONHOLD
0x80073D16 此暫存會話已保留,可讓另一個暫存作業優先處理。
ERROR_INSTALL_INVALID_
RELATED_SET_UPDATE
0x80073D17 因為更新的集合無效,所以無法更新相關的集合。 相關集合中的所有套件都必須同時更新。
ERROR_INSTALL_OPTIONAL_
PACKAGE_REQUIRES_MAIN_
PACKAGE_FULLTRUST_CAPABILITY
0x80073D18 具有 FullTrust 進入點的選擇性套件需要主要套件具有 runFullTrust 功能。
ERROR_DEPLOYMENT_BLOCKED_
BY_USER_LOG_OFF
0x80073D19 發生錯誤,因為使用者已註銷。
ERROR_PROVISION_OPTIONAL_
PACKAGE_REQUIRES_MAIN_
PACKAGE_PROVISIONED
0x80073D1A 選擇性套件布建需要布建相依性主要套件。
ERROR_PACKAGES_REPUTATION_
CHECK_FAILED
0x80073D1B 套件失敗了 SmartScreen 信譽檢查
ERROR_PACKAGES_REPUTATION_
CHECK_TIMEDOUT
0x80073D1C SmartScreen 信譽檢查作業逾時。
ERROR_DEPLOYMENT_OPTION_
NOT_SUPPORTED
0x80073D1D 不支援目前的部署選項。
ERROR_APPINSTALLER_
ACTIVATION_BLOCKED
0x80073D1E 由於此應用程式的 .appinstaller 更新設定,因此封鎖啟用。
ERROR_REGISTRATION_FROM_
REMOTE_DRIVE_NOT_SUPPORTED
0x80073D1F 不支援遠端磁碟驅動器。 使用 \server\share 註冊遠端套件。
ERROR_APPX_RAW_
DATA_WRITE_FAILED
0x80073D20 無法處理下載的套件數據並將其寫入磁碟。
ERROR_DEPLOYMENT_BLOCKED_
BY_VOLUME_POLICY_PACKAGE
0x80073D21 由於每個套件系列原則限制非系統磁碟區上的部署,所以已封鎖部署作業。 根據原則,此應用程式必須安裝到系統磁碟驅動器,但未設定為預設值。 在 儲存體 設定中,讓系統磁碟驅動器成為儲存新內容的預設位置,然後重試安裝。
ERROR_DEPLOYMENT_BLOCKED_
BY_VOLUME_POLICY_MACHINE
0x80073D22 因為全機器原則會限制非系統磁碟區上的部署,所以封鎖部署作業。 根據原則,此應用程式必須安裝到系統磁碟驅動器,但未設定為預設值。 在 儲存體 設定中,讓系統磁碟驅動器成為儲存新內容的預設位置,然後重試安裝。
ERROR_DEPLOYMENT_BLOCKED_
BY_PROFILE_POLICY
0x80073D23 部署作業遭到封鎖,因為不允許特殊配置檔部署(特殊配置檔是在使用者註銷后捨棄變更的使用者配置檔)。 請嘗試登入不是特殊配置檔的帳戶。 您可以嘗試註銷並重新登入目前的帳戶,或嘗試登入不同的帳戶。
ERROR_DEPLOYMENT_FAILED_
CONFLICTING_MUTABLE_PACKAGE_
目錄
0x80073D24 部署作業失敗,因為套件的 可變套件目錄發生衝突。 若要安裝此套件,請移除具有衝突可變套件目錄的現有套件。
ERROR_SINGLETON_RESOURCE_
INSTALLED_IN_ACTIVE_USER
0x80073D25 套件安裝失敗,因為已指定單一資源,而已安裝該套件的另一位使用者會登入。 請確定已安裝套件的所有使用中用戶都會註銷,然後重試安裝。
ERROR_DIFFERENT_VERSION_
OF_PACKAGED_SERVICE_INSTALLED
0x80073D26 套件安裝失敗,因為已安裝不同的服務版本。 請嘗試安裝較新版本的套件。
ERROR_SERVICE_EXISTS_
AS_NON_PACKAGED_SERVICE
0x80073D27 套件安裝失敗,因為服務版本存在於 .msix/.appx 套件之外。 請連絡您的軟體廠商。
ERROR_PACKAGED_SERVICE_
REQUIRES_ADMIN_PRIVILEGES
0x80073D28 套件安裝失敗,因為需要系統管理員許可權。 請連絡系統管理員以安裝此套件。
ERROR_REDIRECTION_TO_
DEFAULT_ACCOUNT_NOT_ALLOWED
0x80073D29 套件部署失敗,因為當呼叫端說不要這麼做時,作業會重新導向至預設帳戶。
ERROR_PACKAGE_LACKS_
CAPABILITY_TO_DEPLOY_ON_HOST
0x80073D2A 套件部署失敗,因為套件需要以原生方式鎖定此主機的功能。
ERROR_UNSIGNED_PACKAGE_
INVALID_CONTENT
0x80073D2B 套件部署失敗,因為其內容對未簽署的套件無效。
ERROR_UNSIGNED_PACKAGE_
INVALID_PUBLISHER_NAMESPACE
0x80073D2C 套件部署失敗,因為其發行者不在未簽署的命名空間中。
ERROR_SIGNED_PACKAGE_
INVALID_PUBLISHER_NAMESPACE
0x80073D2D 套件部署失敗,因為其發行者不在已簽署的命名空間中。
ERROR_PACKAGE_EXTERNAL_
LOCATION_NOT_ALLOWED
0x80073D2E 套件部署失敗,因為其發行者不在已簽署的命名空間中。
ERROR_INSTALL_FULLTRUST_
HOSTRUNTIME_REQUIRES_MAIN_
PACKAGE_FULLTRUST_CAPABILITY
0x80073D2F 解析為具有完全信任內容的套件的主機運行時間相依性,需要主要套件具有 runFullTrust 功能。
APPX_E_PACKAGING_INTERNAL 0x80080200 封裝 API 發生內部錯誤。
APPX_E_INTERLEAVING_
NOT_ALLOWED
0x80080201 套件無效,因為它的內容交錯。
APPX_E_RELATIONSHIPS_
NOT_ALLOWED
0x80080202 套件無效,因為它包含 OPC 關聯性。
APPX_E_MISSING_
REQUIRED_FILE
0x80080203 套件無效,因為它遺漏指令清單或區塊對應,或程式代碼完整性檔案存在,但簽章檔案遺失。
請確定套件未遺漏下列一或多個必要檔案:
  • \AppxManifest.xml
  • \AppxBlockMap.xml
如果套件包含 \AppxMetadata\CodeIntegrity.cat,它也必須包含 \AppxSignature.p7x。
APPX_E_INVALID_MANIFEST 0x80080204 套件的AppxManifest.xml檔案無效。
APPX_E_INVALID_BLOCKMAP 0x80080205 套件AppxBlockMap.xml檔案無效。
APPX_E_CORRUPT_CONTENT 0x80080206 無法讀取套件內容,因為它已損毀。
APPX_E_BLOCK_
HASH_INVALID
0x80080207 區塊的計算哈希值不符合區塊對應中儲存的值。
APPX_E_REQUESTED_
RANGE_TOO_LARGE
0x80080208 當轉譯為位元組範圍的區塊時,要求的位元組範圍超過4 GB。
TRUST_E_NOSIGNATURE 0x800B0100 主旨中沒有簽章。
如果套件未簽署或簽章無效,您可能會收到此錯誤。 封裝必須經過簽署才能部署。
CERT_E_UNTRUSTEDROOT 0x800B0109 已處理憑證鏈結,但在信任提供者不信任的跟證書中終止。
請參閱 簽署套件
CERT_E_CHAINING 0x800B010A 憑證鏈結無法建置至受信任的跟證書授權單位。
請參閱 簽署套件
APPX_E_INVALID_
SIP_CLIENT_DATA
0x80080209 用來簽署封裝的SIP_SUBJECTINFO結構未包含必要的數據
APPX_E_INVALID_
KEY_INFO
0x8008020A 用來加密或解密封裝的APPX_KEY_INFO結構包含無效的數據。
APPX_E_INVALID_
CONTENTGROUPMAP
0x8008020B .msix/.appx套件的內容群組對應無效。
APPX_E_INVALID_
APPINSTALLER
0x8008020C 套件 的 .appinstaller 檔案 無效。
APPX_E_DELTA_BASELINE_
VERSION_MISMATCH
0x8008020D 差異套件中的基準套件版本不符合要更新之基準套件中的版本。
APPX_E_DELTA_PACKAGE_
MISSING_FILE
0x8008020E 差異套件遺漏更新套件中的檔案。
APPX_E_INVALID_
DELTA_PACKAGE
0x8008020F 差異套件無效。
APPX_E_DELTA_APPENDED_
PACKAGE_NOT_ALLOWED
0x80080210 目前作業不允許差異附加套件。
APPX_E_INVALID_
PACKAGING_LAYOUT
0x80080211 封裝配置檔案無效。
APPX_E_INVALID_
PACKAGESIGNCONFIG
0x80080212 packageSignConfig 檔案無效。
APPX_E_RESOURCESPRI_
NOT_ALLOWED
0x80080213 當套件指令清單中沒有任何資源元素時,不允許 resources.pri 檔案。
APPX_E_FILE_
COMPRESSION_MISMATCH
0x80080214 基準和更新套件中檔案的壓縮狀態不符。
APPX_E_INVALID_
PAYLOAD_PACKAGE_EXTENSION
0x80080215 目標為較舊平台的承載套件不允許非.appx延伸模組。
APPX_E_INVALID_
ENCRYPTION_EXCLUSION_FILE_LIST
0x80080216 encryptionExclusionFileList 檔案無效。

應用程式未啟動,且其名稱呈現暗灰色

在執行 Windows 10 或更新版本的電腦上,您無法啟動某些應用程式,且應用程式名稱會呈現暗灰色。

Some application names appear dimmed in the Start menu

當您嘗試選取暗灰色名稱來開啟應用程式時,您可能會收到下列其中一個錯誤訊息:

應用程式名稱發生問題<。> 請連絡系統管理員以修復或重新安裝
錯誤:此應用程式無法開啟

此外,下列事件項目會記錄在 Applications and Services\Microsoft\Windows\Apps 下的 “Microsoft-Windows-TWinUI/Operational” 記錄中:

記錄名稱:Microsoft-Windows-TWinUI/Operational
來源:Microsoft-Windows-沈浸式殼層
日期: <日期>
事件標識碼:5960
工作類別: (5960)
層級:錯誤
關鍵字:
描述:
啟動應用程式Microsoft.BingNews_8wekyb3d8bbwe!適用於 Windows 的 AppexNews。 啟動合約因為套件處於狀態:已修改,因此封鎖了0x80073CFC錯誤。

原因

發生此問題的原因是已修改應用程式對應套件狀態值的登錄專案。

解決方法

警告

Serious problems might occur if you modify the registry incorrectly by using Registry Editor or by using another method. These problems might require that you reinstall the operating system. Microsoft 不保證可以解決這些問題。 修改登錄的風險請自負。

若要修正此問題:

  1. 啟動註冊表編輯器,然後找出 HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\AppModel\StateChange\PackageList 子機碼。
  2. 若要備份子機碼數據,請以滑鼠右鍵按兩下 [PackageList],選取 [導出],然後將數據儲存為登錄檔。
  3. 針對事件識別碼 5960 記錄專案中所列的每個應用程式,請遵循下列步驟:
    1. 找出 PackageStatus 專案。
    2. 將 PackageStatus 的值設定為零 (0)。

    注意

    如果 PackageList 底下沒有應用程式的專案,則問題有一些其他原因。 在本文中的範例事件案例中,完整子機碼為 HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\AppModel\StateChange\PackageList\Microsoft.BingNews_8wekyb3d8bbwe!AppexNews\PackageStatus

  4. 重新啟動電腦。

取得其他說明

如果您需要進一步協助解決您在封裝、部署或查詢 Windows 應用程式套件 (.msix/.appx) 作為開發人員時遇到的問題,請參閱這些額外的開發人員支持資源。