解决VC中增加类文件的问题

王朝vc·作者佚名  2006-01-08
窄屏简体版  字體: |||超大  

解决VC中增加类文件的问题

一、通过“AddToProject”向当前工作区A增加DibDoc类头文件及应用文件,在A的类A1中使用DibDoc类后编译,出现如下错误:

errorC2501:'CDibdoc':missing dec1-specifiers

于是作了以下处理,解决了出现的问题:

1.检查发现在类A1中,头文件包含#include"dibdoc.h"放在了#include"stdafx.h"之前;

2.纠正上述错误,编译出现如下错误:errorC2065:'WM_DOREALIZE':undeclaredidentifier

经分析发现,不能识别消息,不能识别命令(ID号)等类似错误均因“dibdoc.h”摆放位置不正确所致,建议:在各类的应用文件中,该类的头文件包含最好放在所有包含命令的最后。

二、编译通过后,连接、执行时,出现如下错误:Linking...

dibdoc.obj:error LNK2001:unresolved external symbol"struct HDIB_*_stdcall ReadDIB(classC&)"(?ReadDIB@@YGPAUHDIB_@@AAVC@@@Z)

dibdoc.obj:error LNK2001:unresolved external symbol"int_stdcallSaveDIB(structHDIB_*,classC&)″(?SaveDIB@@YGHPAUHDIB_@@AAVC@@@Z).\Debug/diblook.exe:fatal error LNK1120:2 unresolved externals

Error executing link.exe

反复检查才发现DibDoc类的一个相关文件my.cpp没有同时拷贝、加入工程中来。以后又发现此类连接性错误,都是因为有关文件不在当前工程目录下所致。

三、解决了上述问题,程序正确执行,但在启动ClassWizard向DibDoc类加入消息入口时,在ClassName列表框中,却见不到DibDoc类,原来ClassWizard不能自动管理通过“AddToProject”增加的文件。

解决办法:启动资源管理器,删除该工程目录下.clw文件,再启动ClassWizard,重建.clw文件即可。也可通过编辑原.clw文件,按规定格式加入DibDoc类说明来达到同样的效果。(湖北刘军发)

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
 
© 2005- 王朝網路 版權所有 導航