用内存中储存的图片文件,创建GDI+的Bitmap对象的问题。
我的一小段代码:
//char * data,int datalen//data 指向内存中的图片文件,图片文件是网络上发过来的(直接保存在硬盘上,然后双击打开,图片很正常)//datalen 是图片文件的大小 HGLOBAL hglobal=0; IStream* pStream = NULL; hglobal = ::GlobalAlloc(GMEM_FIXED,datalen); ::memcpy(hglobal,data,datalen); HRESULT res=::CreateStreamOnHGlobal(hglobal, FALSE, &pStream); if (res == S_OK) { this->m_ep.GCaptchaBmp=new Bitmap(pStream,NULL); pStream->Release(); //.... } else { //.... } //.... if(hglobal) ::GlobalFree(hglobal);//图片是在之后的程序中显示