Модераторы: Snowy, Poseidon, MetalFan
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Узнать информацию о прокси сервере 
:(
    Опции темы
Poseidon
Дата 19.5.2005, 00:14 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Delphi developer
****


Профиль
Группа: Комодератор
Сообщений: 5273
Регистрация: 4.2.2005
Где: Гомель, Беларусь

Репутация: 4
Всего: 133



Код
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; 

{************************************************************************** 
* NAME:    GetProxyServer 
* DESC:    Proxy-Server Einstellungen abfragen 
* PARAMS:  protocol => z.B. 'http' oder 'ftp' 
* RESULT:  [-] 
* CREATED: 08-04-2004/shmia 
*************************************************************************} 
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); 
  Label1.Caption := ProxyServer; 
  label2.Caption := IntToStr(ProxyPort); 
end; 



--------------------
Если хочешь, что бы что-то работало - используй написанное, 
если хочешь что-то понять - пиши сам...
PM MAIL ICQ   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Delphi: Сети"
Snowy
Poseidon
MetalFan

Запрещено:

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делится вскрытыми компонентами

  • Литературу по Дельфи обсуждаем здесь
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь
  • 90% ответов на свои вопросы можно найти в DRKB (Delphi Russian Knowledge Base) - крупнейшем в рунете сборнике материалов по Дельфи

Если Вам помогли и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, Snowy, Poseidon, MetalFan.

 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Delphi: Сети | Следующая тема »


 




[ Время генерации скрипта: 0.0510 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.