VS.NET2003 编译链接时候,出现2019错误,是什么原因?

来源:百度知道 编辑:UC知道 时间:2024/07/02 13:18:41
本人是新手,希望高人指点一二。。。
谢谢。。。

一下是错误消息?
正在编译...
stdafx.cpp
正在编译...
MainFrm.cpp
ex07cView.cpp
ex07cDoc.cpp
ex07cDialog.cpp
ex07c.cpp
正在生成代码...
正在链接...
ex07cView.obj : error LNK2019: 无法解析的外部符号 "public: int __thiscall Cex07cDialog::Create(void)" (?Create@Cex07cDialog@@QAEHXZ) ,该符号在函数 "public: void __thiscall Cex07cView::OnLButtonDown(unsigned int,class CPoint)" (?OnLButtonDown@Cex07cView@@QAEXIVCPoint@@@Z) 中被引用
Debug/ex07c.exe : fatal error LNK1120: 1 个无法解析的外部命令

生成日志保存在“file://c:\Documents and Settings\Administrator\My Documents\Visual Studio Projects\ex07c\Debug\BuildLog.htm”中
ex07c - 2 错误,0 警告

---------------------- 完成 ---------------------

生成: 0 已成功, 1 已失败, 0 已跳过

一下是部分头文件:

//ex07cDialog.h

#pragma once

// Cex07cDialog 对话框

#define WM_GOODBYE WM_USER + 5

class Cex07cD

m_pDlg->Create();

没有这种形式的重载函数, 你只列出来一个带Create(LPCTSTR lpszTemplateName, CWnd* pParentWnd = NULL); 这样的参数的

这个错误我好像以前遇到过,那次是因为那个工程以前是vc6开发的,后来转到vc2005上了,就出现这个问题,原因好像是函数类型不匹配
vc6里面的消息函数都是这样的:
public: int __thiscall ...
vc2005都是这样的
public: void __thiscall 。。。
不匹配造成的,所以你需要全方位的修改代码,没别的好办法了

BOOL Create(); 这个函数你有否定义?问题的错误是说这个函数功能无法解析。定义这个函数的功能,或者把使用这个函数的地方注释掉。如果是添加的函数后来删除了,并且确认没有任何地方使用这个函数,那么把所有的临时文件清理掉,重新编译应该能解决问题。