如何使用c#在windows 8中设置默认浏览器

本文关键字:设置 默认浏览器 windows 何使用 | 更新日期: 2023-09-27 18:15:01

在Windows 8 (XP/VISTA/WIN7)之前,我们都很容易做到这一点,只需要对注册表进行很少的更改,而且它已经完成了。

Windows 8就没那么容易了(我还没弄清楚怎么回事)。Windows 8也有几个注册表设置要更改下面提到的,但与此同时,它也为每台计算机存储一个唯一的哈希值。任何人都可以帮助我可能为每台计算机或微软提供的一些API创建这个哈希值来设置默认浏览器('SetAppAsDefaultAll'不起作用)。以下是注册表项:

计算机软件' ' HKEY_CURRENT_USER ' ' Windows ' CurrentVersion '微软Explorer ' FileExts.htm ' UserChoiceProgid: IE.AssocFile.HTM哈希:XXXXXXXXXXX

计算机软件' ' HKEY_CURRENT_USER ' ' Windows ' CurrentVersion '微软Explorer ' FileExts.html ' UserChoiceProgid: IE.AssocFile.HTM哈希:XXXXXXXXXXX

计算机软件' ' HKEY_CURRENT_USER ' ' Windows ' CurrentVersion '微软Explorer ' FileExts.xht ' UserChoiceProgid: IE.AssocFile.XHT哈希:XXXXXXXXXXX

计算机软件' ' HKEY_CURRENT_USER ' ' Windows ' CurrentVersion '微软Explorer ' FileExts.xhtml ' UserChoiceProgid: IE.AssocFile.XHT Hash:

电脑' HKEY_CURRENT_USER '微软软件' ' Windows '壳'协会' UrlAssociations ' ftp ' UserChoiceProgid: IE。FTP哈希值:XXXXXXXXXXX

计算机软件'微软' Windows ' ' HKEY_CURRENT_USER '壳' ' http UrlAssociations ' ' UserChoice关联Progid: IE。HTTP哈希:XXXXXXXXXXX

电脑' HKEY_CURRENT_USER '微软软件' ' Windows '壳'协会' UrlAssociations ' https ' UserChoiceProgid: IE。HTTPS哈希:XXXXXXXXXXX

如何使用c#在windows 8中设置默认浏览器

等待这个问题答案的人

给你,看起来其中一种方法是通过win8提供的DISM.exe。你的用户应该是机器的管理员。

使用c#代码,你应该能够运行这个带有特定参数的光盘。

下面的博客有详细信息。

http://blogs.technet.com/b/mrmlcgn/archive/2013/02/26/windows-8-associate-a-file-type-or-protocol-with-a-specific-app-using-a-gpo-e-g-default-mail-client-for-mailto-protocol.aspx

谢谢。

我相信这是为了让用户,而不是你的软件,来控制这个设置。

您应该能够触发"您的计算机有新的Web浏览应用程序"弹出框,但是,这样用户可以很容易地选择您的程序,如果他们想。

我也问过这个问题,并设法找到了一个解决方案,这可能对你有帮助,因为我在Windows 8.1上测试了这个,它工作了:如何使用c#设置Windows 7上的默认浏览器?

这实际上适用于你想让任何程序作为它的协议和文件扩展名的默认情况