请问怎样用程序改变当前机器的IE代理服务器地址?
就是用程序实现:
Internet属性-》连接-》局域网设置-》为LAN使用代理服务器
的设置。
要用程序实现不用代理与用代理的转换,以及在不同代理地址之间的转换。
最好能有脚本语言,能在cmd下执行的,这样可以写在bat文件中,用其他方法实现也可。
问题点数:50、回复次数:10Top
1 楼Idle_(阿呆)回复于 2005-08-03 13:39:10 得分 0
用InternetSetOption这个api, 其中Flag为INTERNET_OPTION_PROXY
具体用法查msdnTop
2 楼BlueSoftEye(紫衣侠隐)回复于 2005-08-03 13:52:05 得分 0
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
Top
3 楼VBer2(俗人)回复于 2005-08-03 13:58:04 得分 0
To: BlueSoftEye(紫衣侠隐)
要啊
我的E-Mail:wmab@163.comTop
4 楼fbyzlp()回复于 2005-10-10 10:32:02 得分 0
给我也发一份吧,急用呀.谢谢老大了.
我的email:fengbenyong@163.comTop
5 楼jiangsheng(蒋晟.Net[MVP])回复于 2005-10-10 11:45:01 得分 0
use UrlMkSetSessionOption Function and INTERNET_OPTION_PROXY flag
http://msdn.microsoft.com/workshop/networking/moniker/reference/functions/urlmksetsessionoption.aspTop
6 楼iyghost()回复于 2005-12-28 21:18:26 得分 0
To: BlueSoftEye(紫衣侠隐)
谢谢!
我的E-Mail:hexin@mail.jtjc.cnTop
7 楼bluejing0(此名已被占用!)回复于 2005-12-28 22:26:48 得分 0
就算屏蔽了ctrl alt del 任务管理其还是会出来,。。。
郁闷Top
8 楼cf_journey(企必达网络)回复于 2006-03-02 16:57:19 得分 0
To: BlueSoftEye(紫衣侠隐)
谢谢!
我的E-Mail:dweisoft@163.com
我现在也急需这部分代码,非常感谢.Top
9 楼VBer2(俗人)回复于 2006-03-13 15:07:26 得分 0
我的E-mail:wmab@163.com
谢谢Top
10 楼iyghost()回复于 2006-03-16 14:20:38 得分 0
To: BlueSoftEye(紫衣侠隐)
谢谢!
我的E-Mail:5151web@gmail.com
我现在也急需这部分代码,非常感谢.Top




