回 帖 发 新 帖 刷新版面

主题:关于2005中工程的问题

visual studio 2005工程中,我在C:\programfile\Microsoft Visual Studio 8\VC\include中加上了第三方软件包(这个包具体预先定义了:类库集对应头文件,还有自定义函数,混合了C和C++),我拿了个咧程测试了一下.结果自定义的类都能识别,但那些函数总是无法识别,提示:
ado.obj : error LNK2019: unresolved external symbol "_hessian" in Funktion "_wmain".
(此外无其他标准库的错误)

我找了些材料看,可能原因是由于C++编译器不兼容c定义的函数.按照网上的提示,我尝试把.c文件硬生生改为.cpp也没用;在工程属性里也没找出什么有用的提示。

请各位帮忙回答一下。
谢谢

回复列表 (共4个回复)

沙发

不,是因为你用了UNICODE方式编译,而你原来的源代码只支持用ANSI方式编译。

项目-》工程属性-》配置属性-》常规-》字符集

把UNICODE改为未设置

板凳

楼上说的有道理。而且开始编译时是出现过编译方式的提示,我选择默认的就过去了.
但我按你的一件改过后,问题仍旧;然后我又重新建立工程,仍旧。

3 楼

呵呵,我猜你是没有添加第三方软件包的c/cpp源文件(或者编译过了的obj文件)

unresolved external symbol "_hessian" : 很可能的原因是你引用了一个extern声明的变量,或者引用了一个在.h里面声明的函数,但没有实现它。

4 楼

[quote]不,是因为你用了UNICODE方式编译,而你原来的源代码只支持用ANSI方式编译。

项目-》工程属性-》配置属性-》常规-》字符集

把UNICODE改为未设置[/quote]
是的,VC6和VS的好多东西都已经变的.
要手动改一下.

我来回复

您尚未登录,请登录后再回复。点此登录或注册