C ++ / WinInet Изменить настройки прокси Windows 7

[Отказ от ответственности: это особая проблема для Windows 7, насколько я могу судить] Я '

у нас есть блок кода, который изменяет настройки прокси-сервера в реестре Windows, а затем вызывает WinInet API со следующим:

InternetSetOption(NULL, INTERNET_OPTION_SETTINGS_CHANGED, NULL, 0);
InternetSetOption(NULL, INTERNET_OPTION_REFRESH , NULL, 0);

Это вполне нормально в XP и Vista, однако в Windows 7 что-то явно изменилось, и по каким-то причинам предыдущие разделы реестра вставляются обратно, заставляя его работать не так, как ожидалось.

Если я закомментирую эти две строки кода, значения реестра останутся неизменными, но, очевидно, IE и другие приложения, полагающиеся на эту информацию прокси, не имеют представления о том, что конфигурация изменилась.

Есть ли лучший способ обработать уведомление системы о том, что параметры изменились и их необходимо перезагрузить? Я несколько дней искал эту проблему, переключал компиляторы и т. Д., И ничто из того, что я делал, не заставляло его работать так, как я ожидал в Windows 7.

Ответы на вопрос(2)

Ваш ответ на вопрос