C# COM DLL: do I use Regasm, or Regsvr32?

前端 未结 2 1232
谎友^
谎友^ 2020-12-04 18: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?

相关标签:
2条回答
  • 2020-12-04 19:01

    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.

    0 讨论(0)
  • 2020-12-04 19:13

    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
    
    0 讨论(0)
提交回复
热议问题