Это ошибка WinINet, поэтому сообщение, связанное с ней, находится в WinINet.dll. Вам просто нужно сообщить об этом FormatMessage (), чтобы он мог получить правильное сообщение:
FormatMessage(
// flags:
FORMAT_MESSAGE_ALLOCATE_BUFFER // allocate buffer (free with LocalFree())
| FORMAT_MESSAGE_IGNORE_INSERTS // don't process inserts
<b>| FORMAT_MESSAGE_FROM_HMODULE, // retrieve message from specified DLL</b>
// module to retrieve message text from
<b>GetModuleHandle(_T("wininet.dll")),</b>
// error code to look up
errCode,
// default language
0,
// address of location to hold pointer to allocated buffer
(LPTSTR)&lpMsgBuf,
// no minimum size
0,
// no arguments
NULL );
Это официально задокументировано на MSDN в разделе «Обработка ошибок» документации WinINet.
Обратите внимание, что вы можете добавить флаг FORMAT_MESSAGE_FROM_SYSTEM
обратно, если хотите использовать эту процедуру для ошибок, которые могут или не могут не исходить из WinINet: с этим флагом FormatMessage()
вернуться к таблице системных сообщений, если ошибка не найдена в wininet.dll. Однако не не убирает флаг FORMAT_MESSAGE_IGNORE_INSERTS .