IE代理的设置与取消

要实时更新IE所有实例需调用如下API:

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

 

然后刷新IE设置:

private   static   void  RefreshIESettings()
        {
            
const   int  INTERNET_OPTION_REFRESH  =   0x000025 ;
            
const   int  INTERNET_OPTION_SETTINGS_CHANGED  =   0x000027 ;
            InternetSetOption(IntPtr.Zero, INTERNET_OPTION_SETTINGS_CHANGED, IntPtr.Zero, 
0 );
            InternetSetOption(IntPtr.Zero, INTERNET_OPTION_REFRESH, IntPtr.Zero, 
0 );
        }

 

最后写IE在注册表中的设置即可:

 

public   static   void  SetIEProxy(Proxy proxy)
ExpandedBlockStart.gifContractedBlock.gif        
{
            
string proxyIP = "";
            proxyIP
=string.Format("{0}:{1}", proxy.ProxyAddr, proxy.ProxyPort);
            RegistryKey rk 
= Registry.CurrentUser.OpenSubKey(@"Software\Microsoft\Windows\CurrentVersion\Internet Settings"true);
            rk.SetValue(
"ProxyEnable"1);
            rk.SetValue(
"ProxyServer", proxyIP);
            rk.Close();
            RefreshIESettings();
        }


        
public   static   void  CancelIEProxy()
ExpandedBlockStart.gifContractedBlock.gif        
{
            RegistryKey rk 
= Registry.CurrentUser.OpenSubKey(@"Software\Microsoft\Windows\CurrentVersion\Internet Settings",true);
            rk.SetValue(
"ProxyEnable"0);
            rk.Close();
            RefreshIESettings();
        }


public   class  Proxy
ExpandedBlockStart.gifContractedBlock.gif    
{
        
private string proxyName;
        
private string proxyAddr;
        
private int port;

        
public Proxy(string name, string addr, int port)
ExpandedSubBlockStart.gifContractedSubBlock.gif        
{
            
this.proxyName = name;
            
this.proxyAddr = addr;
            
this.port = port;
        }


ExpandedSubBlockStart.gifContractedSubBlock.gif        
public string ProxyName get return proxyName; } }
ExpandedSubBlockStart.gifContractedSubBlock.gif        
public string ProxyAddr get return proxyAddr; } }
ExpandedSubBlockStart.gifContractedSubBlock.gif        
public int ProxyPort get return port; } }

        
public override string ToString()
ExpandedSubBlockStart.gifContractedSubBlock.gif        
{
            
return proxyName;
        }

    }

转载于:https://www.cnblogs.com/wudingfeng/archive/2008/10/13/1310246.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值