So, I have a free VB6 registration library referenced by my .NET 3.5 assembly, which ultimately references a .NET 3.5 WinForms application (not sure if it matters, but is included to draw the picture).
I get the error message 'Problem allocating COM link' SomeVBDll ': Registry key 'HKEY_CURRENT_USER\SOFTWARE\CLASSES\CLSID\{dd1d7f58-1d6b-4370-a1b9-05c03816a128}\InProcServer32' is missing value '(Default)'
My initial attempt was to check if this value really exists, and then put it in place. This led to the same message above when compiling.
Has anyone encountered this problem and knew of any resolution?
Thanks in advance. Below is the manifest from the assembly, which directly refers to the VB6 dll.
<assembly xsi:schemaLocation="urn:schemas-microsoft-com:asm.v1 assembly.adaptive.xsd" manifestVersion="1.0" xmlns:asmv1="urn:schemas-microsoft-com:asm.v1" xmlns:asmv2="urn:schemas-microsoft-com:asm.v2" xmlns:asmv3="urn:schemas-microsoft-com:asm.v3" xmlns:dsig="http://www.w3.org/2000/09/xmldsig#" xmlns:co.v1="urn:schemas-microsoft-com:clickonce.v1" xmlns="urn:schemas-microsoft-com:asm.v1" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> <assemblyIdentity name="Native.App.Core" version="1.0.0.0" type="win32" /> <file name="SomeVBDll.dll" asmv2:size="184320"> <hash xmlns="urn:schemas-microsoft-com:asm.v2"> <dsig:Transforms> <dsig:Transform Algorithm="urn:schemas-microsoft-com:HashTransforms.Identity" /> </dsig:Transforms> <dsig:DigestMethod Algorithm="http://www.w3.org/2000/09/xmldsig#sha1" /> <dsig:DigestValue>BWWHQTqNGUupT8xznLoN3jn7S9Y=</dsig:DigestValue> </hash> <typelib tlbid="{755c1df5-d0c5-4e10-a93d-54bf186e8daf}" version="1.0" helpdir="" resourceid="0" flags="HASDISKIMAGE" /> <comClass clsid="{dd1d7f58-1d6b-4370-a1b9-05c03816a128}" threadingModel="Apartment" tlbid="{755c1df5-d0c5-4e10-a93d-54bf186e8daf}" progid="SomeVBDll.MyClass" /> </file> </assembly>
EDIT ///
Marking all classes in the VB6 DLL as MultiUse seems to have solved the problem. While this comes up with a problem that I am facing and still allows me to use the free COM protocol, does anyone know how to get around to installing all the Instancing to MultiUse COM classes?
Wil p
source share