I have set proxy server in IE. I prompt user for credentials using InternetErrorDlg API. Prompt appears in IE 9 and below. In IE10 and IE11 prompt doesn't appear.
Below is the code sample.
DWORD dwStatusCode(0);
DWORD dwStatusSize = sizeof(DWORD);
DWORD headerIndex = 0;
::HttpQueryInfo(hRequest, HTTP_QUERY_FLAG_NUMBER | HTTP_QUERY_STATUS_CODE,&dwStatusCode, &dwStatusSize, &headerIndex);
if (dwStatusCode == HTTP_STATUS_PROXY_AUTH_REQ)
{
DWORD dwFlags = FLAGS_ERROR_UI_FILTER_FOR_ERRORS |
FLAGS_ERROR_UI_FLAGS_CHANGE_OPTIONS |
FLAGS_ERROR_UI_FLAGS_GENERATE_DATA;
DWORD res =::InternetErrorDlg(GetDesktopWindow(), hRequest, ERROR_INTERNET_INCORRECT_PASSWORD, dwFlags, NULL);
}