יש התקדמות, אבל עדין בחלק מהטקסט מקבל ג'יבריש
אני כרגע רק בשלב של לקחת את הפלט שקיבלתי מהשרת ולהעביר אותו לקובץ.
צרפתי תמונה שמראה שבחלק מהטקסט מקבל ג'יבריש.
לא מצליח להבין היכן הטעות.
להלן החלק הרלונטי בקוד שמראה כיצד אני מקבל את הנתונים, משרשר את הנתונים ל-str_return שהוא יחזיק לי את הפלט (אגב, לא יודע אם ב-C++ יש חלופה ל-realloc).
בסופו של דבר לאחר שהפעולה מסחיימת אני מחזיר את str_return ובתוכנית הראשית אני פשוט כותב לקובץ את הפלט הזה.
int curr_size_str_return = 1;char* str_return = (char *)malloc(curr_size_str_return);
strcpy_s(str_return, curr_size_str_return, "");
// Receive until the peer closes the connectiondo { iResult = recv(ConnectSocket, recvbuf, recvbuflen, 0); // Bytes received if (iResult > 0) { printf("Bytes received: %d\n", iResult); str_return = (char *)realloc(str_return, curr_size_str_return=(curr_size_str_return + recvbuflen)); strcat_s(str_return, curr_size_str_return, recvbuf); } else if (iResult == 0) printf("Connection closed\n"); else printf("recv failed with error: %d\n", WSAGetLastError());} while (iResult > 0);return(str_return);