[면책 조항 :이 지금까지 내가 말할 수있는 윈도우 7 특정 문제입니다]C++/WinInet을 변경 프록시 설정 윈도우 7
내가 Windows 레지스트리에 프록시 설정을 변경하는 코드 블록을 가지고, 다음과 WinInet이 API를 호출 진행 :
InternetSetOption(NULL, INTERNET_OPTION_SETTINGS_CHANGED, NULL, 0);
InternetSetOption(NULL, INTERNET_OPTION_REFRESH , NULL, 0);
이 그러나 분명히 변경 윈도우 7 일에, XP 및 Vista에서 완전히 잘하고, 어떤 이유로 이전의 레지스트리 키는 원인에 다시 주입받을 예상대로 작동하지 않습니다.
두 줄의 코드를 주석으로 처리하면 레지스트리 값이 달라질 수 있지만 분명히 IE와 프록시 정보를 사용하는 다른 응용 프로그램에서는 구성이 변경되었다는 것을 알지 못합니다.
옵션이 변경되어 다시로드해야한다는 사실을 시스템에 알리는 방법이 있습니까? 이 문제에 대한 시일을 찾고 스위치 컴파일러를 찾았습니다. Windows 7에서 기대했던대로 작동하지 않으면 아무 것도 작동하지 않습니다.
빙고 - 레지스트리에서 직접 파고가 지원되지 않습니다. 원 포인트 : 제대로 작동하려면 INTERNET_OPTION_REFRESH 대신 INTERNET_OPTION_PROXY_SETTINGS_CHANGED 옵션을 설정해야합니다. 프록시 서버가 고정되어 있어도 (예 : proxyType | = PROXY_TYPE_PROXY 대신 사용) 프록시 서버를 사용할 때도 PROXY_TYPE_DIRECT를 OR해야합니다. '모든 프록시 서버를 사용할 수 없습니다.'라는 잘못된 내용입니다. 당신은 또한 아마도 맹목적으로 그 우회 목록을 지우지 말았어야 ... – EricLaw
"설정 및 인터넷 옵션"검색에 대한 MSDN : http://msdn.microsoft.com/en-us/library/windows/desktop/aa385384(v= vs.85) .aspx 및 일부 이전 KB : http://support.microsoft.com/kb/226473/en-us –