24

I am building a C# ActiveX DLL... do I use REGASM or REGSVR32 to register it?

How do I register the 64-bit interface vs the 32-bit interface?

bluish
  • 26,356
  • 27
  • 122
  • 180
Jason
  • 16,739
  • 23
  • 87
  • 137

2 Answers2

34

You need to use regasm.exe to register both the 32 bit and 64 bit interfaces I believe you need to run each of the regasm.exe's in:

C:\Windows\Microsoft.NET\Framework\v2.0.50727

and

C:\Windows\Microsoft.NET\Framework64\v2.0.50727

So... in your case you need to run the regasm.exe in the Framework64\v2.0.50727 folder.

Here's an example we use to register a COM interop DLL for one of our legacy ASP apps:

regasm.exe Hosting.DeviceManager.Power.dll /register /codebase /tlb
Kev
  • 118,037
  • 53
  • 300
  • 385
2

If the DLL is build in format of "Any CPU", no matter if you choose regasm in

C:\Windows\Microsoft.NET\Framework\v2.0.50727

or

C:\Windows\Microsoft.NET\Framework64\v2.0.50727

DLL would be registered as 32-bit.

bluish
  • 26,356
  • 27
  • 122
  • 180
eason
  • 53
  • 1
  • 7