I'd like to use manifests to specify a dependency on a COM server (reg-free COM).
The consumer application will mostly work fine without the COM server - only something like 1,7% of its functionality uses the COM server. So with plain old regsvr32
it would start and work fine until the user would do something that would trigger CoCreateInstance()
call and at that point the consumer would get an error message.
Now I've played with manifests for a while and it looks like the consumer wouldn't even start unless the COM server assembly it depends on is present in the file system. That's no good.
I added the "addiditional manifest" with the following content:
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0">
<dependency>
<dependentAssembly>
<assemblyIdentity
type="win32"
name="TheComServer.X"
version="1.0.0.0"/>
</dependentAssembly>
</dependency>
</assembly>
Is there a way to use reg-free COM with manifests and make the dependency optional - so that the consumer program starts and works fine until CoCreateInstance()
is actually called?