如何使用代码实现更换代理(分不够可以加) ( 积分: 50 )

  • 主题发起人 主题发起人 fjxujin
  • 开始时间 开始时间
F

fjxujin

Unregistered / Unconfirmed
GUEST, unregistred user!
如何使用代码实现更换代理
 
如何使用代码实现更换代理
 
http://www.delphibbs.com/delphibbs/dispq.asp?lid=2444621 有答案
 
利用 INTERNET_OPTION_PROXY 及 INTERNET_OPTION_SETTINGS_CHANGED 兩函數。
不需改註冊表。
uses wininet

procedure TForm1.ProxyComboBox1Exit(Sender: TObject);
var
inf:INTERNET_PROXY_INFO;

len:DWord;

s:string;
begin
ServerDir1Exit(Sender);

s:=ProxyComboBox1.text;

if trim(s)<>'' then
begin
inf.dwAccessType:=INTERNET_OPEN_TYPE_PROXY;
inf.lpszProxy:=pchar(s);
inf.lpszProxyBypass:=nil;

len:=sizeof(inf);

InternetSetOption(nil, INTERNET_OPTION_PROXY, @inf, len);
InternetSetOption(nil, INTERNET_OPTION_SETTINGS_CHANGED, nil, 0);
end else
begin
inf.dwAccessType:=INTERNET_OPEN_TYPE_DIRECT;
inf.lpszProxy:=nil;
inf.lpszProxyBypass:=nil;

len:=sizeof(inf);

InternetSetOption(nil, INTERNET_OPTION_PROXY, @inf, len);
InternetSetOption(nil, INTERNET_OPTION_SETTINGS_CHANGED, nil, 0);
end;
end;
 
接受答案了.
 
后退
顶部