VC++ --->> WinCE 的问题(对大家应该不会很难)

alzzlaa 2007-12-07 10:47:20
在VC中用到了一个类CxImage,编译和链接都没有问题,(*.lib的调用也正常)。但是把程序移植到WinCE中,在链接的时候总是出现这样的错误信息,这是什么原因呢?

ximage.obj : error LNK2019: 无法解析的外部符号 "public: void __cdecl CxImage::SetPalette(struct tagRGBQUAD *,unsigned long)" (?SetPalette@CxImage@@QAAXPAUtagRGBQUAD@@K@Z),该符号在函数 "public: void __cdecl CxImage::Copy(class CxImage const &,bool,bool,bool)" (?Copy@CxImage@@QAAXABV1@_N11@Z) 中被引用
ximage.obj : error LNK2019: 无法解析的外部符号 "public: struct tagRGBQUAD * __cdecl CxImage::GetPalette(void)const " (?GetPalette@CxImage@@QBAPAUtagRGBQUAD@@XZ),该符号在函数 "public: void __cdecl CxImage::Copy(class CxImage const &,bool,bool,bool)" (?Copy@CxImage@@QAAXABV1@_N11@Z) 中被引用
ximage.obj : error LNK2019: 无法解析的外部符号 "public: void __cdecl CxImage::AlphaDelete(void)" (?AlphaDelete@CxImage@@QAAXXZ),该符号在函数 "public: void * __cdecl CxImage::Create(unsigned long,unsigned long,unsigned long,unsigned long)" (?Create@CxImage@@QAAPAXKKKK@Z) 中被引用
ximage.obj : error LNK2019: 无法解析的外部符号 "public: bool __cdecl CxImage::SelectionDelete(void)" (?SelectionDelete@CxImage@@QAA_NXZ),该符号在函数 "public: void * __cdecl CxImage::Create(unsigned long,unsigned long,unsigned long,unsigned long)" (?Create@CxImage@@QAAPAXKKKK@Z) 中被引用
ximage.obj : error LNK2019: 无法解析的外部符号 "public: unsigned long __cdecl CxImage::GetPaletteSize(void)" (?GetPaletteSize@CxImage@@QAAKXZ),该符号在函数 "public: void * __cdecl CxImage::Create(unsigned long,unsigned long,unsigned long,unsigned long)" (?Create@CxImage@@QAAPAXKKKK@Z) 中被引用
ximage.obj : error LNK2019: 无法解析的外部符号 "public: void __cdecl CxImage::AlphaSet(long,long,unsigned char)" (?AlphaSet@CxImage@@QAAXJJE@Z),该符号在函数 "public: bool __cdecl CxImage::CreateFromArray(unsigned char *,unsigned long,unsigned long,unsigned long,unsigned long,bool)" (?CreateFromArray@CxImage@@QAA_NPAEKKKK_N@Z) 中被引用
ximage.obj : error LNK2019: 无法解析的外部符号 "public: void __cdecl CxImage::AlphaCreate(void)" (?AlphaCreate@CxImage@@QAAXXZ),该符号在函数 "public: bool __cdecl CxImage::CreateFromArray(unsigned char *,unsigned long,unsigned long,unsigned long,unsigned long,bool)" (?CreateFromArray@CxImage@@QAA_NPAEKKKK_N@Z) 中被引用
ximage.obj : error LNK2019: 无法解析的外部符号 "public: void __cdecl CxImage::SetGrayPalette(void)" (?SetGrayPalette@CxImage@@QAAXXZ),该符号在函数 "public: bool __cdecl CxImage::CreateFromArray(unsigned char *,unsigned long,unsigned long,unsigned long,unsigned long,bool)" (?CreateFromArray@CxImage@@QAA_NPAEKKKK_N@Z) 中被引用
ximage.obj : error LNK2019: 无法解析的外部符号 "public: struct tagRGBQUAD __cdecl CxImage::GetPaletteColor(unsigned char)" (?GetPaletteColor@CxImage@@QAA?AUtagRGBQUAD@@E@Z),该符号在函数 "public: struct tagRGBQUAD __cdecl CxImage::GetTransColor(void)" (?GetTransColor@CxImage@@QAA?AUtagRGBQUAD@@XZ) 中被引用
====================================================================================================
Windows Mobile 6 Professional SDK (ARMV4I)\Debug\RY.exe : fatal error LNK1120: 9 个无法解析的外部命令
...全文
488 16 打赏 收藏 转发到动态 举报
写回复
用AI写文章
16 条回复
切换为时间正序
请发表友善的回复…
发表回复
xqhrs232 2010-03-02
  • 打赏
  • 举报
回复
做个记号!!!我的cximage.lib在CE下怎么老是编译不通过呢?老是报什么头文件错误.
ppcat_001 2007-12-10
  • 打赏
  • 举报
回复
你看一下现在错误的2个函数有没有导出?
sungoco2 2007-12-10
  • 打赏
  • 举报
回复
要么库不正确,要么.cpp,.h文件没加到工程里
alzzlaa 2007-12-10
  • 打赏
  • 举报
回复
都正确导出了,而且在Win32下运行是没问题的,但如果在WinCE中就是这样:

正在链接...
retwView.obj : error LNK2019: 无法解析的外部符号 "public: bool __cdecl CxImage::Load(wchar_t const *,unsigned long)" (?Load@CxImage@@QAA_NPB_WK@Z),该符号在函数 "public: virtual void __cdecl CretwView::OnDraw(class CDC *)" (?OnDraw@CretwView@@UAAXPAVCDC@@@Z) 中被引用
ximage.obj : error LNK2019: 无法解析的外部符号 "public: void __cdecl CxImage::SetPalette(struct tagRGBQUAD *,unsigned long)" (?SetPalette@CxImage@@QAAXPAUtagRGBQUAD@@K@Z),该符号在函数 "public: void __cdecl CxImage::Copy(class CxImage const &,bool,bool,bool)" (?Copy@CxImage@@QAAXABV1@_N11@Z) 中被引用
ximage.obj : error LNK2019: 无法解析的外部符号 "public: struct tagRGBQUAD * __cdecl CxImage::GetPalette(void)const " (?GetPalette@CxImage@@QBAPAUtagRGBQUAD@@XZ),该符号在函数 "public: void __cdecl CxImage::Copy(class CxImage const &,bool,bool,bool)" (?Copy@CxImage@@QAAXABV1@_N11@Z) 中被引用
ximage.obj : error LNK2019: 无法解析的外部符号 "public: void __cdecl CxImage::AlphaDelete(void)" (?AlphaDelete@CxImage@@QAAXXZ),该符号在函数 "public: void * __cdecl CxImage::Create(unsigned long,unsigned long,unsigned long,unsigned long)" (?Create@CxImage@@QAAPAXKKKK@Z) 中被引用
ximage.obj : error LNK2019: 无法解析的外部符号 "public: bool __cdecl CxImage::SelectionDelete(void)" (?SelectionDelete@CxImage@@QAA_NXZ),该符号在函数 "public: void * __cdecl CxImage::Create(unsigned long,unsigned long,unsigned long,unsigned long)" (?Create@CxImage@@QAAPAXKKKK@Z) 中被引用
ximage.obj : error LNK2019: 无法解析的外部符号 "public: unsigned long __cdecl CxImage::GetPaletteSize(void)" (?GetPaletteSize@CxImage@@QAAKXZ),该符号在函数 "public: void * __cdecl CxImage::Create(unsigned long,unsigned long,unsigned long,unsigned long)" (?Create@CxImage@@QAAPAXKKKK@Z) 中被引用
ximage.obj : error LNK2019: 无法解析的外部符号 "public: void __cdecl CxImage::AlphaSet(long,long,unsigned char)" (?AlphaSet@CxImage@@QAAXJJE@Z),该符号在函数 "public: bool __cdecl CxImage::CreateFromArray(unsigned char *,unsigned long,unsigned long,unsigned long,unsigned long,bool)" (?CreateFromArray@CxImage@@QAA_NPAEKKKK_N@Z) 中被引用
ximage.obj : error LNK2019: 无法解析的外部符号 "public: void __cdecl CxImage::AlphaCreate(void)" (?AlphaCreate@CxImage@@QAAXXZ),该符号在函数 "public: bool __cdecl CxImage::CreateFromArray(unsigned char *,unsigned long,unsigned long,unsigned long,unsigned long,bool)" (?CreateFromArray@CxImage@@QAA_NPAEKKKK_N@Z) 中被引用
ximage.obj : error LNK2019: 无法解析的外部符号 "public: void __cdecl CxImage::SetGrayPalette(void)" (?SetGrayPalette@CxImage@@QAAXXZ),该符号在函数 "public: bool __cdecl CxImage::CreateFromArray(unsigned char *,unsigned long,unsigned long,unsigned long,unsigned long,bool)" (?CreateFromArray@CxImage@@QAA_NPAEKKKK_N@Z) 中被引用
ximage.obj : error LNK2019: 无法解析的外部符号 "public: struct tagRGBQUAD __cdecl CxImage::GetPaletteColor(unsigned char)" (?GetPaletteColor@CxImage@@QAA?AUtagRGBQUAD@@E@Z),该符号在函数 "public: struct tagRGBQUAD __cdecl CxImage::GetTransColor(void)" (?GetTransColor@CxImage@@QAA?AUtagRGBQUAD@@XZ) 中被引用
Windows Mobile 6 Professional SDK (ARMV4I)\Debug\retw.exe : fatal error LNK1120: 10 个无法解析的外部命令
生成日志保存在“file://c:\Documents and Settings\\Windows Mobile 6 Professional SDK (ARMV4I)\Debug\BuildLog.htm”
retw - 11 个错误,0 个警告

==============================================================================================
<stdafx.h>

#include "ximage.h"

#pragma comment(lib, "cximage.lib")
#pragma comment(lib, "cximagecrtd.lib")
#pragma comment(lib, "cximaged.lib")

不知道毛病究竟在哪???

alzzlaa 2007-12-08
  • 打赏
  • 举报
回复
大家有谁知道问题究竟出在哪儿了,帮帮我啊~
alzzlaa 2007-12-07
  • 打赏
  • 举报
回复
我想原因就应该与lib文件有关,但不知道应该如何处理?

#include "ximage.h"

#pragma comment(lib, "cximagecrtd.lib")
#pragma comment(lib, "cximaged.lib")
#pragma comment(lib, "cximage.lib")

这几个文件我在 stdafx.h 中定义

这是我用到的3个lib文件,并且把它放到了我的工作目录中,没有移植WinCE中是没问题的,不知道是什么原因???
载舟之水 2007-12-07
  • 打赏
  • 举报
回复
hoho 91program 你要对它负责啊
91program 2007-12-07
  • 打赏
  • 举报
回复
*.lib的版本是否正确?
LZ确认不是使用PC上的吧,呵呵~
色郎中 2007-12-07
  • 打赏
  • 举报
回复
VC 和 EVC 还是有区别的哦
uiop7890a 2007-12-07
  • 打赏
  • 举报
回复
不行啊,我在EVC中重新编译了一回,然后把lib重新加到了工程中,但还是这样:

正在编译资源...
正在链接...
retwView.obj : error LNK2019: 无法解析的外部符号 "public: bool __cdecl CxImage::Load(char const *,unsigned long)" (?Load@CxImage@@QAA_NPBDK@Z),该符号在函数 "public: virtual void __cdecl CretwView::OnDraw(class CDC *)" (?OnDraw@CretwView@@UAAXPAVCDC@@@Z) 中被引用
Windows Mobile 6 Professional SDK (ARMV4I)\Debug\retw.exe : fatal error LNK1120: 1 个无法解析的外部命令
生成日志保存在“file://c:\Documents and Settings\yud\桌面\VC++\retw\retw\Windows Mobile 6 Professional SDK (ARMV4I)\Debug\BuildLog.htm”
retw - 2 个错误,0 个警告
========== 全部重新生成: 0 已成功, 1 已失败, 0 已跳过 ==========
uiop7890a 2007-12-07
  • 打赏
  • 举报
回复
好的,我先试试吧,要是有不明白的再向大家请教!
谢谢大家对我的问题的回应!
beyondma 2007-12-07
  • 打赏
  • 举报
回复
这个6楼已经说的很明确了啊,如果是您自己编译的那么你手上一定有源代码吧.那就在EVC上再编译一遍呗,如果您是下载的那么您手上只有LIB文件了,那么就请您去找到他CE的版本.PC上的或者说是用VC编译的东东是不能在CE上直接用的
uiop7890a 2007-12-07
  • 打赏
  • 举报
回复
这三个库是自己编译出来的,能告诉我怎么用EVC编译吗,因为这个以前从来没接触过,我就是想知道详细点的步骤。。。
再次麻烦各位了!
91program 2007-12-07
  • 打赏
  • 举报
回复
首先,这三个库是LZ自己编译出来的,还是下载的?
如果是下载的,去找CE下的版本
如果是自己编译的,使用EVC或相应工具重新编译
alzzlaa 2007-12-07
  • 打赏
  • 举报
回复
那应该怎么编译成wince能用的库呢?麻烦能说得详细点吗?
ppcat_001 2007-12-07
  • 打赏
  • 举报
回复
#include "ximage.h"

#pragma comment(lib, "cximagecrtd.lib")
#pragma comment(lib, "cximaged.lib")
#pragma comment(lib, "cximage.lib")
这3个库有问题,你要编译3个wince下对应的库出来
pc上的库ce上不能直接用的

19,500

社区成员

发帖
与我相关
我的任务
社区描述
硬件/嵌入开发 嵌入开发(WinCE)
社区管理员
  • 嵌入开发(WinCE)社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧