zoukankan      html  css  js  c++  java
  • Winform中修改WebBrowser控件User-Agent的方法(已经测试成功)

    using System; 
    using System.Collections.Generic; 
    using System.Linq; 
    using System.Text; 
    using System.Windows.Forms; 
    using System.Runtime.InteropServices; 
    using System.Reflection; 
    namespace WindowsFormsApplication2 
    { 
    public class UserAgentHelper 
    { 
        private static string defaultUserAgent = null; 
        [DllImport("urlmon.dll", CharSet = CharSet.Ansi)] 
        private static extern int UrlMkSetSessionOption(int dwOption, string pBuffer, int dwBufferLength, int dwReserved); 
        const int URLMON_OPTION_USERAGENT = 0x10000001; 
        /// <summary> 
        /// 在默认的UserAgent后面加一部分 
        /// </summary> 
        public static void AppendUserAgent(string appendUserAgent) 
        { 
          if (string.IsNullOrEmpty(defaultUserAgent)) 
            defaultUserAgent = GetDefaultUserAgent(); 
          string ua = defaultUserAgent   ";"   appendUserAgent; 
          ChangeUserAgent(ua); 
        } 
        /// <summary> 
        /// 修改UserAgent 
        /// </summary> 
        public static void ChangeUserAgent(string userAgent) 
        { 
          UrlMkSetSessionOption(URLMON_OPTION_USERAGENT, userAgent, userAgent.Length, 0); 
        } 
        /// <summary> 
        /// 一个很BT的获取IE默认UserAgent的方法 
        /// </summary> 
        private static string GetDefaultUserAgent() 
        { 
          WebBrowser wb = new WebBrowser(); 
          wb.Navigate("about:blank"); 
          while (wb.IsBusy) Application.DoEvents(); 
          object window = wb.Document.Window.DomWindow; 
          Type wt = window.GetType(); 
          object navigator = wt.InvokeMember("navigator", BindingFlags.GetProperty, 
              null, window, new object[] { }); 
          Type nt = navigator.GetType(); 
          object userAgent = nt.InvokeMember("userAgent", BindingFlags.GetProperty, 
              null, navigator, new object[] { }); 
          return userAgent.ToString(); 
        } 
    } 
    }
    View Code

    Winform中修改WebBrowser控件User-Agent的方法(已经测试成功)

  • 相关阅读:
    win10操作技巧介绍,很实用!
    信息时代与人工智能时代的教育变革
    《此生未完成》痛句摘抄(3)
    《下辈子还教书》经典语录(1)
    《给教师的阅读建议》经典语录
    《此生未完成》痛句摘抄(4)
    记录程序人生2020.8.11
    最全、最详细的配置jdk十步法!
    《此生未完成》痛句摘录(2)
    “温室里的花朵”也要直面困难
  • 原文地址:https://www.cnblogs.com/ashui/p/5490939.html
Copyright © 2011-2022 走看看