怎样检测你的IE使用的代理服务器

2008-04-09 04:23:24来源:互联网 阅读 ()

新老客户大回馈,云服务器低至5折

//-----------------------------------------------
//记得引用 WinInet 单元
//-----------------------------------------------
uses
WinInet

//----------------------------------------------
//定义要使用的函数
//----------------------------------------------




function GetProxyInformation: string;
var
ProxyInfo: PInternetProxyInfo;
Len: LongWord;
begin
Result := '''''''';
Len := 4096;
GetMem(ProxyInfo, Len);
try
if InternetQueryOption(nil, INTERNET_OPTION_PROXY, ProxyInfo, Len) then
if ProxyInfo^.dwAccessType = INTERNET_OPEN_TYPE_PROXY then
begin
Result := ProxyInfo^.lpszProxy
end;
finally
FreeMem(ProxyInfo);
end;
end;


procedure GetProxyServer(protocol: string; var ProxyServer: string;
var ProxyPort: Integer);
var
i: Integer;
proxyinfo, ps: string;
begin
ProxyServer := '''''''';
ProxyPort := 0;

proxyinfo := GetProxyInformation;
if proxyinfo = '''''''' then
Exit;

protocol := protocol ''''='''';

i := Pos(protocol, proxyinfo);
if i > 0 then
begin
Delete(proxyinfo, 1, i Length(protocol));
i := Pos('''';'''', ProxyServer);
if i > 0 then
proxyinfo := Copy(proxyinfo, 1, i - 1);
end;

i := Pos('''':'''', proxyinfo);
if i > 0 then
begin
ProxyPort := StrToIntDef(Copy(proxyinfo, i 1, Length(proxyinfo) - i), 0);
ProxyServer := Copy(proxyinfo, 1, i - 1)
end
end;
//----------------------------------------------------------------
//使用范例
//----------------------------------------------------------------
procedure TForm1.Button1Click(Sender: TObject);
var
ProxyServer: string;
ProxyPort: Integer;
begin
GetProxyServer(''''http'''', ProxyServer, ProxyPort);
if ProxyPort=0 then
begin
ShowMessage(''''你的IE没有使用的代理服务器'''')
end
else
Label1.Caption := ProxyServer;
label2.Caption := IntToStr(ProxyPort);

end;

标签:

版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有

上一篇:Delphi7 从子线程中发送消息到主线程触发事件执行

下一篇:关于MIDAS的安全问题的解决方案