谷歌浏览器无法打开自定义协议

3
我一直使用一种简单的机制在Windows 10上注册自定义URL协议,允许我们Web应用程序中的链接启动客户端计算机上的本地程序。例如: 启动程序 在regedit中,该协议在此处注册:
Ordinateur\HKEY_CLASSES_ROOT\mycustomprotocol\shell\open\command
其值如下:
C:\Program Files (x86)\MyProgram\MyExecutable.exe "%1"
在Chrome 63上它已经停止工作。在开发控制台或网络选项卡中没有显示任何内容,而在Firefox或Microsoft Edge等浏览器中仍然可以正常工作。
如果我删除C:\Users\johndoe\AppData\Local\Google\Chrome\User Data中的用户配置文件,然后再次单击我的自定义链接,Chrome会询问我是否要启动本地程序,但是当我单击“打开”按钮时,什么也不会发生。
有什么想法吗?这个功能现在被Chrome阻止了吗?这可以解除阻止吗?感谢您的帮助。
4个回答

4

发现我在注册表中缺少两个关键字,这对Edge没有问题,但对Chrome有问题。以下是要添加的关键字,位于计算机\HKEY_CLASSES_ROOT\mycustomprotocol\级别:

Name                   Type                       Data

(Default)               REG_SZ                URL:My Fancy Program

URL Protocol       REG_SZ


1
“URL: My Fancy Program” 是什么意思?这只是一个描述吗?它需要准确吗? - noelicus

1

0

我们在Chrome 63中也面临着自定义协议的问题。

该协议已在此处注册:

Ordinateur\HKEY_CLASSES_ROOT\mycustomprotocol\shell\open\command

其值如下:

C:\Program Files (x86)\MyProgram\MyExecutable.exe "%1"

同时,我们在计算机的\HKEY_CLASSES_ROOT\mycustomprotocol\下也有注册表项。

Name               Type                  Data
(Default)          REG_SZ                URL:My Fancy Program
URL Protocol       REG_SZ

浏览器打开弹出窗口,允许用户启动客户端应用程序。客户端应用程序启动。但是“始终允许”选项没有保存。浏览器总是打开弹出窗口来启动客户端应用程序。


-3

这太过模糊,无法提供任何帮助。 - John Fisher

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接