I'm evaluating AdvancedInstaller to replace our old customized InnoSetup.
We want to take advantage of the new features of sparse packages on Windows 11.
In particular, we implemented IContextMenu in a DLL (registered as COM), but now we want to promote it to the Windows 11 context menu (not under "Show more options").
According to Microsoft, we can use sparse packages for giving identity to our application, signing the MSIX installer, and using a custom manifest for enabling features like the old IContextMenu.
Something like this:
<desktop9:Extension Category="windows.fileExplorerClassicContextMenuHandler">
<desktop9:FileExplorerClassicContextMenuHandler>
<desktop9:ExtensionHandler Type="*" Clsid="57fa2d12-d22d-490a-805a-5cb48e84f12a" />
<desktop9:ExtensionHandler Type="Directory" Clsid="57fa2d12-d22d-490a-805a-5cb48e84f12a" />
<desktop9:ExtensionHandler Type="Folder" Clsid="57fa2d12-d22d-490a-805a-5cb48e84f12a" />
<desktop9:ExtensionHandler Type="lnkfile" Clsid="57fa2d12-d22d-490a-805a-5cb48e84f12a" />
</desktop9:FileExplorerClassicContextMenuHandler>
</desktop9:Extension>
I imported our old MSI installer and followed the guide published by Danut Ghiorghita.
I was able to import the MSI and build the new MSI.
But I was unable to build the MSIX.
The latest error messages are:
--------------------------------
Checking builds status
Build required.
[ Build_MSIX_APPX ]
Detecting Signtool compatibility
Sync MSIX/APPX COM data
Detecting MSIX/APPX incompatible resources
WARNING: Package Migration. Package Migration requires the project to have application(s) with 'Windows.FullTrustApplication' entry point. Please check Help page for more details.
ERROR: Invalid Portable Executable (PE) file. 'C:\SVN\AdvancedInstaller\Resources\Beyond Compare 5 5.0.0.26640\Files\Beyond Compare 5\BCompare.exe' is not a valid Portable Executable for the build: 'Build_MSIX_APPX->x64'. Please select a different one.
Build finished because an error was encountered. See Issues pane for more actions.
-------------------------------
Every time I go to issues and fix one of them, it appears again (I'm using the trial version).
Do you have a complete example showing how to do the whole process?
Thanks,
David Izada Rodriguez