共用方式為


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

0x80073D0F 部署作業失敗,因為必須先註冊指定的應用程式。
ERROR_INSTALL_WRONG_
處理器架構
0x80073D10 部署作業失敗,因為套件是以錯誤的處理器架構為目標。
ERROR_DEV_SIDELOAD_
限制超過
0x80073D11 您已達到此裝置上允許的開發人員側載套件數目上限。 請卸載側載套件,然後再試一次。
安裝選項錯誤
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_
暫停
0x80073D16 此階段性會話已進行,以優先處理另一個階段性作業。
ERROR_INSTALL_INVALID_
RELATED_SET_UPDATE
0x80073D17 因為更新的集合無效,所以無法更新相關的集合。 相關集合中的所有套件都必須同時更新。
ERROR_INSTALL_OPTIONAL_
PACKAGE_REQUIRES_MAIN_
完整信任的功能
0x80073D18 選用套件若具有 FullTrust 進入點,則主要套件需具備 runFullTrust 功能。
No improvements necessary. The translation should remain as it is: ERROR_DEPLOYMENT_BLOCKED_
BY_USER_LOG_OFF
0x80073D19 發生錯誤,因為使用者被註銷。
ERROR_PROVISION_OPTIONAL_
PACKAGE_REQUIRES_MAIN_
PACKAGE_PROVISIONED
0x80073D1A 選擇性套件的布建要求同時布建其相依的主要套件。
錯誤_軟體包信譽_
CHECK_FAILED
0x80073D1B 套件在 SmartScreen 信譽檢查中未通過。
ERROR_PACKAGES_REPUTATION_
CHECK_TIMEDOUT
0x80073D1C SmartScreen 信譽檢查作業 逾時。
ERROR_DEPLOYMENT_OPTION_
不支援
0x80073D1D 不支援目前的部署選項。
ERROR_APPINSTALLER_
ACTIVATION_BLOCKED
0x80073D1E 因為這個應用程式的 .appinstaller 更新設定,導致無法啟用。
ERROR_REGISTRATION_FROM_
遠端驅動器不支持
0x80073D1F 不支援遠端磁碟驅動器。 使用 \server\share 註冊遠端套件。
ERROR_APPX_RAW_
資料寫入失敗
0x80073D20 無法處理下載的套件數據並將其寫入磁碟。
錯誤:部署被阻止
BY_VOLUME_POLICY_PACKAGE
0x80073D21 由於每個套件系列原則限制非系統磁碟區上的部署,所以已封鎖部署作業。 根據原則,此應用程式必須安裝到系統磁碟驅動器,但未設定為預設值。 在 [記憶體設定] 中,讓系統磁碟驅動器成為儲存新內容的預設位置,然後重試安裝。
ERROR_DEPLOYMENT_BLOCKED_
BY_VOLUME_POLICY_MACHINE
0x80073D22 由於全域性機器政策限制在非系統磁碟區上的部署,因此部署操作被阻止。 根據原則,此應用程式必須安裝到系統磁碟驅動器,但未設定為預設值。 在 [記憶體設定] 中,讓系統磁碟驅動器成為儲存新內容的預設位置,然後重試安裝。
ERROR_DEPLOYMENT_BLOCKED_
BY_PROFILE_POLICY
0x80073D23 部署作業遭到封鎖,因為不允許特殊配置檔部署(特殊配置檔是在使用者註銷后捨棄變更的使用者配置檔)。 請嘗試登入一個不是特殊帳戶的帳戶。 您可以嘗試註銷並重新登入目前的帳戶,或嘗試登入不同的帳戶。
ERROR_DEPLOYMENT_FAILED_
衝突的可變封包
目錄
0x80073D24 部署作業失敗,因為套件 的可變套件目錄出現衝突。 若要安裝此套件,請移除具有衝突可變套件目錄的現有套件。
ERROR_SINGLETON_RESOURCE_
INSTALLED_IN_ACTIVE_USER
0x80073D25 套件安裝失敗,因為指定了單一資源,並且已安裝該套件的另一位使用者已登入。 請確保已安裝套件的所有使用中用戶都已登出,然後再次嘗試安裝。
ERROR_DIFFERENT_VERSION_
服務包已安裝
0x80073D26 套件安裝失敗,因為已安裝不同的服務版本。 請嘗試安裝較新版本的套件。
ERROR_SERVICE_EXISTS_
AS_NON_PACKAGED_SERVICE
0x80073D27 套件安裝失敗,因為服務版本存在於 .msix/.appx 套件之外。 請連絡您的軟體廠商。
打包服務錯誤
需要管理員權限
0x80073D28 套件安裝失敗,因為需要系統管理員許可權。 請連絡系統管理員以安裝此套件。
ERROR_REDIRECTION_TO_
DEFAULT_ACCOUNT_NOT_ALLOWED
0x80073D29 套件部署失敗,因為當呼叫端說不要這麼做時,作業會重新導向至預設帳戶。
錯誤_封包缺失_
確保部署到主機的能力
0x80073D2A 套件部署失敗,因為套件需要具備特定能力以原生支援此主機。
ERROR_UNSIGNED_PACKAGE_
INVALID_CONTENT
0x80073D2B 套件部署失敗,因為其內容對未簽署的套件無效。
未簽署套件錯誤_
INVALID_PUBLISHER_NAMESPACE
0x80073D2C 套件部署失敗,因為其發行者不在未簽署的命名空間中。
ERROR_SIGNED_PACKAGE_
INVALID_PUBLISHER_NAMESPACE
0x80073D2D 套件部署失敗,因為其發行者不在已簽署的命名空間中。
ERROR_PACKAGE_EXTERNAL_
位置不允許
0x80073D2E 套件部署失敗,因為其發行者不在已簽署的命名空間中。
FULLTRUST 安裝錯誤
HOSTRUNTIME_REQUIRES_MAIN_
PACKAGE_FULLTRUST_CAPABILITY
0x80073D2F 主機運行時間相依性解析為具有完全信任內容的套件,需要主要套件擁有 runFullTrust 能力
APPX_E_PACKAGING_INTERNAL 0x80080200 封裝 API 發生內部錯誤。
APPX_E_INTERLEAVING_
NOT_ALLOWED
0x80080201 套件無效,因為其內容被交織在一起。
APPX_E_RELATIONSHIPS_
不允許
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_
If translation is necessary, it could be something like: 哈希_無效
0x80080207 區塊的計算雜湊值不符合區塊對應表中儲存的值。
APPX_E_REQUESTED_
範圍過大
0x80080208 當轉譯為位元組範圍的區塊時,要求的位元組範圍超過4 GB。
信任_E_無簽名 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_
版本不匹配
0x8008020D 差異套件中的基準套件版本與要更新的基準套件版本不一致。
APPX_E_DELTA_PACKAGE_
MISSING_FILE
0x8008020E 差異套件遺漏了更新後的套件中的一個檔案。
APPX_E_INVALID_
DELTA_PACKAGE
0x8008020F Delta 套件無效。
APPX_E_DELTA_APPENDED_
PACKAGE_NOT_ALLOWED
0x80080210 目前操作不允許增量附加套件。
APPX_E_INVALID_
包裝佈局
0x80080211 封裝配置檔案無效。
APPX_E_INVALID_
包裝簽名配置
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_
加密排除文件列表
0x80080216 encryptionExclusionFileList 檔案無效。

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

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

[開始] 選單中顯示一些應用程式名稱變暗,

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

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

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

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

原因

發生此問題是因為應用程式相應套件的狀態值的登錄項目已被修改。

解析度

警告

如果您使用註冊表編輯器或使用另一種方法來修改登錄不正確,可能會發生嚴重問題。 這些問題可能需要您重新安裝作業系統。 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) 作為開發人員時遇到的問題,請參閱這些額外的開發人員支持資源。