Уведомить WinINet после изменения политики прокси
Выберите операцию уведомления или обновления, соответствующую области действия параметров WinINet, и проверьте её возвращаемое значение.
Когда приложение WinINet меняет политику прокси, запись постоянного значения и принуждение существующего потребителя пересмотреть его — две отдельные операции. Используйте параметр WinINet, соответствующий изменяемой области.
| Параметр | Документированное назначение |
|---|---|
| INTERNET_OPTION_SETTINGS_CHANGED, 39 | Уведомляет систему об изменении параметров реестра, чтобы они были проверены при следующем вызове InternetConnect |
| INTERNET_OPTION_REFRESH, 37 | Повторно читает данные прокси для соответствующего дескриптора InternetOpen |
| INTERNET_OPTION_PROXY_SETTINGS_CHANGED, 95 | Уведомляет экземпляры WinINet об изменении параметров прокси |
Эти параметры используются через InternetSetOption. Требования к дескриптору и буферу относятся к выбранному параметру. Например, документация уведомления о параметрах прокси описывает пустой буфер и нулевую длину буфера, когда оповещаются все доступные экземпляры.
Держите обновление параметров, выбранный дескриптор и уведомление вместе в реализации. Проверяйте каждый логический результат и получайте ошибку Windows при неудачном вызове. Вспомогательная функция, игнорирующая любое возвращаемое значение, не может установить, удалось ли изменение или его уведомление.
Это поведение WinINet. Оно не перенастраивает несвязанный сеанс WinHTTP или явный прокси-объект приложения. Оно также не переносит установленное TCP-соединение к другому посреднику. Оценивайте только что созданное подходящее соединение при проверке применённого маршрута. Если другое приложение по-прежнему использует старый маршрут, определите источник его конфигурации, стек и учётную запись.