我的这个显示jpeg图像是怎么回事呢,出错

zhxu0926 2010-01-30 06:47:08
工程下载地址 http://cid-abfe7877f943600b.skydrive.live.com/self.aspx/%e6%8a%80%e6%9c%af/OutputJPEG.rar
...全文
180 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
wltg2001 2010-01-31
  • 打赏
  • 举报
回复
明显的一个问题,文件关闭之后又引用文件当然不行了,看下面红色的代码:
DWORD dwLen=file.GetLength();
if(m_hMem!=NULL)
{
GlobalFree(m_hMem);
m_hMem=NULL;
}
m_hMem=GlobalAlloc(GMEM_MOVEABLE,dwLen);

LPVOID pData=NULL;
pData=GlobalLock(m_hMem);
file.Read(pData,dwLen);
// file.Close(); //这个注释掉就行了。
GlobalUnlock(m_hMem);
file.Read(pData,dwLen);
file.Close();
GlobalUnlock(m_hMem);
CreateStreamOnHGlobal(m_hMem,TRUE,&m_pStream);
OleLoadPicture(m_pStream,dwLen,TRUE,IID_IPicture,(LPVOID*)&m_pPicture);
m_pPicture->get_Height(&m_JPEGHeight);
m_pPicture->get_Width(&m_JPEGWidth);
OnPaint();
zhxu0926 2010-01-31
  • 打赏
  • 举报
回复
谢谢楼上xianglitian,不过还是有问题,不能加载图片
zhxu0926 2010-01-31
  • 打赏
  • 举报
回复
谢谢楼上,正确
向立天 2010-01-30
  • 打赏
  • 举报
回复
if(flDlg,DoModal()==IDOK)
===============================
是不是应该写成if(flDlg.DoModal()==IDOK)

这种问题你自己检查不出来么?
程序还有其他问题
你自己好好调一调吧
zhxu0926 2010-01-30
  • 打赏
  • 举报
回复
看谁可以把工程调试成功,调试成功后右击显示菜单,点击""载入jpeg"",按理说应该可以打开对话框载入图片的,但这个点击后却出现错误。为什么
zhxu0926 2010-01-30
  • 打赏
  • 举报
回复
代码都放在工程文件中的,把文件下下来打开工程
shihaojie1219 2010-01-30
  • 打赏
  • 举报
回复
UP
sjdev 2010-01-30
  • 打赏
  • 举报
回复
贴出主要代码,说明问题所在吧。

15,979

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 界面
社区管理员
  • 界面
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧