|
MemoryStream에 이미지 데이터를 넣으면 MemoryStream의 포지션이 가장 마지막으로 갑니다.
만약 100 사이즈의 데이터를 넣으면 포지션은 100으로 됩니다.
TMemoryStream *p = new TMemoryStream();
TJPEGImage *m_JpegImage = new TJPEGImage();
p->WriteBuffer(ImageProcess->GetStream(), ImageProcess->GetStreamSize());
-> p->Position = 0;
m_JpegImage->LoadFromStream(p);
Image_Picture->Picture->Bitmap->Assign(m_JpegImage);
delete p;
이렇게 포지션을 0으로 바꿔줘야 합니다.
또하나 소켓에서 데이터를 받을때마다 MemoryStream을 동적 생성하지 말고 수신 전용 Stream을 만든 다음에
초기화 시켜서 계속 사용하는게 좋습니다.
|