如何读去代理服务器设置?(200分)

  • 主题发起人 主题发起人 fbc-gc
  • 开始时间 开始时间
F

fbc-gc

Unregistered / Unconfirmed
GUEST, unregistred user!
最近写了一个程序,要每隔一段时间就检查是否设置了代理服务器。我用读去注册表的方法
可以实现,但如果监视频率变大,硬盘灯就会不停的闪烁,用户肯定不会喜欢的。
有那位大虾知道如何解决这个问题(不读硬盘得到是否设置了代理服务器)?谢谢。
我感觉可能会用到wininet.pas里的一些东西,如InternetQueryOption等。
望大虾原码告之,谢谢!!!!!

 
不是啊,有一个件是注册表的变化的API,监视Proxy的那个键就可以了~~~~~~~~:)
还有一个方法就是处理系统设置改变的消息,处理一下就可以了。
 
下面代码 可以实现,但不知道原理:
procedure UpdataPosition;
var
info:TInternetProxyInfo;
i:cardinal;
begin
try
InternetQueryOption(nil,INTERNET_OPTION_PROXY,@info,i);
except
begin
showmessage('Query INTERNET_OPTION_PROXY error at '+inttostr(i));
exit;
end;
end;
//不使用代理时i=12,使用代理时配置不同i的值不定,好象都>=60
//谁可以解释一下????????????????????????????
//????????????????????????????????????

if (i<>12) then
begin
//操作
end
else if (i=12) then
begin
//操作
end;
end;
 
i返回的是info的大小,这样只能判断是否使用了代理
 
接受答案了.
 
后退
顶部