Microsoft Edge 中是否有 ActiveX 的替代品?

Are there alternatives for ActiveX In Microsoft Edge?

Microsoft 发布了不支持 ActiveX 的 Edge 浏览器。

我有一个应用程序需要从 Windows 注册表获取信息,所以我对 ActiveX 的替代方案有一些疑问:

  1. 有没有办法从 Edge 或类似的东西(比如 Chrome 中的本地消息传递)与本机应用程序(可以从 Windows 注册表中读取)进行通信?

  2. 有没有办法从 Edge、Javascript 等直接访问 Windows 注册表?

目前我认为您无法从 MS Edge 中的 Web 应用程序 运行 访问注册表。如果您只需要保存信息,您可以选择不同的替代方案来启用类似的功能。

  1. 您可以使用 HTML/JS 可用的存储选项,例如 webStorage 或 indexedDB。它们在所有现代浏览器中都可用,可用于在客户端上保存数据。

  2. 如果该应用程序应该仅在 Windows 10 可用,您可能会考虑构建一个托管网络应用程序 (http://blogs.windows.com/buildingapps/2015/07/06/project-westminster-in-a-nutshell/) 此技术使您能够访问某些功能Windows 操作系统,但不是注册表。

如果您的应用高度依赖 ActiveX 和 Windows 注册表,您仍然可以在 Windows10 中使用 Internet Explorer 11。

在我回答前几天,Microsoft 刚刚在 Edge extensionsNative 应用程序之间引入了 Native-messaging 在他们的在线文档上:

https://docs.microsoft.com/en-us/microsoft-edge/extensions/guides/native-messaging

这可能能满足您的需求。