Есть ли способ в C ++, чтобы установить системный прокси Windows с учетными данными аутентификации так что это сразу повлияет на все работающие программы (браузеры и т. д.), но:
Я действительно ищу предварительно проверенный прокси-сервер системного уровня.
Спасибо за любую помощь. Задайте любые вопросы, если что-то неясно.
Использование: c ++ 11, Windows 7
РЕДАКТИРОВАТЬ 1: Мне нужно установить это программно, поэтому, пожалуйста, не предлагайте никаких ручных действий.
РЕДАКТИРОВАТЬ 2: Частично приемлемым является способ программной установки прокси-сервера без предварительной аутентификации, но с соблюдением требования 1. (Не требует перезапуска любого браузера).
Настройки прокси на уровне системы находятся в реестре \Software\Microsoft\Windows\CurrentVersion\Internet Settings
улей в HKLM
для всех пользователей и HKCU
улей для текущего пользователя.
Есть официальный инструкция как изменить его через файл REG, вам не нужно писать код.
Но главная проблема заключается в следующем: любое приложение может иметь свои собственные настройки прокси, где оно 1) может предпочитать настройки уровня системы, но позволяют переопределить их пользователем, 2) вообще не использовать системные настройки.
В корпоративных средах эта проблема решается как:
Поэтому, когда вы используете полный программный стек Microsoft — вам все равно не нужно писать код 🙂
Более того, ISA Firewall Client использует недокументированные возможности Windows и будет слишком сложно написать что-то, чтобы заменить это своими собственными навыками «C ++ 11».