void SuppressScriptErrors(WebBrowser webBrowser, bool hide)
{
webBrowser.Navigating += (s, e) =>
{
var fiComWebBrowser = typeof(WebBrowser).GetField("_axIWebBrowser2", System.Reflection.BindingFlags.Instance | System.Reflection.BindingFlags.NonPublic);
if (fiComWebBrowser == null)
return; object objComWebBrowser = fiComWebBrowser.GetValue(webBrowser);
if (objComWebBrowser == null)
return; objComWebBrowser.GetType().InvokeMember("Silent", System.Reflection.BindingFlags.SetProperty, null, objComWebBrowser, new object[] { hide });
};
} //设置浏览器的UserAgent public class UserAgentHelper
{ [DllImport("urlmon.dll", CharSet = CharSet.Ansi)]
private static extern int UrlMkSetSessionOption(int dwOption, string pBuffer, int dwBufferLength, int dwReserved);
private static string deskUA = "Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/86.0.4240.198 Safari/537.36 QIHU 360SE";
public static void SetUserAgent(WebBrowser web,bool isDeskUserAgent=false)
{ //Mozilla/5.0 (iPhone; CPU iPhone OS 13_2_3 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/13.0.3 Mobile/15E148 Safari/604.1
//Mozilla/5.0 (iPhone; CPU iPhone OS 13_2_3 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/13.0.3 Mobile/15E148 Safari/604.1
string pBuffer = "Mozilla/5.0 (iPhone; CPU iPhone OS 13_2_3 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/13.0.3 Mobile/15E148 Safari/604.1";
if (isDeskUserAgent)
{
pBuffer = deskUA;
}
UrlMkSetSessionOption(0x10000001, pBuffer, pBuffer.Length, 0);
// web.ScriptErrorsSuppressed = true; } }

  

c# 设置WebBrowser的UserAgent的更多相关文章

  1. WebBrowser与IE的关系,如何设置WebBrowser工作在IE9模式下?

    原文 WebBrowser与IE的关系,如何设置WebBrowser工作在IE9模式下? 一.问题的提出 偶然发现,Winform里的WebBrowser和IE实际安装的版本似乎并不同步,很有趣! 下 ...

  2. C#设置WebBrowser默认浏览器

    由于VS的WebBrowser控件的默认浏览器是IE7,好多网页兼容性不是很好,所以要修改下默认浏览器. 设置前: 设置后:    在WebBrowser界面加载时执行以下方法,设置浏览器. /// ...

  3. C#设置WebBrowser IE浏览器版本

    通过修改注册表的值,来指定winform程序打开的webBrowser的IE版本 1>方法一,通过程序修改注册表的值 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 ...

  4. 设置WebBrowser内核渲染模式

    前不久开发一个项目,是采用WebBrowser作为外壳,加载网页,由于网页是采用html5来进行开发的,当通过WebBrowser加载网页后,html5中的特性 都无法正常显示,而通过ie浏览器打开时 ...

  5. 设置webbrowser浏览器内核

    var hklm = Microsoft.Win32.Registry.LocalMachine;            var lmRun64 = hklm.OpenSubKey(@"SO ...

  6. C#:设置webBrowser框架与系统相对应的IE内核版本

    通常情况下,我们直接调用C#的webBrowser控件,默认的浏览器内核是IE7.  那么如何修改控件调用的默认浏览器版本呢? /// <summary> /// 修改注册表信息来兼容当前 ...

  7. winfrom设置webBrowser框架默认的IE内核版本

    要实现设置webBrowser框架默认的IE内核版本的功能需要三个方法 1:修改注册表信息来兼容当前程序 /// <summary> /// 修改注册表信息来兼容当前程序 /// /// ...

  8. C#设置WebBrowser使用Edge内核

    原文:C#设置WebBrowser使用Edge内核 1. 问题描述 用C#写了一个小工具, 需要显示网页上的内容, 但WebBrowser使用的是IE内核, 不能很好的展示网页 2. 解决方法 通过一 ...

  9. Delphi 设置WebBrowser 代理服务器 与 UserAgent

    uses UrlMon, WinInet; {----------------------------------------------------------------------------- ...

  10. C# webbrowser 修改useragent

    http://www.lukepaynesoftware.com/articles/programming-tutorials/changing-the-user-agent-in-a-web-bro ...

随机推荐

  1. Clickhouse SQL语法

    Insert 基本与标准 SQL(MySQL)基本一致 (1)标准 insert into [table_name] values(-),(-.) (2)从表到表的插入 insert into [ta ...

  2. 2-5 C++ 类型别名与自动类型

    目录 2.5.1 类型别名(Type Alias) typedef using 2.5.2 auto类型说明符 基本说明 注意点 2.5.3 decltype类型说明符 基本说明 注意点 2.5.1 ...

  3. apisix~限流插件的使用

    参考: https://i4t.com/19399.html https://github.com/apache/apisix/issues/9193 https://github.com/apach ...

  4. weex跨页面通信

    需求: A页面有表单和表格,点击表格中的按钮到B页面,B页面操作完毕,再次回到A页面,表单元素保持不变,表格内容刷新. 通过管道通信去做,用两个管道嵌套,A页面跳转到B页面的时候,直接用管道发过去,B ...

  5. Blazor 组件库 BootstrapBlazor 中CheckboxList组件介绍

    组件介绍 CheckboxList 多选框组控件用于创建多选的复选框组. 他的样子是这样的: 代码也很简单,绑定一个List就行了. <CheckboxList @bind-Value=&quo ...

  6. 这些 JavaScript 编码习惯,让你最大程度提高你的项目可维护性!

    前言: 因为 JavaScript 语言是一门极其松散.极其自由的语言,这意味着我们可以随心所欲的操作它,这是他的优点,但同时也是它的缺点.在编码过程中,我们需要一种良好的规范或者习惯来保持应用程序的 ...

  7. Javascript 常用封装(二)

    1.字符串占位宽度 计算占位宽度:字符串的占位宽度除了涉及到具体的字符串内容,还与字体大小有关,可以将其放入Dom中来获取实际占位宽度 //计算字符串的占位宽度 function getTextWid ...

  8. Conda + JuiceFS :增强 AI 开发环境共享能力

    Conda 是当前 AI 应用开发领域中非常流行的环境和包管理系统,因其能够简单便捷地创建与系统资源相隔离的虚拟环境广受欢迎. Conda 支持在不同的操作系统上重建相同的工作环境,但在环境共享复用方 ...

  9. Java和.Net互相使用RSA加密时的问题和处理方法

    前言 我们产品是使用JAVA语言开发的,有个供第三方获取Token的接口,过程大概就是第三方先调一个注册接口,获取一个RSA公钥,然后用通过公钥加密后的一些认证信息调用获取Token的接口,如果信息无 ...

  10. Rocky Linux8升级9随记

    发现Rocky Linux已经升级了9.0版本,看着自己用着的8.5版本,跃跃欲试,于是就索性升级了.两者的支持年限没有太大的差别,先说我的想法:升不升级无所谓. 并不是9.0有什么特别牛的特性,只是 ...