Zdravím,
napsal jsem si ve Win32 oknovou aplikaci která slouží jako server s asynchroními sockety. Všechno pracuje v pořádků až na to že mam takovej menší problém s přijímáním dat od klienta.
Mam char buffer o velikosti 300 bajtů do kterého přijímám zprávu, ale jakmile se zpráva zkopíruje do bufferu (zprává má velikost asi 40 bytu) a poté vytisknu do textboxu přes sendmessage tak mi to vytiskne zprávu a zbytek bufferu tedy ty "prázdná místa" mě vytiskne jako divný znaky. Napadlo mě něco ve smyslu kdyby sendmessage měl parametr pro délku bufferu ale to nemá. Nebo nějak buffer oříznout. Řešení by bylo asi mnoho ale jaké by bylo nejideálnější?
V klientu by chyby být neměla to samé mě to dělá i při telnetu (TCP/IP).
......
if(LOWORD(lParam) == FD_READ)
{
char recvBuff[300];
recv(hSock, recvBuff, strlen(recvBuff), NULL);
.....
Nějaký nápady?