vc6.0调试问题汇总

本文汇总了VC6.0在断点调试、编译和链接过程中遇到的问题及解决方法。针对断点调试,提到了解决断点无法设置和在Release模式下调试的步骤。在编译环节,分析了pure specifier错误、源文件找不到、标识符未声明等错误,并给出了解决方案。最后,讨论了链接阶段可能出现的源文件冲突问题及其处理方式。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、断点调试

问题1、断点调试的时候老是出现One or more breakpoints cannot be set and have been disabled

解决办法:1、首先确保是在DEBUG模式下设置断点,在release下调试断点是会一直报此错误的。

问题2、Realse模式下调试

解决办法:只需要设置相应编译环境,RELEASE同样可以像DEBUG版本设置断点,查看参数。

步骤如下:

1、在Project Settings里选Settings For为AllConfigurations。

2、在C/C++标签中,Debug info 选 ProgramDatabase。

3、在Link 标签中,Category选 Debug,选中Debug info复选框和Microsoft format。

现在就可以像在Debug版本中那样设置断点进行测试,但是记住,Release版本由于代码优化,有些变量是观察不到的,行的运行顺序可能也会不同。

二、编译

问题1、编译时报 pure specifier can only be specified for functions

解决办法:1、可能是成员变量在定义的时候被赋值了,去掉赋值即可。

问题2、编译时报fatal   error   C1083:   Cannot   open   source   file:   '\VC98\MFC\SRC\APPMODUL.CPP '

问题分析: 编译系统找不到APPMODUL.CPP。有两个可能:一个是重新安装过VC6.0,且前后两次安装位置不一样,导致***.dsp文件中记录的APPMODUL.CPP地址不一样; 还有另一种原因:你把别人的项目拿来用,但是你所用电脑上VC所安装的位置和原作者的不一样,也会出现这样的错误。
解决办法:在源程序文件夹里找到以“.dsp”为后缀的文件(比如:test.dsp),用记事本打开;找到SOURCE="D:\(注:具体目录不一定是唯一的)\VC98\MFC\SRC\APPMODUL.CPP",改成你"APPMODUL.CPP"文件的路径。
例如:C:\Program   Files\Microsoft   Visual   Studio\VC98\MFC\SRC\APPMODUL.CPP

问题3、 托盘区弹出气球 出现错误 error C2065'NIIF_INFO' : undeclared identifier

问题分析:这个问题主要是由于SHELLAPI.H比较旧了,我们需要更改一下这个文件。

解决办法:找到VC++6.0的安装目录,如:"D:\Program Files\Microsoft Visual Studio\VC98\include\,到这个目录下后,你可以发现许多.h文件。找到SHELLAPI.H,然后用记事本打开,用查找命令,找到“//// Tray notification definitions”这一行,大概在记事本第490多行。然后再找到“//// End Tray Notification Icons”这一行,把这两行之间的内容全部注释掉或者删除,包括那两行,再重新粘贴上这些内容:(详见编译与连接的另一篇文章《SHELLAPI.H文件陈旧修改办法

问题4、'USES_CONVERSION' : undeclared identifier;'A2W' : undeclared identifier

解决办法:增加头文件:#include "atlbase.h"

三、链接

问题1、The source files "*\A.cpp " and "*\A.cpp " are both configured to produce the output file "*\A.obj ", The project cannot be built

问题分析:这个问题一般是因为工程中有两个同名文件,从而导致编译器不知道加载哪一个

解决办法:在编译器中删掉工程中的这两个文件,重新添加即可。



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值