Problem on generating .tlb from .NET 2005 assembly
Hi all,
The type library is an important file for COM interop, without which unmanaged code can't interact with managed code.
When I use .NET 2003, I can sucessfully generate .tlb file from a .NET Dll (built with /clr:oldsyntax switch) - using tlbexp or Regasm /tlb.
The above technique never works for .NET 2005. (Both for Beta1 & Beta2).
The thing is that a .tlb file gets generated with an empty library statement block, ano NO types are exported in the .tlb file.
We tried it several time in our HCLT lab using the tlbexp or the Regasm utility which comes with .NET 2005. We also tried with the older vertion of the regasm or tlbexp - but nothing works.
Where is the problem ? is it in the latest version of the IDE or with the latest tlbexp or regasm utility?
Please advice
Sincerely
Sanjoy Sinharoy
HCLT - INDIA
[880 byte] By [
ssroy] at [2007-12-16]
Could you please open a bug through Ladybug with the repro so that we can take a deeper look at the problem. From your description, it sounds like a breaking change, but without the specific typelib I cannot tell whether your expectation is wrong or it is a bug in our system.
Thanks.
Yiru
Hi Sanjoy,
Did you already report the bug? We have exactly the same problem here with beta 2 when exposing C# classes to COM Interop. Whatever the class we compile, ("Register for COM Interop" option checked), the generated typelib is always empty and we systematically get the following message after the compilation step in VS 2005:
[the DLL] does not contain any types that can be registered for COM Interop
which is obviously wrong. All compiled classes are complying with the COM Interop rules for exposing .Net components to COM. All MS samples fail to generate a valid typelib.