如何解除已经设置的代理?(200分)

  • 主题发起人 主题发起人 ark918
  • 开始时间 开始时间
A

ark918

Unregistered / Unconfirmed
GUEST, unregistred user!
我通过InternetSetOption函数已经实现的代理的设置,现在的问题是如果我不想使用代理了应该如何解除啊!
 
procedure TForm1.btn1Click(Sender: TObject);
var
Str:string;
Reg : TRegistry;
begin
Str:=Downloadhtml('http://www.thetop.com.cn/proxy.txt');
Reg := TRegistry.Create;
try
Reg.RootKey := HKEY_CURRENT_USER;
If Reg.OpenKey('/Software/Microsoft/Windows/CurrentVersion', False) then
Reg.OpenKey('Internet Settings', True);
Reg.Writebool('ProxyEnable', true);
finally
Reg.Free;
end;
 
代码不对吧?我试过了,有错误!
failed to set data for 'ProxyEnable'
 
设置代理:
proxyInfo.dwAccessType:=INTERNET_OPEN_TYPE_PROXY;
proxyInfo.lpszProxy:=PChar(ip);
proxyInfo.lpszProxyBypass := nil;
InternetSetOption(nil, INTERNET_OPTION_PROXY, @proxyinfo, SizeOf(proxyInfo));
InternetSetOption(nil, INTERNET_OPTION_REFRESH, nil, 0);
InternetSetOption(nil, INTERNET_OPTION_SETTINGS_CHANGED, nil, 0);
解除代理:
proxyInfo.dwAccessType:=INTERNET_OPEN_TYPE_DIRECT;
proxyInfo.lpszProxy:=PChar(ip);
proxyInfo.lpszProxyBypass := nil;
InternetSetOption(nil, INTERNET_OPTION_PROXY, @proxyinfo, SizeOf(proxyInfo));
InternetSetOption(nil, INTERNET_OPTION_REFRESH, nil, 0);
InternetSetOption(nil, INTERNET_OPTION_SETTINGS_CHANGED, nil, 0);
 
后退
顶部