JA DLA VC++, u mnie te CHttpConection nie chceily sie laczyc, i tez nie moglem sobie poradzic, jednak znalazlem rozwiazanie i dziala:), ale nie wiem czy bledow eni bedze ie robile, potrzebne do tego jeszcze sprawzania polaczenia, przy ktorym mi sie wiesza, moe ma ktos rozwiazanie na sprawdzanie polaczenia, bo mi sie wiesza.
int iError=0;
CInternetSession *inses;
CString str("AppUnknown");
CStdioFile * pFile=0;
inses=new CInternetSession(str, 1, INTERNET_OPEN_TYPE_DIRECT );
iError=GetLastError();
pFile=inses->OpenURL(strJaki, 1,
INTERNET_FLAG_TRANSFER_BINARY, NULL, 0);
iError=GetLastError();//nie wiem czemu tutaj jest blad 2 zwracany. skoro czyta
//teraz kopiujemy pliki
CFile cfd;
register unsigned int iSize=0, size=0, i=0, iTotalSize=0;;
unsigned char *znak;
znak=new unsigned char[BUFFER_SIZE];
cfd.Open(strGdzie, CFile::modeCreate | CFile::modeWrite );
iError=GetLastError();
-
iSize=GetFileSize(pFile, 0);*jak dam w parametrze to zwroci mi duza liczbe
-
size=pFile->GetLength();*to zwraca nam mala liczbe
// iError=GetLastError();
//teraz kopiujemy
iSize=BUFFER_SIZE;
// while((int)(*(znak+(i++)))!=255)
// for(i=0;i<size;i++)
while(BUFFER_SIZE == iSize)
{
iSize=pFile->Read(znak, BUFFER_SIZE);//zwraca ilosc przeczytajnych znakow, jesli ilosc przeczytanych nie rowna sie zakladanej ilosci do przeczytania to znaczy ze koniec pliku
cfd.Write(znak, iSize);//tylko tyle ile przeczytalem
iTotalSize+=iSize;
printf(".");
}
printf("\n\n\t\t\tKopiowanie zakonczone pomyslnie.\n\t\t\tMilej zabawy:)\n\n");
pFile->Close();
cfd.Close();
delete [] znak;