Автором темы был я.
Спасибо,
т.к. изначально предполагал парсинг с помощью IXMLDOM, то решил не исользовать динамический массив, а ограничиться HeapReAlloc.
do
{
dwNumberOfBytesAvailable = 0;
if(InternetQueryDataAvailable( m_hHttpRequest
,&dwNumberOfBytesAvailable
,NULL
,NULL))
{
RETAILMSG(1, (TEXT("InternetQueryDataAvailable() return %d bytes available\n"), dwNumberOfBytesAvailable));
if(dwNumberOfBytesAvailable == 0)
{
bDone = TRUE;
dwResult = ERROR_SUCCESS;
}
else
{
PBYTE pNewBlockOfData = NULL;
if(pData == NULL)
{
pNewBlockOfData = (PBYTE)HeapAlloc(GetProcessHeap(), HEAP_ZERO_MEMORY, dwNumberOfBytesAvailable + 1);
dwBytesAllocated += dwNumberOfBytesAvailable + 1;
}
else
{
pNewBlockOfData = (PBYTE)HeapReAlloc(GetProcessHeap(), HEAP_ZERO_MEMORY, pData, dwBytesAllocated + dwNumberOfBytesAvailable);
dwBytesAllocated += dwNumberOfBytesAvailable;
}
if(pNewBlockOfData != NULL)
{
pData = pNewBlockOfData;
dwNumberOfBytesRemaining = dwNumberOfBytesAvailable;
do
{
if(InternetReadFile( m_hHttpRequest
,(LPVOID)(pData + dwNumberOfBytesRetrieved)
,dwNumberOfBytesRemaining
,&dwNumberOfBytesReturned))
{
dwNumberOfBytesRemaining -= dwNumberOfBytesReturned;
dwNumberOfBytesRetrieved += dwNumberOfBytesReturned;
}
else
{
bDone = TRUE;
dwNumberOfBytesRemaining = 0;
dwResult = GetLastError();
RETAILMSG(1, (TEXT("InternetReadFile() error = %d \n"), dwResult));
}
}
while(dwNumberOfBytesRemaining > 0);
}
else
{
bDone = TRUE;
RETAILMSG(1, (TEXT("ReadHttpContent(): failed to allocate %d bytes \n"), dwNumberOfBytesAvailable));
dwResult = ERROR_NOT_ENOUGH_MEMORY;
}
}
}
else
{
bDone = TRUE;
dwResult = GetLastError();
RETAILMSG(1, (TEXT("InternetQueryDataAvailable() error = %d \n"), dwResult));
}
}
while(!bDone);
На всякий случай сразу реализовал и вывод в файл.
Вот теперь стою перед дилеммой как парсить HTML & XML. Впринципе, парсинг XML достаточно тривиален. Решил пойти стандартным путем, написал утилитный класс для использования IXMLDOM и сам парсер для сообщений, представленных в виде XML. А вот извлечения XML из HTML оставил на последок. Сначала решил посмотреть что люди пишут по этому поводу и набрел на знакомый ник
http://www.codeproject.com/KB/recipes/HTML_XML_Scanner.aspx 
Вообщем спасибо большое, все так стройненько и аккуратненько. Руки чешутся прикрутить поскорее