Ich versuche, die Proxy-Einstellung ("Einstellungen automatisch erkennen") zu erfassen. Mein Code funktioniert unter XP und Vista. Aber er funktioniert NICHT unter Windows 7
Bitte beachten Sie die Details der Zielplattform
Windows 7 Enterprise, IE 8.0.7600.16385, Wininet.dll 8.0.7600.16535
Bitte sehen Sie sich das Codeschnipsel an
INTERNET_PER_CONN_OPTION_LIST List;
INTERNET_PER_CONN_OPTION Option[1];
unsigned long nSize = sizeof(INTERNET_PER_CONN_OPTION_LIST);
Option[0].dwOption = INTERNET_PER_CONN_FLAGS;
List.dwSize = sizeof(INTERNET_PER_CONN_OPTION_LIST);
List.pszConnection = NULL;
List.dwOptionCount = 1;
List.dwOptionError = 0;
List.pOptions = Option;
if(!InternetQueryOption(NULL, INTERNET_OPTION_PER_CONNECTION_OPTION, &List, &nSize))
AfxMessageBox(L"InternetQueryOption failed! (%d)\n");
TCHAR a[100];
swprintf(a, L"Flag value is : %d",Option[0].Value.dwValue, 80);
AfxMessageBox(a);
Aber unter Windows 7, selbst wenn die Option "Einstellungen automatisch erkennen" im IE aktiviert ist, sagt das Programm, dass dieses Kennzeichen nicht gesetzt ist
Ich versuchte mit WinHttp api auch wie unten gezeigt.
WINHTTP_CURRENT_USER_IE_PROXY_CONFIG stProxyConfig = {0};
WinHttpGetIEProxyConfigForCurrentUser(&stProxyConfig);
if (stProxyConfig.fAutoDetect == TRUE)
AfxMessageBox(L"Auto proxy detection enabled");
else
AfxMessageBox(L"Auto proxy detection disabled");
Unter Windows 7 kann der obige Code auch die Option "Einstellungen automatisch erkennen" nicht erfassen. Jeder Beitrag zu diesem ist sehr geschätzt.
Danke John