首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在Windows 8上共享应用程序URI方案注册

在Windows 8上共享应用程序URI方案注册
EN

Stack Overflow用户
提问于 2012-12-17 01:04:29
回答 2查看 1.7K关注 0票数 1

我正在编写一个在Windows8上注册"tel“协议的应用程序,因此当我打开”开始“>”运行“时,输入tel:1234,然后按回车键启动我的应用程序并拨打1234。这在XP、Win7和Win8上都能成功工作。然而,在Win8上,我发现当我安装Google Chrome时,它“接管”了对tel协议的处理,所以当我再次运行tel:1234时,启动的是Chrome而不是我的应用程序。Chrome不会接管Win7或XP中的tel协议。我想知道问题出在哪里。

目前,我的应用程序通过添加以下注册表项来注册tel协议,如MSDN上的Registering an Application to a URI Scheme中所述:

代码语言:javascript
复制
HKEY_CLASSES_ROOT\tel
@="URL:My Tel Protocol Handler"
"URL Protocol"=""

[HKEY_CLASSES_ROOT\tel\DefaultIcon]
@="C:\\MyTelProtocol.exe"

[HKEY_CLASSES_ROOT\tel\shell]

[HKEY_CLASSES_ROOT\tel\shell\open]

[HKEY_CLASSES_ROOT\tel\shell\open\command]
@="\"C:\\MyTelProtocol.exe\" -URI %1"

我发现Google Chrome不会用自己的注册表数据覆盖我的注册表数据。相反,它似乎以一种不同的方式注册协议处理程序,但我不知道如何做同样的事情。有人知道为什么Windows 8会以不同的方式处理这个问题吗?

提前谢谢你,马特

EN

回答 2

Stack Overflow用户

发布于 2013-06-26 21:15:46

您需要删除Chrome在安装过程中添加的"tel“注册表项。

HKEY_LOCAL_MACHINE\SOFTWARE\Clients\StartMenuInternet\Google Chrome\

\UrlAssociations关联

在此之后,您需要推送win 8以重新加载注册库(重新启动或其他方式),jabber将成为TEL:URI;的默认应用程序。

票数 1
EN

Stack Overflow用户

发布于 2012-12-17 04:48:10

这里有一些关于File type and protocol associations model (Windows)的指南,它似乎适用于Windows8。也许可以试试?

This codereview建议将Chrome协议处理程序的代码放在this file中,以防它有任何用处。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/13903499

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档