IE 如何注册ActiveX控件?

IE 如何注册ActiveX控件?

IE 如何注册 ActiveX 控件以供浏览器中使用?

它是否仅为 DLL 运行 regsvr32?

答案1

ActiveX 组件自行注册,由众所周知的 DLL 入口点 ( DllRegisterServer) 触发。

regsvr32只是加载 DLL 并调用该入口点的包装器。其他工具可以直接执行此操作。安装程序有时只是直接更新注册表(记录了构建安装程序时要进行的更改)。

答案2

我的理解是,它使用了 regsvr32 使用的某些底层 API,但它不调用 regsvr.exe。ActiveX 控件由磁盘上的文件(通常是 .DLL 文件)和一些注册表项组成。注册表项用于查找实际可执行代码的位置,因为浏览器不想指定特定文件。注册表项可以通过多种方式创建,包括 regsvr32 使用的机制。

在 Vista 下创建注册表项需要更高级别的权限,并且必须通过 UAC。因此,标准用户无法安装 ActiveX 控件。有一个辅助服务可以代表用户注册控件。

答案3

它实际上不必做任何这些事情;CAB 文件指定它实际上会做什么。它可能使用 DllRegisterServer,这确实是最常见的做法,但它也可以启动 MSI 或 EXE 安装程序,该安装程序可能会以另一种方式注册 ActiveX 控件。

相关内容