JavaScript-协议处理程序已注册,但从windows注册表读取失败

JavaScript-协议处理程序已注册,但从windows注册表读取失败,javascript,internet-explorer,browser,protocols,moniker,Javascript,Internet Explorer,Browser,Protocols,Moniker,我做了以下工作: Windows 7中的1:在注册表下:HKEY\U CLASSES\U ROOT\PROTOCOLS\Handler 我有我的自定义协议调用:stackoverflow在注册表中以类似于其他协议mailto或ftp等的方式复制 2在样本中打开IE: 3当点击IE中的按钮检测协议时:stackoverflow失败 我总是得到警告框:未知协议,但当我试图检测协议,如:ftp,mailto它的工作 <a href="ftp:talking" id="link1">CLIC

我做了以下工作:

Windows 7中的1:在注册表下:HKEY\U CLASSES\U ROOT\PROTOCOLS\Handler 我有我的自定义协议调用:stackoverflow在注册表中以类似于其他协议mailto或ftp等的方式复制

2在样本中打开IE:

3当点击IE中的按钮检测协议时:stackoverflow失败

我总是得到警告框:未知协议,但当我试图检测协议,如:ftp,mailto它的工作

<a href="ftp:talking" id="link1">CLICK IT</a>
<button onclick="alert(document.getElementById('link1').protocolLong);">CHECK - IF - Protocol available or not</button>

问题:有人能告诉我激活新协议的注册表项缺少什么吗?stackoverflow,其中ftp、mailto起作用,但不是stackoverflow,Internet Explorer仅通过protocolLong显示内置协议。您无法在注册表中放入任何内容来允许基于web的应用程序协议检测。

Internet Explorer 10及更高版本在Windows 8及更高版本上,请注意,Windows 7不包括在内!请参阅使用成功和错误回调参数实现一个新方法,这些参数可以帮助协议处理程序调用情况-navigator.msLaunchUriuri、successCallback、noHandlerCallback。
有关详细信息,请参见

-是否有人可以使用此功能手动创建协议处理程序,然后通过IE重新使用该自定义协议?如果是,可能会显示一个手动演示,因为Google在Windows中的Hangout做得很好,而且没有可用的资源来说明它是如何完成的。您正在显示的协议处理程序文档与搜索索引器相关。IE支持异步可插拔协议实现(见顶部),但这些实现非常复杂,仅由IE使用。使用protocolLong也无法检测到它们。这是我为您提供信息的方式:设置cookie只在用户未清除cookie时有效,如果目标在保护模式下运行,您引用的答案将无法正常工作。
<a href="ftp:talking" id="link1">CLICK IT</a>
<button onclick="alert(document.getElementById('link1').protocolLong);">CHECK - IF - Protocol available or not</button>