LoaderSearchPathOverride and the Manifest

%3CBR%20%2F%3E%3CEXTENSIONS%3E%3CBR%20%2F%3E%3CEXTENSION%20category%3D%22%26quot%3Bwindows.loaderSearchPathOverride%26quot%3B%22%3E%3CBR%20%2F%3E%3CLOADERSEARCHPATHOVERRIDE%3E%3CBR%20%2F%3E%3CLOADERSEARCHPATHENTRY%20folderpath%3D%22%26quot%3BVFS%5CAppVPackageDrive%5CTestAppPathAlternate%26quot%3B%2F%22%3E%3CBR%20%2F%3E%3C%2FLOADERSEARCHPATHENTRY%3E%3CBR%20%2F%3E%3C%2FLOADERSEARCHPATHOVERRIDE%3E%3CBR%20%2F%3E%3C%2FEXTENSION%3E%3CBR%20%2F%3E%3C%2FEXTENSIONS%3E%3CP%3E%3C%2FP%3E%0A%3CP%3E%26nbsp%3B%3C%2FP%3E%0A%3CP%3E1)%20Would%20it%20be%20correct%20to%20assume%20that%20this%20should%20be%20implemented%20as%20an%20application%20extension%20against%20the%20application%20that%20requires%20these%20paths%3F%3C%2FP%3E%0A%3CP%3E%26nbsp%3B%3C%2FP%3E%0A%3CP%3E2)%20if%20so%2C%20how%20would%20one%20assign%20to%20an%20exe%20in%20the%20package%20that%20is%20not%20exposed%20as%20an%20application%20entry%20(since%20it%20appears%20that%20all%20application%20entries%20in%20the%20manifest%20are%20required%20to%20have%20a%20VisualElements%2C%20which%20leads%20to%20a%20start%20menu%20item%20not%20desired)%3F%3C%2FP%3E%0A%3CP%3E%26nbsp%3B%3C%2FP%3E%3CLINGO-SUB%20id%3D%22lingo-sub-2030851%22%20slang%3D%22en-US%22%3ELoaderSearchPathOverride%20and%20the%20Manifest%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-2030851%22%20slang%3D%22en-US%22%3E%3CP%3ECurrent%20documentation%20on%20this%20Uap6%20schema%20element%20appears%20at%20odds%20with%20the%20schema%20validation.%3C%2FP%3E%0A%3CP%3E%26nbsp%3B%3C%2FP%3E%0A%3CP%3E%3CA%20href%3D%22https%3A%2F%2Fdocs.microsoft.com%2Fen-us%2Fuwp%2Fschemas%2Fappxpackage%2Fuapmanifestschema%2Felement-extension%22%20target%3D%22_blank%22%20rel%3D%22noopener%20noreferrer%22%3EExtension%20(in%20Package%2FExtensions)%20(Windows%26nbsp%3B10)%20-%20Windows%20UWP%20applications%20%7C%20Microsoft%20Docs%3C%2FA%3E%3C%2FP%3E%0A%3CP%3Eand%3C%2FP%3E%0A%3CP%3E%3CA%20href%3D%22https%3A%2F%2Fdocs.microsoft.com%2Fen-us%2Fuwp%2Fschemas%2Fappxpackage%2Fuapmanifestschema%2Felement-uap6-loadersearchpathoverride%22%20target%3D%22_blank%22%20rel%3D%22noopener%20noreferrer%22%3Euap6%3ALoaderSearchPathOverride%20-%20Windows%20UWP%20applications%20%7C%20Microsoft%20Docs%3C%2FA%3E%3C%2FP%3E%0A%3CP%3E%26nbsp%3B%3C%2FP%3E%0A%3CP%3EBoth%20claim%20that%20the%20extension%20should%20be%20added%20as%20a%20package%20extension%20instead%20of%20an%20application%20extension.%26nbsp%3B%20The%20following%20is%20from%20a%20manifest%20that%20produces%20an%20invalid%20document%20when%20validated%20against%20the%20schemas%3A%3C%2FP%3E%0A%3CP%3E%26nbsp%3B%3C%2FP%3E%0A%3CP%3E...%3C%2FP%3E%0A%3CP%3E%3C%2FP%3E%3C%2FLINGO-BODY%3E%3CBR%20%2F%3E%3CEXTENSIONS%3E%3CBR%20%2F%3E%3CEXTENSION%20category%3D%22%26quot%3Bwindows.loaderSearchPathOverride%26quot%3B%22%3E%3CBR%20%2F%3E%3CLOADERSEARCHPATHOVERRIDE%3E%3CBR%20%2F%3E%3CLOADERSEARCHPATHENTRY%20folderpath%3D%22%26quot%3BVFS%5CAppVPackageDrive%5CTestAppPathAlternate%26quot%3B%2F%22%3E%3CBR%20%2F%3E%3C%2FLOADERSEARCHPATHENTRY%3E%3CBR%20%2F%3E%3C%2FLOADERSEARCHPATHOVERRIDE%3E%3CBR%20%2F%3E%3C%2FEXTENSION%3E%3CBR%20%2F%3E%3C%2FEXTENSIONS%3E%3CP%3E%3C%2FP%3E%0A%3CP%3E%3CSPAN%20class%3D%22lia-inline-image-display-wrapper%20lia-image-align-inline%22%20image-alt%3D%22Capture.PNG%22%20style%3D%22width%3A%20417px%3B%22%3E%3CIMG%20src%3D%22https%3A%2F%2Ftechcommunity.microsoft.com%2Ft5%2Fimage%2Fserverpage%2Fimage-id%2F243993i7F1EB34398DEDEF1%2Fimage-size%2Flarge%3Fv%3D1.0%26amp%3Bpx%3D999%22%20role%3D%22button%22%20title%3D%22Capture.PNG%22%20alt%3D%22Capture.PNG%22%20%2F%3E%3C%2FSPAN%3E%3C%2FP%3E%0A%3CP%3E1)%20Would%20it%20be%20correct%20to%20assume%20that%20this%20should%20be%20implemented%20as%20an%20application%20extension%20against%20the%20application%20that%20requires%20these%20paths%3F%3C%2FP%3E%0A%3CP%3E%26nbsp%3B%3C%2FP%3E%0A%3CP%3E2)%20if%20so%2C%20how%20would%20one%20assign%20to%20an%20exe%20in%20the%20package%20that%20is%20not%20exposed%20as%20an%20application%20entry%20(since%20it%20appears%20that%20all%20application%20entries%20in%20the%20manifest%20are%20required%20to%20have%20a%20VisualElements%2C%20which%20leads%20to%20a%20start%20menu%20item%20not%20desired)%3F%3C%2FP%3E%0A%3CP%3E%26nbsp%3B%3C%2FP%3E%3CBR%20%2F%3E%3CP%3E%3C%2FP%3E%3CLINGO-SUB%20id%3D%22lingo-sub-2031188%22%20slang%3D%22en-US%22%3ERe%3A%20LoaderSearchPathOverride%20and%20the%20Manifest%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-2031188%22%20slang%3D%22en-US%22%3E%3CP%3E%3CA%20href%3D%22https%3A%2F%2Ftechcommunity.microsoft.com%2Ft5%2Fuser%2Fviewprofilepage%2Fuser-id%2F146612%22%20target%3D%22_blank%22%3E%40TIMOTHY%20MANGAN%3C%2FA%3E%26nbsp%3BUpdate%3A%3C%2FP%3E%0A%3CP%3E%26nbsp%3B%3C%2FP%3E%0A%3CP%3EI%20can%20confirm%20that%20the%20following%20sequence%20validates%20against%20the%20schema%2C%20and%20that%20makeappx%20creates%20a%20package%2C%20however%20the%20package%20fails%20to%20install%20via%20AppInstaller%20(20H2).%26nbsp%3B%20Event%20logs%20show%20error%2070490%20(element%20not%20found).%3C%2FP%3E%0A%3CP%3E%26nbsp%3B%3C%2FP%3E%0A%3CP%3E...%3C%2FP%3E%0A%3CP%3E%3CEXTENSIONS%3E%3CBR%20%2F%3E%3CEXTENSION%20category%3D%22%26quot%3Bwindows.loaderSearchPathOverride%26quot%3B%22%3E%3CBR%20%2F%3E%3CLOADERSEARCHPATHOVERRIDE%3E%3CBR%20%2F%3E%3CLOADERSEARCHPATHENTRY%20folderpath%3D%22%26quot%3BVFS%5CAppVPackageDrive%5CTestAppPathAlternate%26quot%3B%2F%22%3E%3CBR%20%2F%3E%3C%2FLOADERSEARCHPATHENTRY%3E%3CBR%20%2F%3E%3C%2FLOADERSEARCHPATHOVERRIDE%3E%3CBR%20%2F%3E%3C%2FEXTENSION%3E%3CBR%20%2F%3E%3C%2FEXTENSIONS%3E%3CBR%20%2F%3E%3C%2FP%3E%3C%2FLINGO-BODY%3E%3CBR%20%2F%3E%3CP%3E%3C%2FP%3E
MVP

Current documentation on this Uap6 schema element appears at odds with the schema validation.

 

Extension (in Package/Extensions) (Windows 10) - Windows UWP applications | Microsoft Docs

and

uap6:LoaderSearchPathOverride - Windows UWP applications | Microsoft Docs

 

Both claim that the extension should be added as a package extension instead of an application extension.  The following is from a manifest that produces an invalid document when validated against the schemas and/or attempted to build a package using makeappx:

 

...

</Applications>
<Extensions>
<Extension Category="windows.loaderSearchPathOverride">
<uap6:LoaderSearchPathOverride>
<uap6:LoaderSearchPathEntry FolderPath="VFS\AppVPackageDrive\TestAppPathAlternate"/>
</uap6:LoaderSearchPathOverride>
</Extension>
</Extensions>
</Package>

Capture.PNG

1) Would it be correct to assume that this should be implemented as an application extension against the application that requires these paths?

 

2) if so, how would one assign to an exe in the package that is not exposed as an application entry (since it appears that all application entries in the manifest are required to have a VisualElements, which leads to a start menu item not desired)?

 

1 Reply

@TIMOTHY MANGAN Update:

 

I can confirm that the following sequence validates against the schema, and that makeappx creates a package, however the package fails to install via AppInstaller (20H2).  Event logs show error 70490 (element not found).

 

...

<Extensions>
<uap6:Extension Category="windows.loaderSearchPathOverride">
<uap6:LoaderSearchPathOverride>
<uap6:LoaderSearchPathEntry FolderPath="VFS\AppVPackageDrive\TestAppPathAlternate"/>
</uap6:LoaderSearchPathOverride>
</uap6:Extension>
</Extensions>
</Application>
</Applications>
</Package>