loadimage显示图片到对话框有关问题
loadimage显示图片到对话框问题`
BITMAP bm;
CBitmap *m_pBmp;
CDC dcMem;
LPCTSTR bitmappath= "E:\EveryThing\2.bmp ";
HBITMAP m_hBmp = (HBITMAP)::LoadImage(0,bitmappath,IMAGE_BITMAP,0,0,LR_LOADFROMFILE | LR_CREATEDIBSECTION | LR_DEFAULTSIZE);
//_ASSERT(m_hBmp!=NULL);
m_pBmp = CBitmap::FromHandle(m_hBmp);
VERIFY(m_pBmp-> GetObject(sizeof(bm),(LPVOID)&bm));
dcMem.CreateCompatibleDC(&dc);
CBitmap *pOldBMP=(CBitmap *)dcMem.SelectObject(m_pBmp);
BitBlt(dc.m_hDC,10, 10,bm.bmWidth,bm.bmHeight,dcMem.m_hDC,0,0,SRCCOPY);
dcMem.SelectObject(pOldBMP);
用这段代码显示图片,编译能通过,但运行时老是提示读内存出错!
问题主要在这句上 VERIFY(m_pBmp-> GetObject(sizeof(bm),(LPVOID)&bm));
请问怎么解决!
------解决方案--------------------
试试用其他方法!
BITMAP bm;
CBitmap *m_pBmp;
CDC dcMem;
LPCTSTR bitmappath= "E:\EveryThing\2.bmp ";
HBITMAP m_hBmp = (HBITMAP)::LoadImage(0,bitmappath,IMAGE_BITMAP,0,0,LR_LOADFROMFILE | LR_CREATEDIBSECTION | LR_DEFAULTSIZE);
//_ASSERT(m_hBmp!=NULL);
m_pBmp = CBitmap::FromHandle(m_hBmp);
VERIFY(m_pBmp-> GetObject(sizeof(bm),(LPVOID)&bm));
dcMem.CreateCompatibleDC(&dc);
CBitmap *pOldBMP=(CBitmap *)dcMem.SelectObject(m_pBmp);
BitBlt(dc.m_hDC,10, 10,bm.bmWidth,bm.bmHeight,dcMem.m_hDC,0,0,SRCCOPY);
dcMem.SelectObject(pOldBMP);
用这段代码显示图片,编译能通过,但运行时老是提示读内存出错!
问题主要在这句上 VERIFY(m_pBmp-> GetObject(sizeof(bm),(LPVOID)&bm));
请问怎么解决!
------解决方案--------------------
试试用其他方法!