我做了一个程序来处理http链接。如何将默认浏览器设置为我的 exe?我只需要更改 http 协议,而不是文件关联。我已经设置了命令行参数处理。我不想使用 .reg 文件,因为它会询问用户有关添加密钥的信息。
您可以在静默模式下运行注册表编辑器("/S")。
或者运行cmd脚本:
reg add HKEY_CLASSES_ROOThttpshellopencommand /ve /d "pathtoapp "%1"" /f
(对于已注册的 HTTP 处理程序 - 覆盖"\shell\open\command"键中的现有空参数)。
更新 您也可以根据 MSDN 文章尝试使用默认浏览器 (HKEY_CURRENT_USER\SOFTWARE\Clients\StartMenuInternet)。但您也可以处理本地文件。
@TomTom抱歉,我没有足够的代表发表评论。;)
仅仅因为Firefox和其他几个浏览器很受欢迎并不意味着它在某种程度上是"特别的",因为它可以询问您是否要更改设置。定制应用程序没有理由不能做同样的事情。
@msbg,既然您在那里发表了评论,您可能已经在如何使用 C# 或批处理文件更改默认浏览器中找到了答案
在如何找到计算机上安装的所有浏览器中还有另一个答案,它指的是 http://msdn.microsoft.com/en-us/library/dd203067%28VS.85%29.aspx
你没有。这不是特定于程序的设置,而是系统范围的设置。
您可以做的是启动一个特定的 exe(浏览)并为其提供 URL 作为参数。但总的来说,对不起,这是一个系统设置(甚至不是用户)iirc。