Hi - I'm trying to call our existing COM software components from a new .NET
2005 project I am writing. The COM stuff in question is a DLL written in VB6.
Adding this as a COM reference in the IDE project Properties dialog produces
an interop DLL as expected, but as my .NET assemby is "strong named" I get
the following error:
Unable to emit assembly: Referenced assembly 'Interop....' does not have a
strong name.
In accordance with the documentation I have run sn.exe to generate a keyfile
for the COM DLL, and have then run tlbimp.exe to generate a strong-named
Interop DLL :
sn -k mySnkFile.snk
tlbimp MyCOMDLL.dll /out:Interop.MyCOMDLL.dll /keyfile:mySnkFile.snk
Then in .NET IDE project Properties dialog I add a reference to the new
interop DLL.
This should now work - BUT I am getting another error to do with the class I
am trying to instantiate (MyCOMDLL.CRouter) :
Implementing class 'Interop.MyCOMDLL.CRouterClass' for interface
'Interop.MyCOMDLL.CRouter' cannot be found.
- When I look at the interop DLL in object browser, I can quite plainly see
the requested implementing class CRouterClass though.
Please help !

Signature
Jamie Clancy
Ulysses Systems, London
Jamie_C - 10 Nov 2005 11:10 GMT
Well - seeing as I've had no response whatsoever, I've raised this issue with
MS Support. I will post their findings when I get a reply.

Signature
Jamie Clancy
Ulysses Systems, London
> Hi - I'm trying to call our existing COM software components from a new .NET
> 2005 project I am writing. The COM stuff in question is a DLL written in VB6.
[quoted text clipped - 24 lines]
>
> Please help !