Я получаю сбои глубоко в wininet.dll.
Сбой при попытке прочитать нулевую ячейку памяти в HTTP_REQUEST_HANDLE_OBJECT::ReleaseConnection
Это ошибка в реальной DLL и не вызвана неправильным использованием?
WinInet! HTTP_REQUEST_HANDLE_OBJECT :: ReleaseConnection + 0x60
WinInet! HTTP_REQUEST_HANDLE_OBJECT :: CloseConnection + 0x84
WinInet! HTTP_REQUEST_HANDLE_OBJECT :: ReadData_Fsm + 0x5e8
WinInet! CFsm_ReadData :: RunSM + 0x2e
WinInet! CFSM :: Run + 0x39
WinInet! DoFsm + 0x25
WinInet! HTTP_REQUEST_HANDLE_OBJECT :: ReadData + 0x38
WinInet! HTTP_REQUEST_HANDLE_OBJECT :: HttpReadData_Fsm + 0x43
WinInet! CFsm_HttpReadData :: RunSM + 0x2e
WinInet! CFSM :: Run + 0x39
WinInet! DoFsm + 0x25
WinInet! HttpReadData + 0x67
WinInet! ReadFile_Fsm + 0x2d
WinInet! CFsm_ReadFile :: RunSM + 0x2b
WinInet! CFSM :: Run + 0x39
WinInet! DoFsm + 0x25
WinInet! InternetReadFile + 0x3ca
В контексте я пытаюсь загрузить файл. Я звоню
InternetReadFile (hFile, lpBuffer, dwNumberOfBytesToRead, lpdwNumberOfBytesRead);
Дескриптор hFile HINTERNET выглядит нормально (значение 0x00cc0024, что кажется допустимым), dwNumberOfBytesToRead - 20000.
Мой размер буфера составляет 131000, что тоже хорошо.
Дело в том, что мой код работает 99,9999% времени!