如何将默认浏览器设置为我的应用程序?

时间:2012-10-14 18:38:59

标签: c# wpf http registry default-browser

我制作了一个处理http链接的程序。如何将默认浏览器设置为我的exe?我只需要更改http协议,而不是文件关联。我已经设置了命令行参数处理。我不想使用.reg文件,因为它要求用户添加密钥。

3 个答案:

答案 0 :(得分:3)

您可以在静默模式下运行regedit(“/ S”)。

或运行cmd脚本:

reg add HKEY_CLASSES_ROOT\http\shell\open\command /ve /d "path\to\app \"%1\"" /f

(对于已注册的http处理程序 - 覆盖“\ shell \ open \ command”键中的现有空参数)。

更新您还可以按照MSDN article体验默认浏览器(HKEY_CURRENT_USER \ SOFTWARE \ Clients \ StartMenuInternet)。但是你也可以处理本地文件。

答案 1 :(得分:2)

@TomTom 对不起,我没有足够的代表发表评论。 ;)

仅仅因为Firefox和其他一些浏览器很受欢迎并不意味着它在某种程度上“特殊”,因为它可以询问您是否要更改设置。没有理由认为定制应用程序不能这样做。

@msbg,既然你在那里评论过,你可能已经在how do i change default browser using c# or batch file

找到了答案

How to find all the browsers installed on a machine处的另一个答案是http://msdn.microsoft.com/en-us/library/dd203067%28VS.85%29.aspx

答案 2 :(得分:1)

你没有。这不是程序特定的设置,它是系统范围的。

您可以做的是启动一个特定的exe(浏览)并将其作为参数提供给它。但一般来说,抱歉,这是一个系统智能设置(甚至不是用户)iirc。