>>dwFileSize = GetFileSize(hFile, NULL);
try using the lpFileSizeHigh param (rather than leaving it NULL)
Code:SetLastError(ERROR_SUCCESS); dwFileSizelow=GetFileSize(hFile,&dwFileSizeHigh); if(dwFileSizeLow == INVALID_FILE_SIZE) if(GetLastError()!= ERROR_SUCCESS)//or NO_ERROR