社区
图形处理/算法
帖子详情
关于VC数字图像处理编程讲座问题
xianzi123
2008-05-10 10:01:07
在网上搜索VC 图像处理,就出现好多关于该讲座的问题,我按照该文档中所讲的内容编写程序来显示位图,编译成功,可以运行不了,总是出现对话框说Debug Assertion Failed!
File:viewscrl.cpp
line:220
我也不知道是怎么回事!!
请问有没有根据这个讲座成功编写过该程序的,希望给点意见!
...全文
377
36
打赏
收藏
关于VC数字图像处理编程讲座问题
在网上搜索VC 图像处理,就出现好多关于该讲座的问题,我按照该文档中所讲的内容编写程序来显示位图,编译成功,可以运行不了,总是出现对话框说Debug Assertion Failed! File:viewscrl.cpp line:220 我也不知道是怎么回事!! 请问有没有根据这个讲座成功编写过该程序的,希望给点意见!
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
36 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
zhaojianzhong001
2012-10-09
打赏
举报
回复
看样子已经搞定了,估计现在也是高手了
rindar
2011-11-25
打赏
举报
回复
你这个问题搞定了没,我也是
xianzi123
2008-05-11
打赏
举报
回复
等下这个问题弄完了,我就结贴,呵呵!不要着急哦!
xianzi123
2008-05-11
打赏
举报
回复
是不是在把hDIB赋值给m_hDIB之后,就可以把它释放掉了呢?
我在::GlobalUnlock((HGLOBAL)hDIB);这句之后又调用::GlobalFree((HGLOBAL)hDIB);应该可以了吧?
xianzi123
2008-05-11
打赏
举报
回复
to biao_zi :
好像是这样的,我去改掉!呵呵!人多力量大呀!
biao_zi
2008-05-11
打赏
举报
回复
发现有GlobalAlloc(),却没有对应的GlobalFree()
快乐鹦鹉
2008-05-11
打赏
举报
回复
嗯。先揭帖吧。哈哈
xianzi123
2008-05-11
打赏
举报
回复
嘿嘿,我的基础是比较差了!都还没有自己编写过程序,接触VC也没有很久,哎!不知啥时候才能学好它呀!
看来我的基础太差,我现在先自己调试调试,等实在不会的时候,我再找你,好不好?呵呵!今天真是谢了!
快乐鹦鹉
2008-05-11
打赏
举报
回复
不要用OnOpenDucument了,这是你在系统启动后,点击菜单“文件”下的“新建”子菜单后调用的
快乐鹦鹉
2008-05-11
打赏
举报
回复
if (!file.Open("E:\3.bmp", CFile::modeRead ¦ CFile::shareDenyWrite, &fe)),可是图像还是打不开呀?怎么回事呢?
该为if (!file.Open("E:\\3.bmp", CFile::modeRead ¦ CFile::shareDenyWrite, &fe))
看来你的基础还比较差哦
biao_zi
2008-05-11
打赏
举报
回复
你代码中似乎在
::GlobalUnlock((HGLOBAL)hDIB);
之后又有调用了hDIB,这时是无效的了,把这句适当后移试下
xianzi123
2008-05-11
打赏
举报
回复
我还想问一下函数执行的先后顺序,我加了断点之后,发现它先执行的是OnDraw函数,然后就弹出那个“图像数据不能为空,请先读取图像数据”这个对话框,我发现它就没有去执行OnOpenDucument这个函数呀?这又是咋回事呢?
我的问题也有点太多了,嘿嘿!今天是遇到好心人了!
xianzi123
2008-05-11
打赏
举报
回复
哦,那我先在这个程序,就是刚开始固定打开一张图片的,是吧?那现在我应该把lpszPathName改成图片的地址,我把
if (!file.Open(lpszPathName, CFile::modeRead ¦ CFile::shareDenyWrite, &fe)) 这句里的lpszPathName改成了:
if (!file.Open("E:\3.bmp", CFile::modeRead | CFile::shareDenyWrite, &fe)),可是图像还是打不开呀?怎么回事呢?
快乐鹦鹉
2008-05-11
打赏
举报
回复
如果是系统启动后再打开,你就不要在这个函数中加代码了。增加一个菜单项来处理就可以了。先调用CFileDialog选择图片文件,然后再进行图片处理后显示到视图就OK
xianzi123
2008-05-11
打赏
举报
回复
再请问一下哦,实在不好意思!
这个lpszPathName这个,我应该具体制定路径的名字吗?我愿意并不是一运行就打开某个固定的图片,而是在运行后,点击打开,才选择文件来进行读取,所以就没有设这个lpszPathName的值!是不是不设置就不可以呀?如果要设置的话,所有的lpszPathName都要改成路径名?
快乐鹦鹉
2008-05-11
打赏
举报
回复
调试也是很简单的事。你这个只需进行很基本的调试就可以判断了。加上断点后,看一下各个变量的值是否是你预想的值就行了。
xianzi123
2008-05-11
打赏
举报
回复
谢谢 happyparrot ,确实调试很重要,我只是在编译的时候有错误的话,我还能修改修改,可是在编译成功之后,它要是在错,我就有点不知所措了,今天还是有收获的,谢谢你哦!以后我会多调试,多锻炼锻炼!呵呵
xianzi123
2008-05-11
打赏
举报
回复
请问biao_zi,调色板应该怎么初始化呀?就把m_palDIB 设为NULL就可以吗?
快乐鹦鹉
2008-05-11
打赏
举报
回复
你要仔细调试,m_hDIB = hDIB语句可能根本就没有执行到。调试代码是编程人员的基本功阿,你一定要掌握。
快乐鹦鹉
2008-05-11
打赏
举报
回复
lpszPathName这个路径是你图片所在路径和名称吗?你要多调试一下。看看各个变量的值是否是你所需的。
加载更多回复(16)
VC
数字图像处理
编程
讲座
(全程)
VC
数字图像处理
编程
讲座
(全程).
VC
数字图像处理
编程
讲座
1-5
VC
数字图像处理
编程
讲座
,1到5讲,图像处理入门知识,主要包括BMP位图相关知识
VC
数字图像处理
编程
讲座
VC
数字图像处理
编程
讲座
Word 关于
数字图像处理
VC
数字图像处理
编程
VC
数字图像处理
编程
VC
数字图像处理
编程
讲座
之一
VC
数字图像处理
编程
讲座
之二
VC
数字图像处理
编程
讲座
之三
VC
数字图像处理
编程
讲座
word 简单易懂
VC
数字图像处理
编程
讲座
:讨论如何利用微软的Visual C++开发工具来实现一些常用的
数字图像处理
算法,论述了图像处理的理论,同时给出了
VC
实现的源代码。本
讲座
主要的内容分为基础篇、中级篇和高级篇,具体包含的主要...
图形处理/算法
19,468
社区成员
50,698
社区内容
发帖
与我相关
我的任务
图形处理/算法
VC/MFC 图形处理/算法
复制链接
扫一扫
分享
社区描述
VC/MFC 图形处理/算法
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章