C# WebBrowser 设置代理
微軟webbrowser控件也就是IE插件,他的所有功能就像IE類似,當然設置也是一樣的,下面介紹下webbrowser如何設置代理
?
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using System.Runtime.InteropServices;
namespace 網頁刷新測試
{
??? public partial class Form1 : Form
??? {
??????? [DllImport("wininet.dll", SetLastError = true)]
??????? private static extern bool InternetSetOption(IntPtr hInternet, int dwOption, IntPtr lpBuffer, int lpdwBufferLength);
??????? public Form1()
??????? {
??????????? InitializeComponent();
??????????? RefreshIESettings("183.203.12.21:80");
??????????? webBrowser1.Navigate("http://www.sunwale.com/");
??????? }
??????? private void RefreshIESettings(string strProxy)
??????? {
??????????? const int INTERNET_OPTION_PROXY = 38;
??????????? const int INTERNET_OPEN_TYPE_PROXY = 3;
??????????? Struct_INTERNET_PROXY_INFO struct_IPI;
??????????? // Filling in structure
??????????? struct_IPI.dwAccessType = INTERNET_OPEN_TYPE_PROXY;
??????????? struct_IPI.proxy = Marshal.StringToHGlobalAnsi(strProxy);
??????????? struct_IPI.proxyBypass = Marshal.StringToHGlobalAnsi("local");
??????????? // Allocating memory
??????????? IntPtr intptrStruct = Marshal.AllocCoTaskMem(Marshal.SizeOf(struct_IPI));
??????????? // Converting structure to IntPtr
??????????? Marshal.StructureToPtr(struct_IPI, intptrStruct, true);
??????????? bool iReturn = InternetSetOption(IntPtr.Zero, INTERNET_OPTION_PROXY, intptrStruct, Marshal.SizeOf(struct_IPI));
??????? }
??? }
??? public struct Struct_INTERNET_PROXY_INFO
??? {
??????? public int dwAccessType;
??????? public IntPtr proxy;
??????? public IntPtr proxyBypass;
??? };
}
?
轉載于:https://www.cnblogs.com/deng02/archive/2012/06/15/2551430.html
總結
以上是生活随笔為你收集整理的C# WebBrowser 设置代理的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 鼠标滚轮(mousewheel)和DOM
- 下一篇: 前端博客收集