1,183
社区成员
发帖
与我相关
我的任务
分享
procedure TFMain.btnSetClick(Sender: TObject);
begin
// TSetProxy.Create(edtIp.Text, EdtPort.Text);
ChangeProxy(edtIp.Text, EdtPort.Text,'1',true);
ShowMessage('设置完毕!');
end;
function TFMain.ChangeProxy(const Proxy, Port, ByPass: string; const bEnabled: boolean = True): boolean;
var
reg: Tregistry;
info: INTERNET_PROXY_INFO;
Fproxy: string;
begin
Result := False;
FProxy := Format('%s:%s', [Proxy, Port]);
reg := Tregistry.Create;
try
reg.RootKey := HKEY_CURRENT_USER;
if reg.OpenKey('\Software\Microsoft\Windows\CurrentVersion\Internet Settings', True) then
begin
reg.Writestring('ProxyServer', Fproxy);
reg.WriteInteger('ProxyEnable', integer(bEnabled));
info.dwAccessType := INTERNET_OPEN_TYPE_PROXY;
info.lpszProxy := pAnsichar(proxy); //pchar
info.lpszProxyBypass := pAnsichar(ByPass);
//InternetSetOption((nil,INTERNET_OPTION_PROXY, @info, SizeOf(Info));
//InternetSetOption(nil, INTERNET_OPTION_SETTINGS_CHANGED, nil, 0);
InternetSetOption(nil, INTERNET_OPTION_SETTINGS_CHANGED, nil, 0);
InternetSetOption(nil, INTERNET_OPTION_REFRESH, nil, 0);
Result := True;
end
finally
reg.CloseKey;
reg.free;
end;
end;
procedure TFMain.btn1Click(Sender: TObject);
begin
ChangeProxy(edtIp.Text, EdtPort.Text,'1',False);
ShowMessage('设置完毕!');
end;
end.