I want to display my image on window without saving it.
When data is received window size changes but there is no display
on window.
My Code is:
Can you find my error,,,where I'm doing wrong?Code:int iBufferLength; int iEnd; int iSpaceRemaining; int i; iBufferLength = iSpaceRemaining = sizeof(chIncomingDataBuffer); iEnd = 0; iSpaceRemaining -= iEnd; iBytesRead = recv(Socket, chIncomingDataBuffer+iEnd, iSpaceRemaining, 0); iEnd+=iBytesRead; if (iBytesRead == SOCKET_ERROR) MessageBox(hWnd, "Socket Error", "Connection strt", MB_ICONINFORMATION|MB_OK); chIncomingDataBuffer[iEnd] = '\0'; if (lstrlen(chIncomingDataBuffer) != 0) { /*FILE* pfile; pfile = fopen("test.jpeg", "wb"); fwrite(chIncomingDataBuffer,1, iBytesRead ,pfile); fclose(pfile);*/ GetWindowRect(hWnd, &rect); SetWindowPos(hWnd, NULL, rect.left, rect.top, cBitmap.bmWidth, cBitmap.bmHeight, 0); HDC ThisDC = GetDC(hWnd); DeleteDC(RemoteDC); RemoteDC = CreateCompatibleDC(ThisDC); DeleteObject(hbitmap); hbitmap= CreateCompatibleBitmap(ThisDC, cBitmap.bmWidth, cBitmap.bmHeight); SelectObject(RemoteDC, hbitmap); ReleaseDC(hWnd, ThisDC); BITMAPINFO bi; HBITMAP hbmap; int bisize = sizeof(BITMAPINFO); memcpy(&bi, chIncomingDataBuffer+iEnd, bisize ); SetDIBits(RemoteDC, hbitmap, 0, cBitmap.bmHeight, chIncomingDataBuffer+iEnd+bisize, &bi, DIB_RGB_COLORS); InvalidateRect(hWnd, NULL, false);



LinkBack URL
About LinkBacks


