János Illés
János Illés

Reputation: 23

How can I use regcap for a 64-bit DLL file

I want to capture what regsvr32 mycomthingie.dll does into a .reg file. I downloaded Microsoft Visual Studio Installer Projects, and trying to use regcap.exe for this purpose. It simply quits without an error message and no reg file is created. I tried in both normal and admin cmd prompts. I suspect the problem is that the target dll is 64bit but regcap.exe is a 32bit executable.

I couldn't find a 64-bit version of this tool, so my question is, what can I do if the only version of the DLL I have is compiled as 64bit (PE32+)

Upvotes: 2

Views: 427

Answers (1)

Stein Åsmul
Stein Åsmul

Reputation: 42186

UPDATE: How to open a Windows binary as a resource in Visual Studio 2019 (use Visual Studio to extract *.RGS files from a COM binary - see comments below).


Despite little testing, let me add this for the record.

WixHeatATLHarvesterExtension: Try to download the WixHeatATLHarvesterExtension: https://github.com/nirbar/WixHeatATLHarvesterExtension

This will extend WiX's normal heat.exe tool with a new command:

heat atlcom "c:\vsFlex8n.ocx" -out vsFlex8n_COM.wxs

This appears to work for 64-bit COM files. What you get is an exported WiX source file and not a reg file though - sorry. You can construct a reg file manually though? Based on the WiX source you can convert to reg? Or just switch to using WiX if you don't already? Wix quick start link collection.

Procedure:

  1. Build: To get to this you need to download and build the solution above.
  2. Install: Once built you install the ATLHarvester.msi and this will put the components in place in the WiX installation directory. You need to download and install the WiX toolkit first though.
  3. Configure: Now you can also add the WiX bin folder to your environment path, but that is not necessary if you use the full path to heat.exe (last part untested). You should also be able to use the WIX environment variable: %WIX%\bin\heat.exe (type set in a cmd.exe to see the WIX variable path).

If you upload the dll somewhere with dependencies I can try it. These 64-bit COM files have been a serious grief before for me too.


Also found these projects that didn't work properly for me outright:

Upvotes: 1

Related Questions