使用InternetReadFile时要注意读取完整数据

时间:2021-05-05 04:56:20

使用这个api读取数据后,即使数据不完整,该函数不会报任何错,GetLastError也显示操作成功。使用时要注意通过其参数判断是否读取完毕

void InternetReadFileEx(HINTERNET request, std::string& data) {
DWORD readed = ;
char buffer[];
do {
ZeroMemory(buffer, );
InternetReadFile(request, buffer, , &readed);
buffer[readed] = '\0';
data += buffer;
} while(readed);
}