`
feipigwang
  • 浏览: 764007 次
  • 性别: Icon_minigender_2
  • 来自: 北京
文章分类
社区版块
存档分类
最新评论

利用WebBrowser网址访问问题及不同操作系统IE本地网络注册表解决

 
阅读更多

利用WebBrowser封装专门网址访问,会有诸多安全问题。如:下拉列表改变不引起回发、图片按钮失效等,特别是服务器版本的操作系统

彻底解决方法,将访问的地址通过写注册表的方法自动加入IE的本地网络以降低安全控制。

具体代码:

string _Url =“http://61.135.169.125”

string keyRanges = "Ranges";
try
{
RegistryKey reg = Registry.LocalMachine;
RegistryKey regSet = reg.OpenSubKey("SOFTWARE\\Microsoft\\Windows NT\\CurrentVersion", false);
if (regSet.GetValue("ProductName") != null
&& regSet.GetValue("ProductName").ToString().IndexOf(" Server") != -1)
{
keyRanges = "EscRanges";
}
regSet.Close();
reg.Close();
}
catch { }

try
{
//加入IE本地
int p1 = _Url.IndexOf("://");
string http = _Url.Substring(0, p1);
int p2 = _Url.LastIndexOf(":");
string ip;
if (p2 == p1)
{
ip = _Url.Substring(p1 + 3);
}
else
{
ip = _Url.Substring(p1 + 3, p2 - p1 - 3);
}

RegistryKey reg = Registry.CurrentUser;
RegistryKey regSet = reg.OpenSubKey("Software\\Microsoft\\Windows\\CurrentVersion\\Internet Settings\\ZoneMap", true);
RegistryKey regSetRanges = regSet.OpenSubKey(keyRanges, true);
if (regSetRanges == null)
{
regSetRanges = regSet.CreateSubKey(keyRanges);
}
RegistryKey regSetUrl = regSetRanges.OpenSubKey("Range0");
if (regSetUrl == null)
{
regSetUrl = regSetRanges.CreateSubKey("Range0");
regSetUrl.SetValue(":Range", ip);
regSetUrl.SetValue(http, 1, RegistryValueKind.DWord);
}
regSetUrl.Close();
regSetRanges.Close();
regSet.Close();
reg.Close();
}
catch { }

try
{
//修改IE打印设置
RegistryKey reg = Registry.CurrentUser;
RegistryKey regSet = reg.OpenSubKey("Software\\Microsoft\\Internet Explorer\\PageSetup", true);
if (regSet != null)
{
regSet.SetValue("header", "");
regSet.SetValue("footer", "");
regSet.SetValue("margin_bottom", "0.39");
regSet.SetValue("margin_left", "0.39");
regSet.SetValue("margin_right", "0.39");
regSet.SetValue("margin_top", "0.39");
regSet.Close();
}
reg.Close();
}
catch { }

分享到:
评论

相关推荐

    C# WebBrowser 任意切换IE版本

    在Windows操作系统中,通过修改`HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Internet Explorer\Main\FeatureControl\FEATURE_BROWSER_EMULATION`或`HKEY_CURRENT_USER\Software\Microsoft\Internet Explorer\Main\...

    Winform测试WebBrowser控件对应的IE版本

    与B/S(浏览器/服务器)架构的网页应用不同,C/S应用中的WebBrowser控件可以直接利用本地系统资源,无需通过网络加载网页,这使得它在某些情况下比直接打开浏览器更加高效。 要了解WebBrowser控件所使用的IE版本,...

    .net和 vb WebBrowser 浏览器兼容问题

    6. **测试不同环境**:在多种操作系统和IE版本上进行测试,以确保兼容性。 7. **使用WebBrowser控件的替代方案**:如果上述方法都不能解决问题,可以考虑使用其他第三方浏览器控件,如CEFSharp(Chromium Embedded ...

    强制webbrowser控件使用ie11注册表文件

    标题 "强制webbrowser控件使用ie11注册表文件" 涉及的是在Windows操作系统中,使用WebBrowser控件时如何确保它与Internet Explorer 11(IE11)浏览器引擎进行交互的技术细节。WebBrowser控件是.NET Framework提供的...

    vfp WebBrowser(支持内核是ie 和 edge)

    VFP WebBrowser控件默认使用的是系统默认的浏览器引擎,这意味着在Windows 10上会使用IE11,而在某些旧版系统如Win7虚拟机中可能使用IE10。为了确保跨平台兼容性,可以通过调整注册表设置来指定使用Edge的Chromium...

    设置使用webbrowser的软件使用的IE版本

    需要注意的是,不正确的注册表修改可能导致软件运行错误或系统不稳定,因此非专业人士在操作时应当谨慎。同时,随着Microsoft Edge逐渐取代IE,对于新的开发,更推荐使用EdgeHTML引擎的Chromium内核,因为它提供了更...

    delphi的TWebBrowser控件,实际上是IE,版本比较低,经济打不开网页,可以通过修改注册表的方法进行修改成IE11

    在实际操作中,应谨慎处理注册表修改,因为错误的操作可能导致系统不稳定。如果你不熟悉注册表编辑,最好寻求专业开发人员的帮助或使用安全的自动化工具来执行这些更改。另外,Delphi社区也有一些第三方库,如...

    C# WebBrowser 切换IE版本

    当`WebBrowser`初始化时,它会自动选择与系统注册表设置相匹配的IE版本进行渲染。因此,要切换IE版本,我们需要修改注册表项来指定所需的浏览器模式。 在C#代码中,我们可以创建一个类来处理这些注册表操作。例如,...

    C# webbrowser 多IE版本 11,10,9,8 可调整

    首先,`WebBrowser`控件默认基于系统安装的IE版本,这意味着如果用户的操作系统预装的是IE8,那么`WebBrowser`控件就会使用IE8的内核。然而,某些情况下,我们可能需要模拟不同的IE版本,比如为了兼容旧版网站或测试...

    让软件支持系统IE内核.rar

    标题"让软件支持系统IE内核.rar"所指的,就是解决这个问题的一个小工具。这个工具简化了设置过程,使得VB程序能够利用系统当前安装的IE版本的内核,而无需开发者手动修改注册表。注册表是Windows操作系统中存储配置...

    C#2010 WebBrowser.zip,可以自由设定IE6,7,8,9,10,11各版本

    总结来说,"C#2010 WebBrowser.zip" 是一个针对C#开发者设计的工具,旨在帮助他们解决WebBrowser控件在不同IE版本间的兼容性问题。通过这个工具,开发者可以在应用程序中自由地选择WebBrowser控件模拟的IE版本,从而...

    C# 扩展的比较完整的WebBrowser控件

    由于`WebBrowser`控件依赖于系统安装的IE版本,有时可能需要升级IE以支持最新的网页标准。不过,也可以通过注册表调整控件使用特定版本的IE引擎。 总的来说,C#的`WebBrowser`控件是一个功能强大的工具,能实现...

    完整获取系统版本号与IE版本号

    另一种方法是利用ActiveX组件,如“WebBrowser”控件,通过查询其版本属性来获取IE版本。 在易语言入门学习中,理解并熟练运用这些方法是至关重要的。对于初学者,建议先从基础的系统信息获取开始,逐渐深入到更...

    IE7-IE8菜单栏置顶方法

    - 如果不熟悉注册表操作,建议寻求专业人士的帮助,以免误操作导致系统问题。 - 在进行以上操作前,请确认您的计算机上安装的是IE7或IE8版本。 #### 结语 通过上述步骤,您可以轻松地将IE7或IE8的菜单栏置顶,从而...

    WIN7的IE11菜单栏无法隐藏解决方法.docx

    标题中的“WIN7的IE11菜单栏无法隐藏解决方法”指的是在Windows 7操作系统中,用户遇到的一个问题,即Internet Explorer 11 (IE11) 的菜单栏无法正常隐藏。这可能会影响到用户的浏览体验,因为菜单栏始终占据着屏幕...

    vb 查看删除ie临时文件cookie

    在VB(Visual Basic)编程中,查看和删除IE(Internet Explorer)的临时文件和Cookie是常见的操作,这对于清理用户浏览器缓存、保护隐私或者优化系统性能都有一定的帮助。以下是关于这个主题的详细知识点: 1. **IE...

    C# IE

    标题中的"C# IE"指的是使用C#编程语言来模拟或操作Internet Explorer(简称IE)浏览器的行为。...通过分析和理解这些代码,可以提升对C#和WebBrowser控件的理解,以及对Windows操作系统底层机制的掌握。

    调用IE自带打印功能实现在线打印

    本文将详细介绍如何通过调用Internet Explorer(IE)浏览器的内置打印功能来实现在线打印,这是一种简单而实用的方法,尤其适用于Windows操作系统下的网页打印需求。 ### IE自带打印功能的核心技术解析 在早期的...

Global site tag (gtag.js) - Google Analytics