BMP图像文件另存为失败

clarence_cpp 2013-05-21 11:30:59
用下面的代码写的menu中的另存为,为什么运行后找不到另存为的bmp文件。请大神指点
void CImageProcessorDoc::OnFileSaveAs() 
{
LPCTSTR lpszFilter="BMP Files(*.bmp)|*.bmp|任何文件|*.*||";
CFileDialog dlg(FALSE,lpszFilter,NULL,OFN_HIDEREADONLY|OFN_OVERWRITEPROMPT,lpszFilter,NULL);

if(dlg.DoModal()!=IDOK)
return;
CFile file;
CFileException fe;
if (!file.Open(dlg.GetPathName(), CFile::modeCreate | CFile::modeReadWrite | CFile::shareExclusive, &fe))
{
//失败
ReportSaveLoadException(dlg.GetPathName(),&fe,TRUE,AFX_IDP_INVALID_FILENAME);
return;
}
file.SeekToBegin();
file.Write(&bf,sizeof(bf));
file.Write(&bi,sizeof(bi));

if(numquad!=0)
{file.Write(quad,sizeof(RGBQUAD)*numquad);
}


file.WriteHuge(lpbuf,bi.biSizeImage);
file.Close();
}
...全文
92 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
曾有一个人 2013-05-25
  • 打赏
  • 举报
回复
找不到? 这个就算数据没写进去,也是会生成你另存的bmp文件的,调试下看看哪里出错了
shore1000 2013-05-25
  • 打赏
  • 举报
回复
file.Write(quad,sizeof(RGBQUAD)*numquad); 这个重点检查下

19,468

社区成员

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

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