.NET COM Interop on Windows 7 64Bit gives me a headache
Posted
by Kevin Stumpf
on Stack Overflow
See other posts from Stack Overflow
or by Kevin Stumpf
Published on 2010-05-01T10:51:24Z
Indexed on
2010/05/01
10:57 UTC
Read the original article
Hit count: 616
Hey guys,
.NET COM interop so far always has been working quite nicely. Since I upgraded to Windows 7 I don't get my .NET COM objects to work anymore.
My COM object is as easy as:
namespace Crap
{
[ComVisible(true)]
[Guid("2134685b-6e22-49ef-a046-74e187ed0d21")]
[ClassInterface(ClassInterfaceType.None)]
public class MyClass : IMyClass
{
public MyClass()
{}
public void Test()
{
MessageBox.Show("Finally got in here.");
}
}
}
namespace Crap
{
[Guid("1234685b-6e22-49ef-a046-74e187ed0d21")]
public interface IMyClass
{
}
}
assembly is marked ComVisible as well.
I register the assembly using
regasm /codebase /tlb "path"
registers successfully (admin mode). I tried regasm 32 and 64bit. Both time I get the error
"ActiveX component cant create object Crap.MyClass" using this vbscript:
dim objReg
Set objReg = CreateObject("Crap.MyClass")
MsgBox typename(objReg)
fuslogvw doesn't give me any hints either. That COM object works perfectly on my Vista 32 Bit machine.
I don't understand why I haven't been able to google a solution for that problem.. am I really the only person that ever got into that problem?
Looking at OleView I see my object is registered successfully. I am able to create other COM objects as well.. it only does not work with my own ones.
Thank you, Kevin
© Stack Overflow or respective owner