title: Is it possible to test a COM-exposed assembly from .NET?
body: <p>I have a .NET assembly which I have exposed to COM via a tlb file, and an installer which registers the tlb. I have manually checked that the installer works correctly and that COM clients can access the library. So far, so good...</p>
  
  <p>However, I am trying to put together some automated system tests which check that the installer is working correctly. As part of that I have automated the installation on a VM, and I now want to make some calls to the installed COM library to verify that it is working correctly. I originally thought about writing some tests in VB6, but I already have a large suite of tests written in C#, which reference the .NET assembly. I was hoping that I could change these to reference the .tlb, but I get an error when I try this within VS2008:</p>
  
  <p>The ActiveX type library 'blah.tlb' was exported from a .NET assembly and cannot be added as a reference.</p>
  
  <p>Is there any way I can fool VS2008 into allowing me to add this reference, perhaps by editing the tlb file? </p>
  
  <p>Googling hasn't come up with any solutions. All I've found is a Microsoft Connect article stating that this is "By Design": <a href="http://connect.microsoft.com/VisualStudio/feedback/ViewFeedback.aspx?FeedbackID=120882" rel="noreferrer">http://connect.microsoft.com/VisualStudio/feedback/ViewFeedback.aspx?FeedbackID=120882</a></p>