WebBrowser代理的使用

WebBrowser控件只是一个embeddded IE浏览器控制,我相信任何想在IE设置代理设置,都honered一样的,因为它们在IE的。
您可以更改从与InternetSetOption的Wininet.dll方法代理,这里是一个例子来设置代理:

using System.Runtime.InteropServices;
Public struct Struct_INTERNET_PROXY_INFO 

public int dwAccessType; 
public IntPtr proxy; 
public IntPtr proxyBypass; 
}; 
[DllImport(
"wininet.dll", SetLastError = true)] 
private static extern bool InternetSetOption(IntPtr hInternet, int dwOption, IntPtr lpBuffer, int lpdwBufferLength);

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)); 


private void SomeFunc() 

RefreshIESettings(
"192.168.1.200:1010"); 

System.Object nullObject 
= 0
string strTemp = String.Empty; 
System.Object nullObjStr 
= strTemp;
axWebBrowser1.Navigate(
"http://willstay.tripod.com"ref nullObject, ref nullObjStr, ref nullObjStr, ref nullObjStr); 
}