Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > C/C++ программирование > C/C++ Сетевое программирование
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 29.05.2014, 11:03   #1
Istrafiloff
Пользователь
 
Аватар для Istrafiloff
 
Регистрация: 05.07.2011
Сообщений: 33
Вопрос Как использовать системные настройки прокси?

Добрый день!
Пишу программку на Си с использованием libcurl. Теперь появилась необходимость использовать системные настройки прокси (чтобы не задавать их повторно в моей программке), т. е. те, что заданы в IE. Вопрос: как можно их получить/заюзать?
Цитата:
Читайте книги. Некоторые из них специально для этого написаны
Istrafiloff вне форума Ответить с цитированием
Старый 29.05.2014, 11:33   #2
waleri
Старожил
 
Регистрация: 13.07.2012
Сообщений: 6,493
По умолчанию

http://msdn.microsoft.com/en-us/libr...(v=vs.85).aspx
http://msdn.microsoft.com/en-us/libr...(v=vs.85).aspx
waleri вне форума Ответить с цитированием
Старый 29.05.2014, 12:57   #3
Lardes
Форумчанин
 
Аватар для Lardes
 
Регистрация: 19.08.2011
Сообщений: 329
По умолчанию

Istrafiloff, кусок на Delphi (думаю перевести не станет затруднительным):

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

{ ... }

var
  ProxyServer: string;
  ProxyPort: Integer;
begin
  GetProxyServer('http', ProxyServer, ProxyPort);
Lardes вне форума Ответить с цитированием
Старый 30.05.2014, 12:55   #4
Istrafiloff
Пользователь
 
Аватар для Istrafiloff
 
Регистрация: 05.07.2011
Сообщений: 33
По умолчанию

Спасибо большое! Надеюсь, это то, что нужно (пока нет возможности проверить). Отпишусь, как сделаю)
Цитата:
Читайте книги. Некоторые из них специально для этого написаны
Istrafiloff вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
настройки прокси сервера Snekich Microsoft Office Excel 2 21.02.2012 12:42
установить настройки прокси izenkool Общие вопросы C/C++ 0 07.05.2009 17:17
Как Использовать прокси - сервер... Phantom Работа с сетью в Delphi 6 12.04.2009 14:35
Как использовать прокси? Adm Работа с сетью в Delphi 6 14.10.2008 09:18