我试图弄清楚如何在Windows 8.1上的64位IE版本11中加载64位ActiveX控件 .

这就是我已经/尝试过的事情:

  • 更改了UAC设置

  • 在IE设置中打开“为增强保护模式启用64位进程*”和“启用增强保护模式*”

  • 注册的64位ActiveX控件与AppContainer兼容

当我在单个选项卡中仅使用Google.com启动IE时,任务管理器将主进程和选项卡进程显示为预期的64位进程 . 但是,当我打开包含64位OCX集成的HTML文件时,我收到消息框'Internet Explorer限制此网页运行脚本或ActiveX控件' . 当我点击“允许阻止的内容”时,屏幕上没有任何内容 . 任务管理器显示新创建的选项卡进程是32位 .

如果我将HKEY_CURRENT_USER \ Software \ Microsoft \ Internet Explorer \ Main \ TabProcGrowth设置为0,那么将加载IE 11的64位ActiveX内容,一切正常 .

我可以使用HTML Help Workshop中使用的64位hhctrl.ocx重现此问题

这是简单的HTML测试文件:

<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML//EN">

<HTML>

<HEAD>

<meta name="GENERATOR" content="Microsoft&reg; HTML Help Workshop 4.1">

<Title>TestOCX</Title>

</HEAD>

<BODY>

<OBJECT id=hhctrl type="application/x-oleobject"

        classid="clsid:adb880a6-d8ff-11cf-9377-00aa003b7a11"

        codebase="hhctrl.ocx#Version=6,3,9600,18006"

        width=100

        height=100

>

    <PARAM name="Command" value="HH Version">

    <PARAM name="Button" value="Text:Version">

</OBJECT>

</BODY>

</HTML>

如果在64位IE中加载此HTML文件,则由于某种原因,新创建的进程为32位,并且无法加载嵌入式OCX .

可以使用Microsoft表格数据控件(TDC)ActiveX控件(TDC control)重现此问题 .

任何帮助将非常感谢 .