关于MFC的一个诡异问题
同事用MFC做的一个子窗口,用菜单调用的时候提示内存不能为read,为了调试习惯性的在DoModal()之前加了个afxMessageBox(),问题竟然不重现了,注释掉...
同事用MFC做的一个子窗口,用菜单调用的时候提示内存不能为read,为了调试习惯性的在DoModal()之前加了个afxMessageBox(),问题竟然不重现了,注释掉也不再重现,删掉也不再重现,难道是VC的BUG?求高人指点。
VC6,XP,这个工程在两台机器上表现一样。
前后之后两个窗口之间的值交换,没有什么特别的操作。
//不要逼我每次都说小白闪开!!!
要出差了,提前结贴。如有答案,请Hi我,有满意答案另外开个问题送分。 展开
VC6,XP,这个工程在两台机器上表现一样。
前后之后两个窗口之间的值交换,没有什么特别的操作。
//不要逼我每次都说小白闪开!!!
要出差了,提前结贴。如有答案,请Hi我,有满意答案另外开个问题送分。 展开
展开全部
可能是栈溢出,你试图访问其他进境的禁止读的段。这个属于MFC的运行时的bug,或者是操作系统的bug,和你的程序无关。微软本来就有不少bug,常常发布一些补丁让你安装。
这个是系统bug,该问楼下那位先生,你可以在应用程序的代码里找出系统bug?你还不如说把整个系统发个你,让你找呢?
这个是系统bug,该问楼下那位先生,你可以在应用程序的代码里找出系统bug?你还不如说把整个系统发个你,让你找呢?
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
提示内存不能READ的过程,一般都是出现在指针上,比如空指针,或者数值越界,你的代码大家都看不到没法帮你判断,只凭你的一面之词来分析的话,很难得到最终正确的结果.
追问
问题是空指针或者越界怎么会因为一个MessageBox而消失,而且删掉之后竟然也不再出现。我本来想找一下问题在哪儿,结果问题竟然不出现了。
另,昨天又遇到一个类似问题,我的工程zip压缩之后发给同事,报内存不能为read,再次发送zip解压之后重新编译,问题消失。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
好像是传说中的窗口的句柄的传递变化了,会导致这样的问题。
另外,操作系统的不同也会引起这样的问题,vc6对win7的支持不好。
另外,操作系统的不同也会引起这样的问题,vc6对win7的支持不好。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
不可重现的工程bug,程序以后可能会出问题哦
追问
就是因为担心这个才问的嘛。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
你的程序涉及多线程吗?可以把代码发出来看看
VC bug也不稀奇,vc2008我就遇到过至少2个,可喜的是在vs2010中修正了。
VC bug也不稀奇,vc2008我就遇到过至少2个,可喜的是在vs2010中修正了。
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询