Download

Appx manifest not found or is invalid error when packaging for Microsoft HoloLens.

Description:
When attempting to package project for the HoloLens, I am greeted with an error claiming that the packager was unable to generate a PRI (package resource index) and that the Appx manifest could not be found or is invalid. This issue happens when attempting to package the Microsoft/Unreal chess tutorial as well as creating a new project from scratch. This issue has been observed on 3 computers, while a 4th computer was somehow able to successfully complete a build. When taking the .PRI files from the PC that is successfully able to package and adding them into the Binaries/HoloLens directory of my project (as well as the chess tutorial project) I am suddenly able to build and package without any issues. The problem is that this is not a sustainable method of packaging and I am unsure of what is the root cause of this issue.

Steps to reproduce:

  1. Open Unreal Project and edit/modify project
  2. Click file -> Package Project -> Hololens
  3. Allow the process to proceed

Results:
UATHelper: Packaging (HoloLens): ERROR: ERROR: PRI191: 0x8007007e - Appx manifest not found or is invalid. Please ensure well-formed manifest file is present. Or specify an index name with /in switch.
PackagingResults: Error: ERROR: PRI191: 0x8007007e - Appx manifest not found or is invalid. Please ensure well-formed manifest file is present. Or specify an index name with /in switch.
UATHelper: Packaging (HoloLens): ERROR: Failed to generate Package Resource Index file. See log for details.
PackagingResults: Error: Failed to generate Package Resource Index file. See log for details.

Expected:
Successful Build and packaging for application on the windows UWP/WinRT platform.

Affects: Unreal Version:
[INDENT=2]4.26.x, 4.25.x (possibly other versions as well)[/INDENT]
Windows SDK:
[INDENT=2]10.0.18362.0, 10.0.9041.0 (possibly other versions as well)[/INDENT]

Platforms:
Microsoft HoloLens 2

The systems that are failing:
1 Dell Dev Machine with no security/admin/network restrictions
Windows 10 Pro
OS Build: 19042.746
CPU: Intel i9
Windows Kit SDK: 10.0.18362.0

And

2 Dell Laptops (Corporate devices that have security restrictions, but nothing that should impact development)
Windows 10 Enterprise
OS Build: 17763.1697 (1809)
CPU: Intel i7 9th Gen
Windows Kit SDK: 10.0.18362.0

The System that’s succeeding:
Dev Machine with no security/admin/network restrictions
Windows 10 Pro
OS Build: 18363.1316
CPU: AMD FX-8350
Windows Kit SDK: 10.0.18362.0

The main differences:

  • Windows 10 OS build is different
  • The failing machines all have Qt installed, the succeeding machine does not (uninstalling Qt Creator does not solve this issue)
  • The Succeeding machine has an AMD processor instead of Intel, also ram size is different

Causes Crash:
No

Additional Notes:

  • Though taking the resource pri files from the working PC and mounting them in the same directory in our non-working projects does fix the solution, there is a concern that our project may change in a way that conflicts with the current pri files and would cause our builds to fail again. Their is also a growing concern that we may not be able to use an automated build system like Jenkins if our project can’t properly package in its current state across any machine.

  • This issue is caused by the makepri.exe that is found in the windows 10 SDK, when attempting to manually run the makepri.exe tool, I am provided with the following error: “ERROR: PRI260: 0xdef00106 - PRI file is invalid.”

  • I am unsure if my issues are stemming from Unreal or the Microsoft SDK, but makepri.exe does not seem to be working on any of my machines.

    Commands used:

    [INDENT=2]“C:\Program Files (x86)\Windows Kits\10\bin\10.0.18362.0\x64\MakePri.exe” createconfig /cf “<Path to Unreal Project>\Binaries\HoloLens\priconfig.xml” /dq en-US /pv 10.0.0 /o
    “C:\Program Files (x86)\Windows Kits\10\bin\10.0.18362.0\x64\MakePri.exe” new /pr “<Path to Unreal Project>” /cf “<Path to Unreal Project>\Binaries\HoloLens\priconfig.xml” /mn “<Path to Unreal Project>\Binaries\HoloLens\AppxManifest_x64.xml” /of “<Path to Unreal Project>\Binaries\HoloLens\resources_x64.pri” /o[/INDENT]