Spróbowałem coś takiego u klienta:
char* sendtcp = new char[1024];
connect(sock, (sockaddr*)&saddr, sizeof(sockaddr));
for (int x = 0; x < 6075; x++)
{
for (int i = 0; i < 1024; i++) sendtcp[i] = bits[(x*1024)+i];
send(sock,sendtcp,1024,0);
}
closesocket(sock);
(bits to tablica typu unsigned char [ale zawiera same liczby od 0 do 255] która ma te 6220800 elementów)
Potem takie odbieranie na serwerze:
for (int x = 0; x < 6075; x++)
{
char* get = new char[1024];
recv(sock,get,1024,0);
for (int i = 0; i < 1024; i++) index[(x*1024)+i] = get[i];
}
FILE *f = fopen("C:\dump.raw", "wb");
fwrite(index, 1, 1920*1080*3, f);
fclose(f);
(tutaj index to ta duża tablica)
Jak na razie program ma przesłać bitmapę 1920x1080 i ją zapisać do pliku. Jakieś korekty żeby mój kod działał? Wydaje mi się, że raczej wszystko ok lecz na serwerze index to same 0, a u klienta to dobra bitmapa.