file.Open(ImageFile,CFile::modeRead);
fileSize=(DWORD)file.GetLength(); BYTE *buf=new BYTE[fileSize];
file.Read(buf,fileSize);
file.Close(); HBITMAP bmp;
BITMAPFILEHEADER *pbmfh;
pbmfh=(BITMAPFILEHEADER*)buf;
bmp=CreateDIBitmap(pDC->GetSafeHdc(),
(BITMAPINFOHEADER*)(pbmfh+1),
CBM_INIT,
(BYTE*)pbmfh+pbmfh->bfOffBits,
(BITMAPINFO*)(pbmfh+1),
DIB_RGB_COLORS);
BITMAPINFOHEADER *pbminfohead=(BITMAPINFOHEADER*)(pbmfh+1);
pDC->CreateCompatibleDC(0); //运行到这里出错 提示: user breakpoint called form code at 0x7c92120e pDC->SelectObject(bmp);
pDC->BitBlt(0,0,pbminfohead->biWidth,pbminfohead->biHeight,pDC,0,0,SRCCOPY);
请问 :为什么出错
如何改正呢
有没有更好的读取图像并显示的方法
解决方案 »
- 急求G722音频采集,编解码和传输的资料和例子
- 关于符号 "+" 的运算符重载
- CAB包,INF文件的问题
- 请问360软件架构是如何设计的?
- 编译选项中 Multi-threaded DLL (/MD) 和 Multi-threaded Debug DLL (/MDd) 的区别?
- 初学者-关于函数SelectObject
- 请教,为什么在我的VC++对话框程序中连接不上本地数据库?!!急急!
- 给Dialog创建状态栏出现疑问。
- 请指教:当在硬盘中添加或者删除文件时,在我的程序中如何得知,并将该事件捕捉下来并存档。
- 系统线程池API和自己实现线程池
- mfc下如何画线宽大于1的虚线、点划线、点线啊
- clistctrl 怎么设置其他列为check形式
CDC dcMem;
dcMem.CreateCompatibleDC(pDC);//创建与对话框dc兼容的内存dc
dcMem.SelectObject(bmp);
pDC->BitBlt(0,0,pbminfohead->biWidth,pbminfohead->biHeight,&dcMem,0,0,SRCCOPY);
估计的 pDC 的值为空。