【问题标题】:Can I edit a MFC dialog that has an x64 ActiveX control?我可以编辑具有 x64 ActiveX 控件的 MFC 对话框吗?
【发布时间】:2025-12-02 19:25:01
【问题描述】:

我在设置为 x64 的 MFC 项目中添加了一个 ActiveX 控件。所以我也必须将 ActiveX 注册到 x64。

现在的问题是,当我想在 Visual Studio 2017 中打开对话框时,我收到 ActiveX 未注册的错误。如果我将它注册到 x32,我可以打开它,但是我无法启动窗口。

我认为是因为VS运行在x32,但是没有x64版本。

一种解决方法是在我想打开对话框时将其注册为 x32,并在运行时注册回 x64,但这似乎很麻烦。

【问题讨论】:

  • 为什么不能同时注册win32和x64?注册表中有 32 位和 64 位的单独键。我们一直在为 win32 和 x64 构建我们的东西。 32 位 CLSID 内容注册到 HKLM\Software\Wow6432Node\Classes\CLSID,而 64 位内容注册到 HKLM\Software\Classes\CLSID。
  • 我不知道,谢谢。如果我们想将程序从一种设置切换到另一种设置,我们总是重新注册。
  • 我现在可以使用它了。谢谢
  • @joseph-willcoxson 我们有同样的问题,如上所述。不幸的是,我们应用程序的架构使得 x64 和 win32 dll 不能同时共存。因此,我们只能在使用 win32 构建时编辑 MFC 对话框。有什么想法吗?
  • 为什么不能同时存在?

标签: visual-studio mfc activex 32bit-64bit


【解决方案1】:

我不知道可以为 x32 和 x64 注册 .dll。我现在使用标准的 RegSvr32 命令。

我们通常在两者之间切换,但这不适用于 Visual Studio。

【讨论】:

    最近更新 更多