gpt4 book ai didi

microsoft-edge - 如何确定 Microsoft Edge 是否为默认浏览器?

转载 作者:行者123 更新时间:2023-12-04 04:30:08 31 4
gpt4 key购买 nike

是否有可靠的编程方式来确定 Microsoft Edge 是默认浏览器?

我知道一种选择是使用 IApplicationAssociationRegistration::QueryCurrentDefault返回为 http 注册的默认应用程序的方法。尚不清楚此调用返回的 ProgID 是固定字符串,因此它可能不是验证 Edge 确实是默认浏览器的最佳方法。

最佳答案

使用以下代码片段。尚未使用 Firefox 或任何其他奇怪的测试,但您将根据 Windows 10 中的默认浏览器获得以下返回值。

  • Chrome - ChromeHTML
  • 边缘 - AppXq0fevzme2pys62n3e0fbqa7peapykr8v
  • Internet Explorer - IE.HTTP

  • 下面的代码片段应该可以工作。在控制台应用程序中测试。如果有人想要VB版本,请告诉我。
    using Microsoft.Win32;
    public static class BrowserUtils
    {
    static public string GetSystemDefaultBrowser()
    {
    string _retval = string.Empty;
    const string userChoice = @"Software\Microsoft\Windows\Shell\Associations\UrlAssociations\http\UserChoice";
    using (RegistryKey userChoiceKey = Registry.CurrentUser.OpenSubKey(userChoice))
    {
    if (userChoiceKey == null)
    {
    _retval = "unknown-> userChoiceKey returned null";
    }

    object progIdValue = userChoiceKey.GetValue("Progid");
    if (progIdValue == null)
    {
    _retval = "unknown->GetValue(Progid) returned null";
    }
    //_retval = String.Format("progId=[{0}]", progIdValue.ToString());
    _retval = progIdValue.ToString();
    }
    return _retval;
    }
    }

    希望这可以帮助。希利在坦帕。

    关于microsoft-edge - 如何确定 Microsoft Edge 是否为默认浏览器?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31330445/

    31 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com