无法将 Windows 上的默认 HTTP 协议处理程序更改为自定义命令

无法将 Windows 上的默认 HTTP 协议处理程序更改为自定义命令

如果我创建一个新的注册表项,例如:

HKEY_CLASSES_ROOT\something\shell\open\command
                      

在 Windows 命令提示符下,我现在可以输入:

start something://....

它将运行我的命令。

但是如果我编辑当前http密钥:

HKEY_CLASSES_ROOT\http\shell\open\command

然后输入:

start http://....

无论我command在上述注册表位置输入什么,它都会打开 Chrome。

为什么something钥匙能用,有时http却不能用?

如何将http处理程序重定向到我自己的命令而不是 Chrome?

答案1

我在这里找到了答案:
https://newoldthing.wordpress.com/2007/03/23/how-does-your-browsers-know-that-its-not-the-default-browser/

基本上,URL 处理自 Vista 以来发生了变化,增加了额外的注册表重定向。对于 Chrome 和 HTTP,命令现在位于此处:

HKEY_CLASSES_ROOT\ChromeHTML\Shell\open\command

相关内容