Как я могу программно проверить, находится ли мой компьютер за прокси?

Я пытаюсь найти хороший способ определить, работает ли мой компьютер за прокси-сервером или нет.

Я просматриваю WinAPI, но не могу найти ничего полезного. Я прочитал, что достаточно открыть TCP подключение через порт 80 к интернет-адресу, но действительно ли это лучшее решение?

Я не хочу проверять настройки прокси-сервера каждого браузера, но глобальные настройки прокси-сервера системы ... если есть что-то подобное.

Я должен использовать Windows (XP и Windows 7 и новее должны поддерживаться) и C++


person seveves    schedule 09.07.2013    source источник
comment
Это не абсолютная вещь. У вас может быть прокси для любого подмножества IP-адресов и, возможно, более одного. В разных браузерах могут быть разные прокси. Итак, объясните своему боссу, что ни один ответ не будет на 100% правильным.   -  person MSalters    schedule 10.07.2013
comment
Итак, я должен отредактировать свой вопрос ... Меня интересуют только настройки системного прокси.   -  person seveves    schedule 10.07.2013
comment
Вы имеете в виду настройки Internet Explorer? Обратите внимание, что в ЕС версии Windows N иногда не включают IE.   -  person MSalters    schedule 10.07.2013


Ответы (1)


Вы можете использовать WinINet API, см. «Настройка и получение параметров Интернета» здесь:

http://msdn.microsoft.com/en-us/library/windows/desktop/aa385384%28v=vs.85%29.aspx#general_option

Это предполагает, что настройка прокси-сервера установлена ​​в параметрах Internet Explorer.

person PowerApp101    schedule 09.07.2013
comment
Это, вероятно, не очень хорошее решение, по какой-то причине в моем университете IE работает без прокси-сервера, тогда как, например, Firefox нуждается в нем. Я бы не установил прокси в IE. - person Adrian Jandl; 09.07.2013
comment
@AdrianJandl Я не думаю, что это возможно. Разница в том, что университет настроил все так, что IE автоматически использует прокси-сервер, тогда как вам решать, как настроить Firefox. - person James Kanze; 09.07.2013
comment
@JamesKanze: IE может работать через сервер MS ISA, выступающий в роли брандмауэра или NAT. - person MSalters; 10.07.2013