关于Cximage类 编译的问题

woai1075 2010-07-25 05:54:07
用Cximage类 写了一个修改图片大小和格式的小程序,问题就是 程序只能在本机运行,无论我是静态编译 还是dll共享
都不行
请教怎么解决此问题
...全文
250 点赞 收藏 8
写回复
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
Liberty-Bird 2010-07-26
MFC动态库问题,你可以检查一下用户电脑是否缺少必要的动态库如msvcrtxx.dll,msvcpxxx.dll,mfcxxx.dll等
回复
woai1075 2010-07-26
[Quote=引用 7 楼 woai1075 的回复:]

引用 3 楼 yzm888 的回复:

Cximage类的编译问题

重新 静态 编译 Cximage

现在连编译都过不去了 我用的是VC2008 下面是 错误提示 有谁用VC2008 用过此类的 详细说一下 怎么配置
1>正在链接...
1>LINK : warning LNK4075: 忽略“/INCREMENTAL”(由于“/FORCE”规范)
1>MSVCR……
[/Quote]
这个问题已经解决了 吧这个 /FORCE 去掉就可以了 但现在出现新的问题
1>正在链接...
1>imageDlg.obj : error LNK2019: 无法解析的外部符号 "public: bool __thiscall CxImage::Save(wchar_t const *,unsigned long)" (?Save@CxImage@@QAE_NPB_WK@Z),该符号在函数 "public: void __thiscall CimageDlg::OnBnClickedButton1(void)" (?OnBnClickedButton1@CimageDlg@@QAEXXZ) 中被引用
1>imageDlg.obj : error LNK2019: 无法解析的外部符号 "public: bool __thiscall CxImage::Load(wchar_t const *,unsigned long)" (?Load@CxImage@@QAE_NPB_WK@Z),该符号在函数 "public: void __thiscall CimageDlg::OnBnClickedButton1(void)" (?OnBnClickedButton1@CimageDlg@@QAEXXZ) 中被引用
1>imageDlg.obj : error LNK2019: 无法解析的外部符号 "public: __thiscall CxImage::CxImage(unsigned long)" (??0CxImage@@QAE@K@Z),该符号在函数 "public: void __thiscall CimageDlg::OnBnClickedButton1(void)" (?OnBnClickedButton1@CimageDlg@@QAEXXZ) 中被引用
1>C:\image\Debug\image.exe : fatal error LNK1120: 3 个无法解析的外部命令
1>生成日志保存在“file://c:\image\image\Debug\BuildLog.htm”
1>image - 4 个错误,2 个警告
========== 生成: 成功 0 个,失败 1 个,最新 0 个,跳过 0 个 ==========
回复
woai1075 2010-07-26
[Quote=引用 3 楼 yzm888 的回复:]

Cximage类的编译问题

重新 静态 编译 Cximage
[/Quote]
现在连编译都过不去了 我用的是VC2008 下面是 错误提示 有谁用VC2008 用过此类的 详细说一下 怎么配置
1>正在链接...
1>LINK : warning LNK4075: 忽略“/INCREMENTAL”(由于“/FORCE”规范)
1>MSVCRTD.lib(MSVCR90D.dll) : warning LNK4006: _free 已在 libcmtd.lib(dbgfree.obj) 中定义;已忽略第二个定义
1>MSVCRTD.lib(MSVCR90D.dll) : warning LNK4006: _malloc 已在 libcmtd.lib(dbgmalloc.obj) 中定义;已忽略第二个定义
1>MSVCRTD.lib(MSVCR90D.dll) : warning LNK4006: __strnicmp 已在 libcmtd.lib(strnicmp.obj) 中定义;已忽略第二个定义
1>MSVCRTD.lib(MSVCR90D.dll) : warning LNK4006: _calloc 已在 libcmtd.lib(dbgcalloc.obj) 中定义;已忽略第二个定义
1>MSVCRTD.lib(ti_inst.obj) : warning LNK4006: "private: __thiscall type_info::type_info(class type_info const &)" (??0type_info@@AAE@ABV0@@Z) 已在 libcmtd.lib(typinfo.obj) 中定义;已忽略第二个定义
1>MSVCRTD.lib(ti_inst.obj) : warning LNK4006: "private: class type_info & __thiscall type_info::operator=(class type_info const &)" (??4type_info@@AAEAAV0@ABV0@@Z) 已在 libcmtd.lib(typinfo.obj) 中定义;已忽略第二个定义
1>LINK : warning LNK4098: 默认库“LIBCMT”与其他库的使用冲突;请使用 /NODEFAULTLIB:library
1>LINK : warning LNK4098: 默认库“MSVCRTD”与其他库的使用冲突;请使用 /NODEFAULTLIB:library
1>imageDlg.obj : error LNK2019: 无法解析的外部符号 "public: bool __thiscall CxImage::Save(wchar_t const *,unsigned long)" (?Save@CxImage@@QAE_NPB_WK@Z),该符号在函数 "public: void __thiscall CimageDlg::OnBnClickedButton1(void)" (?OnBnClickedButton1@CimageDlg@@QAEXXZ) 中被引用
1>imageDlg.obj : error LNK2019: 无法解析的外部符号 "public: bool __thiscall CxImage::Load(wchar_t const *,unsigned long)" (?Load@CxImage@@QAE_NPB_WK@Z),该符号在函数 "public: void __thiscall CimageDlg::OnBnClickedButton1(void)" (?OnBnClickedButton1@CimageDlg@@QAEXXZ) 中被引用
1>C:\image\Debug\image.exe : warning LNK4088: 因 /FORCE 选项生成了映像;映像可能不能运行
1>生成日志保存在“file://c:\image\image\Debug\BuildLog.htm”
1>image - 2 个错误,12 个警告
========== 生成: 成功 0 个,失败 1 个,最新 0 个,跳过 0 个 ==========
回复
社会栋梁 2010-07-26
MS Visual C++中的Dependency Walker看看依赖库
以后其它程序也可以用此方法
回复
偶像罗斯福 2010-07-26
[Quote=引用 1 楼 chengwanzkq 的回复:]
估计是因为你的编译器,使CxIamge程序依赖于msvcrtxx.dll、msvcpxxx.dll、 mfcxxx.dll。在其他电脑上没有这些dll,所以运行不了。而你的电脑上System32下有这些dll
[/Quote]正解
回复
一名程序员 2010-07-26
cximage所依赖的库的发布问题。
回复
验证码识别 2010-07-26
Cximage类的编译问题

重新 静态 编译 Cximage

回复
_Kwekwe_ 2010-07-25
估计是因为你的编译器,使CxIamge程序依赖于msvcrtxx.dll、msvcpxxx.dll、 mfcxxx.dll。在其他电脑上没有这些dll,所以运行不了。而你的电脑上System32下有这些dll
回复
发动态
发帖子
VC/MFC
创建于2007-09-28

1.5w+

社区成员

VC/MFC相关问题讨论
申请成为版主
社区公告
暂无公告