- 869 名前:834 [2007/12/01(土) 21:48:40 ]
- こんなに大勢が答えてくれるなんてありがてぇありがてぇ
コードはこうなってるが、素人なんで汚いだろうけど #define CHUNK_SIZE 1024 bySrc = GlobalAlloc(GPTR, 1); iCount = 0; dwTotal = 0; do{ ZeroMemory(byTemp, CHUNK_SIZE + 1); if(InternetReadFile(hUrl, byTemp, CHUNK_SIZE, &dwRead) == FALSE){ //失敗したら MessageBox(hwnd, TEXT("読み込みに失敗しました。"), TEXT("InternetReadFile Failure"), MB_OK | MB_ICONWARNING); return -1; } dwTotal += dwRead; bySrc = GlobalReAlloc(bySrc, dwTotal + 1, GMEM_MOVEABLE); if(bySrc == NULL){ wsprintf(szBuffer, TEXT("%d 回目の読み込みで、計%dByte(新たに%dByte)の確保に失敗しました。"), iCount + 1, dwTotal, dwRead); MessageBox(hwnd, szBuffer, TEXT("GlobaReAlloc Failure"), MB_OK | MB_ICONWARNING); GlobalFree(bySrc); return -1; } memcpy(bySrc + (CHUNK_SIZE * iCount), byTemp, dwRead); iCount++; }while(dwRead); で、そのまま強制終了になったり、運がよければ「("20回目の読み込みで、計19984dByte(新たに1024Byte)の確保に失敗しました。」みたいな感じのエラーが表示される なんでかわからん
|

|