1
votes

I added an ActiveX control into my MFC project that is set to x64. So i have to register the ActiveX to x64, too.

Now the problem is, when i want to open the dialog in Visual Studio 2017, i get an error that the ActiveX is not registered. I can open it if i register it to x32, but then i can't launch the window.

I think it is because VS is running in x32, but there is no x64 version.

A workaround could be to register it for x32 whenever i want to open the dialog, and back to x64 when running it, but that seems like a hassle.

1
Why can't you register it for both win32 and x64? There are separate keys in the registry for 32-bit and 64-bit. We build our stuff for win32 and x64 all the time. The 32-bit CLSID stuff gets registered to HKLM\Software\Wow6432Node\Classes\CLSID whereas the 64-bit stuff is registred to HKLM\Software\Classes\CLSID.Joseph Willcoxson
I did not know that, thank you. We always re- register if we want to switch our program from one setting to the other..Daniel Bauer
I got it to work now. Thank youDaniel Bauer
@joseph-willcoxson We have the same problem, as mentioned above. Unfortunately the architecture of our application is such that the x64 and win32 dlls can't coexist at the same time. Hence we can only edit MFC Dialogs when the win32 build is used. Any idea?Juv
Why can't they exist at the same time?Joseph Willcoxson

1 Answers

0
votes

I didn't know that .dlls can be registered for both x32 and x64. I used the standard RegSvr32 command now.

We normally switch between the two, but that doesn't work with Visual Studio.