鱼C论坛

 找回密码
 立即注册
查看: 4107|回复: 6

Visual C++ 6.0出现下面的错误信息:

[复制链接]
发表于 2011-10-13 19:36:52 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
我初学VC++,安装的是Microsoft Visual C++ 6.0 简体中文企业版,跟着孙鑫老师的VC++视频教程第3课学习,用VC++的新建->工程->MFC AppWizard[exe]->单文档,工程名:Test,不用添加任何部件和对象就创建了一个单文档窗口Test.exe。我用保存和全部保存,关闭VC++后,重新打开VC++,按文件->打开Test.cpp,按编译可以通过,按组建(F7)或者执行(Ctrl+F5),就出现下面的错误信息:
--------------------Configuration: Test - Win32 Debug--------------------
Linking...
Test.obj : error LNK2001: unresolved external symbol "public: static struct CRuntimeClass const CTestDoc::classCTestDoc" (
?classCTestDoc@CTestDoc@@2UCRuntimeClass@@B)
Test.obj : error LNK2001: unresolved external symbol "public: static struct CRuntimeClass const CMainFrame::classCMainFrame" (
?classCMainFrame@CMainFrame@@2UCRuntimeClass@@B)
Test.obj : error LNK2001: unresolved external symbol "public: static struct CRuntimeClass const CTestView::classCTestView" (
?classCTestView@CTestView@@2UCRuntimeClass@@B)
nafxcwd.lib(thrdcore.obj) : error LNK2001: unresolved external symbol __endthreadex
nafxcwd.lib(thrdcore.obj) : error LNK2001: unresolved external symbol __beginthreadex
libcd.lib(crt0.obj) : error LNK2001: unresolved external symbol _main
Debug/Test.exe : fatal error LNK1120: 6 unresolved externals
执行 link.exe 时出错.

Test.exe - 1 error(s), 0 warning(s)
截图00.gif
我反复试过之前的几个能正常编译和组建、运行的程序,也都是出现“...1 error(s)...”提示,不知道是我操作问题还是程序问题?我将简体中文企业版删除,重新安装英文版,也是出现同样错误......。请大侠和老师指点迷津,万分感谢!

小甲鱼最新课程 -> https://ilovefishc.com
 楼主| 发表于 2011-10-14 07:12:52 | 显示全部楼层
我已经找到组建和运行时出错的原因,不是安装中文版或英文版的原因;也不是工程设置方面的问题,因为我不懂根本就不会设置,只能使用VC++系统的默认设置。错误是:我打开的文件应该是.dsp工程文件,由于是初学,我打开的是.cpp源文件(如Test.cpp),这样在前面几课是创建的Win32 Console Application控制台程序,用.cpp打开还可以。第3课起是MFC AppWizard[exe]文件,再用.cpp打开就出现问题,因为,创建MFC用到了许多类函数,在ClassView页签上可以看到有5个类函数(分别是CAboutDly、CDramApp、CDramDoc、CDramView和CMainFrame),如果还是用.cpp打开,在左边的ClassView页签上只能看到CAboutDly类函数,所以,在组建和运行时就会提示出错信息!感谢topic.csdn.net上的jennyvenus和shadow1226两位大侠的帮助和指点!
小甲鱼最新课程 -> https://ilovefishc.com
 楼主| 发表于 2011-10-14 17:23:45 | 显示全部楼层
谢谢VisualEleven大侠的指点和帮助!就是同一个Test工程(用VC++6.0的“新建”->“工程”->“MFC AppWizard[exe]”->“单文档”,工程名:Test),保存后,你做一个备份。然后,你用VC++6.0打开这个Test.dsp组建和运行都不会有错误提示!然后,你用备份的Test工程,用Test.cpp打开,再组建和运行,就会是下面的错误提示:
--------------------Configuration: Test - Win32 Debug--------------------
Linking...
Test.obj : error LNK2001: unresolved external symbol "public: static struct CRuntimeClass const CTestDoc::classCTestDoc" (?classCTestDoc@CTestDoc@@2UCRuntimeClass@@B)
Test.obj : error LNK2001: unresolved external symbol "public: static struct CRuntimeClass const CMainFrame::classCMainFrame" (?classCMainFrame@CMainFrame@@2UCRuntimeClass@@B)
Test.obj : error LNK2001: unresolved external symbol "public: static struct CRuntimeClass const CTestView::classCTestView" (?classCTestView@CTestView@@2UCRuntimeClass@@B)
nafxcwd.lib(thrdcore.obj) : error LNK2001: unresolved external symbol __endthreadex
nafxcwd.lib(thrdcore.obj) : error LNK2001: unresolved external symbol __beginthreadex
libcd.lib(crt0.obj) : error LNK2001: unresolved external symbol _main
Debug/Test.exe : fatal error LNK1120: 6 unresolved externals
执行 link.exe 时出错.

Test.exe - 1 error(s), 0 warning(s)

这就是我苦苦找了一整天得到的结论,用打开工程文件.dsp的方法是正确的!你可以试试!用我上面的方法,创建一个MFC单文档的工程,备份一下,然后用Test.dsp和Test.cpp分别打开进行组建(F7)和执行(Ctrl+F5),看一看是什么结果!再一次表示万分感谢!
小甲鱼最新课程 -> https://ilovefishc.com
 楼主| 发表于 2011-10-14 23:22:36 | 显示全部楼层
哦!应该是.dsw项目工程文件Project Workspace
小甲鱼最新课程 -> https://ilovefishc.com
发表于 2011-10-19 12:40:44 | 显示全部楼层
嗯 记下了!
以后遇到就知道怎么解决了
小甲鱼最新课程 -> https://ilovefishc.com
发表于 2011-10-19 19:58:06 | 显示全部楼层
这很纠结啊啊~
小甲鱼最新课程 -> https://ilovefishc.com
 楼主| 发表于 2011-10-20 08:18:39 | 显示全部楼层

谢谢回复!这个问题怪我孤陋寡闻,只要在网上搜索就可以找到许多关于VC++入门的书,都是用.dsw的项目工作区文件打开工程的。看来,还是要多看一些VC++入门的书!^_^!
小甲鱼最新课程 -> https://ilovefishc.com
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2025-11-8 23:29

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表