就是用程序实现:
Internet属性-》连接-》局域网设置-》为LAN使用代理服务器
的设置。
要用程序实现不用代理与用代理的转换,以及在不同代理地址之间的转换。
最好能有脚本语言,能在cmd下执行的,这样可以写在bat文件中,用其他方法实现也可。

解决方案 »

  1.   

    用InternetSetOption这个api, 其中Flag为INTERNET_OPTION_PROXY
    具体用法查msdn
      

  2.   

    procedure SetProxy(FServer:String;FPort:Integer);
    Var
        sProxy: string;
        Pinfo: INTERNET_PROXY_INFO;
    begin
      sProxy:=Format('%s:%s',[FServer,IntToStr(FPort)]);
      Pinfo.dwAccessType := INTERNET_OPEN_TYPE_PROXY;
      Pinfo.lpszProxy := pchar(sProxy);
      SetReg;
      InternetSetOption(nil, INTERNET_OPTION_PROXY, @Pinfo, SizeOf(PInfo));
      InternetSetOption(nil, INTERNET_OPTION_SETTINGS_CHANGED, nil, 0);
    end;procedure SetReg(FServer:String;FPort:Integer);
    Var
      Reg:TRegistry;
      sItem,sTmp:String;  Function GetProxyRegString(sSrc,sSub:String):String;
      Var
        iTmp:Integer;
        sDArray:DynamicArray_String;
      Begin
        Result:='';
        IF Trim(sSrc)='' Then
        Begin
          Result:=sSub+'='+FServer+':'+IntToStr(FPort);
          Exit
        End;    IF Pos(';',sSrc)=0 Then  //对所有协议均使用相同的代理服务器
        Begin
          SetLength(sDArray,1);
          sDArray[0]:=FServer+':'+IntToStr(FPort);
        End
        Else
        Begin
          sDArray:=Split(sSrc,';');
          For iTmp:=Low(sDArray) To High(sDArray) Do
            IF Pos(sSub,sDArray[iTmp])>0 Then
            Begin
               sDArray[iTmp]:=sSub+'='+FServer+':'+IntToStr(FPort);
               Break;
            End;
        End;    For iTmp:=Low(sDArray) To High(sDArray) Do
        IF iTmp<High(sDArray) Then
           Result:=Result+sDArray[iTmp]+';'
        Else
           Result:=Result+sDArray[iTmp];
      end;
    begin
      Try
        Reg:=TRegistry.Create;
        Reg.RootKey := HKEY_CURRENT_USER;
        If Reg.OpenKey('\Software\Microsoft\Windows\CurrentVersion\Internet Settings', True) then
        begin
          sItem:=Reg.ReadString('ProxyServer');
          sTmp:=ProxyTypeToString(Self.ProxyType);
          sTmp:=GetProxyRegString(sItem,sTmp);
          Reg.Writestring('ProxyServer', sTmp);
          Reg.WriteInteger('ProxyEnable', integer(UseProxy));
          Reg.CloseKey;
        end
      Finally
        Reg.Free;
      End;
    end;
    有详细的代码,要可以留下Email
      

  3.   

    To: BlueSoftEye(紫衣侠隐)
    要啊
    我的E-Mail:[email protected]
      

  4.   

    给我也发一份吧,急用呀.谢谢老大了.我的email:[email protected]
      

  5.   

    use UrlMkSetSessionOption Function and INTERNET_OPTION_PROXY flag
    http://msdn.microsoft.com/workshop/networking/moniker/reference/functions/urlmksetsessionoption.asp
      

  6.   

    To: BlueSoftEye(紫衣侠隐)
    谢谢!
    我的E-Mail:[email protected]
      

  7.   

    就算屏蔽了ctrl alt del 任务管理其还是会出来,
    郁闷
      

  8.   

    To: BlueSoftEye(紫衣侠隐)
    谢谢!
    我的E-Mail:[email protected]
    我现在也急需这部分代码,非常感谢.
      

  9.   

    我的E-mail:[email protected]
    谢谢
      

  10.   

    To: BlueSoftEye(紫衣侠隐)
    谢谢!
    我的E-Mail:[email protected]
    我现在也急需这部分代码,非常感谢.