2014-07-06 112 views
0

我以下:的JavaScript - 协议处理程序注册,但,阅读从Windows注册表失败

1)在Windows 7中:在注册表:HKEY_CLASSES_ROOT\PROTOCOLS\Handler 我有我的自定义协议电话:像其他注册表stackoverflow(复制类似的方式协议mailtoftp等)

Followed

2)打开IE中的样品:http://jsfiddle.net/L528u/

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

3)单击IE浏览按钮时,检测的协议:计算器失败

我总是得到警告框:“未知协议”,但是当我尝试检测协议有:FTP,邮寄地址它的工作原理

<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)

回答

1

Internet Explorer只通过protocolLong表面内置协议。在注册表中没有任何东西可以允许基于Web的应用程序协议检测。

+0

http://msdn.microsoft.com/en-us/library/windows/desktop/bb266527(v=vs.85).aspx - 有人可以使用它来手动创建协议处理程序然后通过IE重用那个自定义协议?如果是的话可以显示手动演示,导致谷歌在Windows环聊做得很好,没有可用的资源如何完成。 – YumYumYum

+1

您显示的“协议处理程序”文档与搜索索引器相关。 IE支持异步可插入协议实现(请参见http://blogs.msdn.com/b/ieinternals/archive/2011/07/14/url-protocols-application-protocols-and-asynchronous-pluggable-protocols-oh -my.aspx),但这些都非常复杂,只能用于IE。它们也不能使用protocolLong进行检测。 – EricLaw

+0

这是我使它适用于您的信息的方式:http://stackoverflow.com/questions/24675548/innosetup-is-there-any-way-to-manually-create-cookie-for-internet-explorer – YumYumYum