Forum Discussion
Nov 13, 2022
COM Free Registration for universal marshaller: HOW?
I am packaging an application using the Microsoft MSIX Packaging Tool (MMPT) that has a com server as part of the package that uses the universal marshaller built into the OS, and uses "registration free COM" (i.e. manifest oriented registration of the COM).
The packaging tool ignores registration free com and does not add COM entries into the AppXManifest. Deploying/Testing the app it appears that when the application is run in the container this form of registration is not picked up causing the app to fail when it attempts to use the COM Server.
Manually adding the COM registration into the AppXManifest file has been unsuccessful so far. Adding in the COM server as an application extension is straightforward, but then requires a package extension for the interface.
- If I add the Interface and set useUniversalMarshaller to true and leave off the TypeLib and ProxyStub. The MMPT validates the AppXManifest and creates the package, however AppInstaller then complains that the AppXManifest is invalid due to the missing TypeLib.
- If I add the Interface and set useUniversalMarshaller to true and add the typelib (using 00020424-0000-0000-C000-00000000000046) then the MMPT complains that the ProxyStub for this typelib guid isn't defined and will not generate the package.
Since this ProxyStub is built into the OS and not part of the package, how should this be registered, or perhaps how is this overall situation to be handled?
No RepliesBe the first to reply