Add TLB file to deployment project

Giganews Newsgroups
Subject: Add TLB file to deployment project
Posted by:  Oleg.Ogur…@gmail.com
Date: 31 May 2006

Hi there,

I have a class library project that exposes itself to COM.
I'm trying to deploy it.

I'm wondering why when I add a "Primary output from MyComProject
(Active)", only .dll is added as part of the output. When MyComProject
is compiled, the output folder (bin\Release) contains both .dll and
.tlb files. Shouldn't .tlb be included as part of primary output too?

.tlb is a required file. COM interop won't work without it on the
target machine, i.e. COM will not see it.

I've manually added the .tlb to the setup project, and things started
working on the target machine.

However, now I have another issue. My solution is under Source Safe
2005. VS.NET automatically checks .tlb file into the repository every
time I check in. This makes the .tlb under bin\Release read-only, and
next time I try to compile the project, I get:

Error    1    Cannot register assembly
"C:\Development\MySolution\MyComProject\bin\Release\MyComProject.dll" -
access denied. Access is denied. (Exception from HRESULT: 0x80070005
(E_ACCESSDENIED))    MyComProject

Any ideas/suggestions are gladly appreciated.

-Oleg.

Replies