[Отказ от отговорност: това е специфичен проблем за 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.