获取用户默认浏览器的UserAgent

时间:2012-05-07 12:09:09

标签: c# browser user-agent

我正在创建一个包含WebBrowser元素的应用程序,我希望应用程序显示该用户默认浏览器的useragent。

我知道如何通过注册表项获取默认浏览器以及如何获取浏览器的用户代理,但无法弄清楚如何将两者结合起来。这可能吗?

2 个答案:

答案 0 :(得分:1)

我会做什么(当然,这有点过分)是包含一个Web服务器并从该Web服务器请求一个URL,从而获得用户代理。

即。大概这将包括:

  1. 在应用程序内部实施Web服务器,例如this one
  2. WebBrowser控件调用网络服务器的本地网址(例如http://127.0.0.1:48384/test
  3. 在Web服务器的请求处理程序中,将用户代理存储到变量
  4. 向最终用户显示此变量(例如,在WinForm应用程序的Label控件中,或者只是通过从网络服务器发回回复。
  5. 我已经多次在我的应用程序中成功使用了Web服务器。我的HTML edit control在代码项目中就有一个例子。

答案 1 :(得分:0)

试试这个(这是一个检查浏览器是否属于手持设备的简单功能)

string strUserAgent = Request.UserAgent.ToString().ToLower();
bool status = false;
if (strUserAgent != null)
{
    if (Request.Browser.IsMobileDevice == true || 
        strUserAgent.Contains("iphone") ||
        strUserAgent.Contains("blackberry") || 
        strUserAgent.Contains("mobile") ||
        strUserAgent.Contains("windows ce") || 
        strUserAgent.Contains("opera mini") ||
        strUserAgent.Contains("palm"))
    {
        status = true;
    }
}