!!!!!!!!!!!!!!!!!!!!!!!
解决方案 »
- 关于在DLL中再调用其他的DLL
- 虚拟机中响应热键。。。
- 编译(debug)出错,c:\program files\microsoft visual studio\vc98\mfc\include\afxver_.h(130) : fatal error C1189: #error : Pleas
- 比较急!!!再次求教要实现一个自动查找活动硬盘,并自动拷贝文件到指定目录的程序,望指点!!
- 大师请指路
- <提问>调色板的问题
- 问各位大峡:关于web server方面的问题
- 如何把固定范围的数值转换为CIE lab 颜色空间?
- 如何屏蔽F1键
- 请帮我看一下这是什么错误
- 怎么把启动程序加载到桌面的右下角的任务栏里?
- VC显示指定路径下的所有文件及文件夹,所有的子文件夹。
HINSTANCE hInst = AfxGetResourceHandle();
HRSRC hRsrc = ::FindResource (hInst,
MAKEINTRESOURCE(资源中PNG图片ID),
_T("PNG图片的资源文件夹名称"));
if (!hRsrc)
return ;
// load resource into memory
DWORD len = SizeofResource(hInst, hRsrc);
BYTE* lpRsrc = (BYTE*)LoadResource(hInst, hRsrc);
if (!lpRsrc)
return ;
// Allocate global memory on which to create stream
HGLOBAL m_hMem = GlobalAlloc(GMEM_FIXED, len);
BYTE* pmem = (BYTE*)GlobalLock(m_hMem);
memcpy(pmem,lpRsrc,len);
IStream* pstm;
CreateStreamOnHGlobal(m_hMem,FALSE,&pstm);
// load from stream这是关键一句,通过FromStream返回以各Image*,然后在Graphic的DrawImage地方调用就行了!
Image *pImg = NULL ;
pImg=Gdiplus::Image::FromStream(pstm);
// free/release stuff
GlobalUnlock(m_hMem);
pstm-> Release();
FreeResource(lpRsrc);
Graphics graphics( GetDC()->m_hDC );
graphics.DrawImage(pImg, Rect(160, 28, pImg->GetWidth(), pImg->GetHeight()),
0, 0, pImg->GetWidth(), pImg->GetHeight(), UnitPixel);//, &imageAtt);