چگونه مشکل خطای Manifest اشتباه در Appx را رفع کنیم؟

چند روز پیش یکی از دوستانم که در نصب بازی Forza Motorsport 6: Apex (که از سایت های ایرانی دانلود شده بود) مشکل خورده بود و از من خواست تا مشکل رو براش حل کنم… بعد کمی بررسی متوجه شدم خیلی ها با این مشکل رو به رو هستن برای همین تصمیم گرفتم تا راه حل رو برای این مشکل خاص و تا حدی بصورت عمومی توضیح بدم.

در این سری از مشکلات کاربران با خطایی مشابه خطای زیر رو به رو می شن، کاربران ابتدا پس از انجام پیش نیاز ها مثل فعال کردن حالت توسعه دهنده و… وارد Powershell می شن و دستور “Add-AppxPackage -Register AppxManifest.xml” رو اجرا می کنند

Add-Appxpackage : Deployment failed with HRESULT: 0x80080204, The Appx package’s manifest is invalid.
error 0x80080204: App manifest validation error: The app manifest XML must be valid: Line 8, Column 467, Reason:
System error: -2142175169.
NOTE: For additional information, look for [ActivityId] b81feecd-1615-0003-def7-1fb81516d201 in the Event Log or us
the command line Get-AppxLog -ActivityID b81feecd-1615-0003-def7-1fb81516d201
At line:1 char:1
+ Add-Appxpackage -Register AppxManifest.xml
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : NotSpecified: (F:Microsoft.Ap…ppxManifest.xml:String) [Add-AppxPackage], Exception
+ FullyQualifiedErrorId : DeploymentError,Microsoft.Windows.Appx.PackageManager.Commands.AddAppxPackageCommand

چیزی که از خطا مشخص هست اینکه فایل AppxManifest.xml صحیح نیست و مشکل داره اکثرا این خطا مربوط به المان <package> داخل کد های این فایل هستش. در لینک زیر لیست کاملی از انواع استاندارد (نمونه های مثالی) Manifest ها وجود داره:

http://github.com/Microsoft/Windows-universal-samples

شما می تونید با مقایسه این کد های با منیفست اشتباه تا حدی به مشکل پی ببرید! اما در مورد بازی Forza Motorsport 6: Apex کافیه فایل AppxManifest.xml با یک ویرایشگر مثل notepad باز کنید و سپس کد بخش package رو بصورت زیر جایگزین کنید:

<?xml version="1.0" encoding="utf-8"?>
<!--    THIS PACKAGE MANIFEST FILE IS GENERATED BY THE BUILD PROCESS.

    Changes to this file will be lost when it is regenerated. To correct errors in this file, edit the source .appxmanifest file.

    For more information on package manifest files, see http://go.microsoft.com/fwlink/?LinkID=241727
-->
<Package xmlns:uap="http://schemas.microsoft.com/appx/manifest/uap/windows10" xmlns:mx="http://schemas.microsoft.com/appx/2013/xbox/manifest" xmlns:build="http://schemas.microsoft.com/developer/appx/2015/build" xmlns:foundation="http://schemas.microsoft.com/appx/manifest/foundation/thresholdpreview" xmlns:m2="http://schemas.microsoft.com/appx/2013/manifest" IgnorableNamespaces="build uap mp" xmlns="http://schemas.microsoft.com/appx/manifest/foundation/windows10">
  <Identity Name="Microsoft.ApexPG" ProcessorArchitecture="x64" Publisher="CN=Microsoft Corporation, O=Microsoft Corporation, L=Redmond, S=Washington, C=US" Version="2.6.15.0" />
  <Properties>
    <DisplayName>Forza Motorsport 6: Apex</DisplayName>
    <PublisherDisplayName>Microsoft Studios</PublisherDisplayName>
    <Description>Forza Motorsport 6: Apex</Description>
    <Logo>StoreLogoUAP.png</Logo>
  </Properties>
  <Resources>
    <Resource Language="en" />
    <Resource Language="cs" />
    <Resource Language="de" />
    <Resource Language="en-GB" />
    <Resource Language="en-AU" />
    <Resource Language="en-CA" />
    <Resource Language="en-IE" />
    <Resource Language="en-NZ" />
    <Resource Language="es" />
    <Resource Language="es-MX" />
    <Resource Language="fr" />
    <Resource Language="fr-CA" />
    <Resource Language="hu" />
    <Resource Language="it" />
    <Resource Language="ja" />
    <Resource Language="ko" />
    <Resource Language="nl" />
    <Resource Language="pl" />
    <Resource Language="pt" />
    <Resource Language="ru" />
    <Resource Language="zh-Hant" />
    <Resource Language="zh-Hans" />
  </Resources>
  <Dependencies>
    <TargetDeviceFamily Name="Windows.Universal" MinVersion="10.0.14393.0" MaxVersionTested="10.0.14393.0" />
    <PackageDependency Name="Microsoft.VCLibs.140.00" Publisher="CN=Microsoft Corporation, O=Microsoft Corporation, L=Redmond, S=Washington, C=US" MinVersion="14.0.22929.0" />
  </Dependencies>
  <Capabilities>
    <Capability Name="internetClientServer" />
    <Capability Name="privateNetworkClientServer" />
    <Capability Name="codeGeneration" />
    <DeviceCapability Name="humaninterfacedevice">
      <Device Id="any">
        <Function Type="usage:0001 0004" />
        <Function Type="usage:0001 0005" />
      </Device>
    </DeviceCapability>
  </Capabilities>
  <Extensions>
    <Extension Category="windows.activatableClass.inProcessServer">
      <InProcessServer>
        <Path>Microsoft.Xbox.Services.dll</Path>
        <ActivatableClass ActivatableClassId="Microsoft.Xbox.Services.Multiplayer.MultiplayerGetSessionsRequest" ThreadingModel="both" />
        <ActivatableClass ActivatableClassId="Microsoft.Xbox.Services.Multiplayer.MultiplayerSessionReference" ThreadingModel="both" />
        <ActivatableClass ActivatableClassId="Microsoft.Xbox.Services.Multiplayer.MultiplayerSessionCapabilities" ThreadingModel="both" />
        <ActivatableClass ActivatableClassId="Microsoft.Xbox.Services.Multiplayer.MultiplayerQualityOfServiceMeasurements" ThreadingModel="both" />
        <ActivatableClass ActivatableClassId="Microsoft.Xbox.Services.Multiplayer.MultiplayerSession" ThreadingModel="both" />
        <ActivatableClass ActivatableClassId="Microsoft.Xbox.Services.Presence.PresenceData" ThreadingModel="both" />
        <ActivatableClass ActivatableClassId="Microsoft.Xbox.Services.XboxLiveContext" ThreadingModel="both" />
        <ActivatableClass ActivatableClassId="Microsoft.Xbox.Services.UserStatistics.RequestedStatistics" ThreadingModel="both" />
        <ActivatableClass ActivatableClassId="Microsoft.Xbox.Services.XboxLiveHttpCall" ThreadingModel="both" />
        <ActivatableClass ActivatableClassId="Microsoft.Xbox.Services.TitleStorage.TitleStorageBlobMetadata" ThreadingModel="both" />
        <ActivatableClass ActivatableClassId="Microsoft.Xbox.Services.HttpCallSettings" ThreadingModel="both" />
        <ActivatableClass ActivatableClassId="Microsoft.Xbox.Services.System.XboxLiveUser" ThreadingModel="both" />
        <ActivatableClass ActivatableClassId="Microsoft.Xbox.Services.System.TitleCallableUI" ThreadingModel="both" />
      </InProcessServer>
    </Extension>
    <Extension Category="windows.activatableClass.inProcessServer">
      <InProcessServer>
        <Path>GameControllerInfo.dll</Path>
        <ActivatableClass ActivatableClassId="GameControllerInfo.GameControllerInfo" ThreadingModel="both" />
      </InProcessServer>
    </Extension>
  </Extensions>
  <Applications>
    <Application Id="forzamotorsportapex" Executable="ForzaMotorsportApex.exe" EntryPoint="Forza.App">
      <uap:VisualElements DisplayName="ms-resource:Title" Description="ms-resource:Description" BackgroundColor="#000000" Square150x150Logo="Square150x150Logo.png" Square44x44Logo="Square44x44Logo.png">
        <uap:DefaultTile Wide310x150Logo="Wide310x150Logo.png" Square310x310Logo="Square310x310Logo.png">
          <uap:ShowNameOnTiles>
            <uap:ShowOn Tile="square150x150Logo" />
            <uap:ShowOn Tile="wide310x150Logo" />
            <uap:ShowOn Tile="square310x310Logo" />
          </uap:ShowNameOnTiles>
        </uap:DefaultTile>
        <uap:SplashScreen BackgroundColor="#000000" Image="SplashScreen.png" />
      </uap:VisualElements>
      <Extensions>
        <uap:Extension Category="windows.protocol">
          <uap:Protocol Name="forzamotorsportapex" />
        </uap:Extension>
      </Extensions>
    </Application>
  </Applications>
</Package>
<?xml version="1.0" encoding="utf-8"?>
<!--    THIS PACKAGE MANIFEST FILE IS GENERATED BY THE BUILD PROCESS.

    Changes to this file will be lost when it is regenerated. To correct errors in this file, edit the source .appxmanifest file.

    For more information on package manifest files, see http://go.microsoft.com/fwlink/?LinkID=241727
-->
<Package
  xmlns="http://schemas.microsoft.com/appx/manifest/foundation/windows10"
  xmlns:mp="http://schemas.microsoft.com/appx/2014/phone/manifest"
  xmlns:uap="http://schemas.microsoft.com/appx/manifest/uap/windows10"
IgnorableNamespaces="uap mp">
  <Identity Name="Microsoft.ApexPG" ProcessorArchitecture="x64" Publisher="CN=Microsoft Corporation, O=Microsoft Corporation, L=Redmond, S=Washington, C=US" Version="2.6.15.0" />
  <Properties>
    <DisplayName>Forza Motorsport 6: Apex</DisplayName>
    <PublisherDisplayName>Microsoft Studios</PublisherDisplayName>
    <Description>Forza Motorsport 6: Apex</Description>
    <Logo>StoreLogoUAP.png</Logo>
  </Properties>
  <Resources>
    <Resource Language="en" />
    <Resource Language="cs" />
    <Resource Language="de" />
    <Resource Language="en-GB" />
    <Resource Language="en-AU" />
    <Resource Language="en-CA" />
    <Resource Language="en-IE" />
    <Resource Language="en-NZ" />
    <Resource Language="es" />
    <Resource Language="es-MX" />
    <Resource Language="fr" />
    <Resource Language="fr-CA" />
    <Resource Language="hu" />
    <Resource Language="it" />
    <Resource Language="ja" />
    <Resource Language="ko" />
    <Resource Language="nl" />
    <Resource Language="pl" />
    <Resource Language="pt" />
    <Resource Language="ru" />
    <Resource Language="zh-Hant" />
    <Resource Language="zh-Hans" />
  </Resources>
  <Dependencies>
    <TargetDeviceFamily Name="Windows.Universal" MinVersion="10.0.0.0" MaxVersionTested="10.0.0.0" />
    <PackageDependency Name="Microsoft.VCLibs.140.00" Publisher="CN=Microsoft Corporation, O=Microsoft Corporation, L=Redmond, S=Washington, C=US" MinVersion="14.0.0.0" />
  </Dependencies>
  <Capabilities>
    <Capability Name="internetClientServer" />
    <Capability Name="privateNetworkClientServer" />
    <Capability Name="codeGeneration" />
    <DeviceCapability Name="humaninterfacedevice">
      <Device Id="any">
        <Function Type="usage:0001 0004" />
        <Function Type="usage:0001 0005" />
      </Device>
    </DeviceCapability>
  </Capabilities>
  <Extensions>
    <Extension Category="windows.activatableClass.inProcessServer">
      <InProcessServer>
        <Path>Microsoft.Xbox.Services.dll</Path>
        <ActivatableClass ActivatableClassId="Microsoft.Xbox.Services.Multiplayer.MultiplayerGetSessionsRequest" ThreadingModel="both" />
        <ActivatableClass ActivatableClassId="Microsoft.Xbox.Services.Multiplayer.MultiplayerSessionReference" ThreadingModel="both" />
        <ActivatableClass ActivatableClassId="Microsoft.Xbox.Services.Multiplayer.MultiplayerSessionCapabilities" ThreadingModel="both" />
        <ActivatableClass ActivatableClassId="Microsoft.Xbox.Services.Multiplayer.MultiplayerQualityOfServiceMeasurements" ThreadingModel="both" />
        <ActivatableClass ActivatableClassId="Microsoft.Xbox.Services.Multiplayer.MultiplayerSession" ThreadingModel="both" />
        <ActivatableClass ActivatableClassId="Microsoft.Xbox.Services.Presence.PresenceData" ThreadingModel="both" />
        <ActivatableClass ActivatableClassId="Microsoft.Xbox.Services.XboxLiveContext" ThreadingModel="both" />
        <ActivatableClass ActivatableClassId="Microsoft.Xbox.Services.UserStatistics.RequestedStatistics" ThreadingModel="both" />
        <ActivatableClass ActivatableClassId="Microsoft.Xbox.Services.XboxLiveHttpCall" ThreadingModel="both" />
        <ActivatableClass ActivatableClassId="Microsoft.Xbox.Services.TitleStorage.TitleStorageBlobMetadata" ThreadingModel="both" />
        <ActivatableClass ActivatableClassId="Microsoft.Xbox.Services.HttpCallSettings" ThreadingModel="both" />
        <ActivatableClass ActivatableClassId="Microsoft.Xbox.Services.System.XboxLiveUser" ThreadingModel="both" />
        <ActivatableClass ActivatableClassId="Microsoft.Xbox.Services.System.TitleCallableUI" ThreadingModel="both" />
      </InProcessServer>
    </Extension>
    <Extension Category="windows.activatableClass.inProcessServer">
      <InProcessServer>
        <Path>GameControllerInfo.dll</Path>
        <ActivatableClass ActivatableClassId="GameControllerInfo.GameControllerInfo" ThreadingModel="both" />
      </InProcessServer>
    </Extension>
  </Extensions>
  <Applications>
    <Application Id="forzamotorsportapex" Executable="ForzaMotorsportApex.exe" EntryPoint="Forza.App">
      <uap:VisualElements DisplayName="ms-resource:Title" Description="ms-resource:Description" BackgroundColor="#000000" Square150x150Logo="Square150x150Logo.png" Square44x44Logo="Square44x44Logo.png">
        <uap:DefaultTile Wide310x150Logo="Wide310x150Logo.png" Square310x310Logo="Square310x310Logo.png">
          <uap:ShowNameOnTiles>
            <uap:ShowOn Tile="square150x150Logo" />
            <uap:ShowOn Tile="wide310x150Logo" />
            <uap:ShowOn Tile="square310x310Logo" />
          </uap:ShowNameOnTiles>
        </uap:DefaultTile>
        <uap:SplashScreen BackgroundColor="#000000" Image="SplashScreen.png" />
      </uap:VisualElements>
      <Extensions>
        <uap:Extension Category="windows.protocol">
          <uap:Protocol Name="forzamotorsportapex" />
        </uap:Extension>
      </Extensions>
    </Application>
  </Applications>
</Package>

با کد دوم جایگزین کنید تا مشکل نصب رفع شود. 🙂 موفق باشید.

محمد عنبرستانیمشاهده نوشته ها

Avatar for محمد عنبرستانی

توسعه دهنده و طراح وب و همچنین مهندس عمران هستم و البته به موضوعاتی مثل برندینگ، طراحی آرم (لوگو)، رسم و نقاشی، معماری و سایر هنر های بصری علاقه مند هستم! اینجا سعی می کنم اطلاعات مفید و آموزنده که در زمینه کاریم و علایقم هستن رو با شما به اشتراک بگذارم.

9 دیدگاه

دیدگاهتان را بنویسید