我写了一个程序,原来是Use MFC in a Share DLL ,但是最后程序在没有VC的机器上运行不了,我把它改成静态链接时出现以下错误:
MSVCRTD.lib(MSVCRTD.dll) : error LNK2005: _fclose already defined in libcmtd.lib(fclose.obj)
MSVCRTD.lib(MSVCRTD.dll) : error LNK2005: _fflush already defined in libcmtd.lib(fflush.obj)
MSVCRTD.lib(MSVCRTD.dll) : error LNK2005: _free already defined in libcmtd.lib(dbgheap.obj)
MSVCRTD.lib(MSVCRTD.dll) : error LNK2005: _malloc already defined in libcmtd.lib(dbgheap.obj)
MSVCRTD.lib(MSVCRTD.dll) : error LNK2005: _floor already defined in libcmtd.lib(floor.obj)
MSVCRTD.lib(MSVCRTD.dll) : error LNK2005: _calloc already defined in libcmtd.lib(dbgheap.obj)
MSVCRTD.lib(MSVCRTD.dll) : error LNK2005: __mbsnbcpy already defined in libcmtd.lib(mbsnbcpy.obj)
MSVCRTD.lib(MSVCRTD.dll) : error LNK2005: _sprintf already defined in libcmtd.lib(sprintf.obj)
29errors我在Setting中Ignor掉libcmtd.lib后,出现如下11处错误,,,Linking...
Creating library Debug/Interface.lib and object Debug/Interface.exp
nafxcwd.lib(dcprev.obj) : error LNK2001: unresolved external symbol __mbctype
nafxcwd.lib(oledlgs1.obj) : error LNK2001: unresolved external symbol __mbctype
nafxcwd.lib(olelink.obj) : error LNK2001: unresolved external symbol __mbctype
nafxcwd.lib(dcmeta.obj) : error LNK2001: unresolved external symbol __mbctype
nafxcwd.lib(timecore.obj) : error LNK2001: unresolved external symbol __mbctype
nafxcwd.lib(apphelp.obj) : error LNK2001: unresolved external symbol __mbctype
nafxcwd.lib(filelist.obj) : error LNK2001: unresolved external symbol __mbctype
nafxcwd.lib(viewedit.obj) : error LNK2001: unresolved external symbol __mbctype
nafxcwd.lib(appcore.obj) : error LNK2001: unresolved external symbol ___argv
nafxcwd.lib(appcore.obj) : error LNK2001: unresolved external symbol ___argc
Debug/Interface.exe : fatal error LNK1120: 3 unresolved externals
Error executing link.exe.Interface.exe - 11 error(s), 0 warning(s)请高手指教,什么原因。
MSVCRTD.lib(MSVCRTD.dll) : error LNK2005: _fclose already defined in libcmtd.lib(fclose.obj)
MSVCRTD.lib(MSVCRTD.dll) : error LNK2005: _fflush already defined in libcmtd.lib(fflush.obj)
MSVCRTD.lib(MSVCRTD.dll) : error LNK2005: _free already defined in libcmtd.lib(dbgheap.obj)
MSVCRTD.lib(MSVCRTD.dll) : error LNK2005: _malloc already defined in libcmtd.lib(dbgheap.obj)
MSVCRTD.lib(MSVCRTD.dll) : error LNK2005: _floor already defined in libcmtd.lib(floor.obj)
MSVCRTD.lib(MSVCRTD.dll) : error LNK2005: _calloc already defined in libcmtd.lib(dbgheap.obj)
MSVCRTD.lib(MSVCRTD.dll) : error LNK2005: __mbsnbcpy already defined in libcmtd.lib(mbsnbcpy.obj)
MSVCRTD.lib(MSVCRTD.dll) : error LNK2005: _sprintf already defined in libcmtd.lib(sprintf.obj)
29errors我在Setting中Ignor掉libcmtd.lib后,出现如下11处错误,,,Linking...
Creating library Debug/Interface.lib and object Debug/Interface.exp
nafxcwd.lib(dcprev.obj) : error LNK2001: unresolved external symbol __mbctype
nafxcwd.lib(oledlgs1.obj) : error LNK2001: unresolved external symbol __mbctype
nafxcwd.lib(olelink.obj) : error LNK2001: unresolved external symbol __mbctype
nafxcwd.lib(dcmeta.obj) : error LNK2001: unresolved external symbol __mbctype
nafxcwd.lib(timecore.obj) : error LNK2001: unresolved external symbol __mbctype
nafxcwd.lib(apphelp.obj) : error LNK2001: unresolved external symbol __mbctype
nafxcwd.lib(filelist.obj) : error LNK2001: unresolved external symbol __mbctype
nafxcwd.lib(viewedit.obj) : error LNK2001: unresolved external symbol __mbctype
nafxcwd.lib(appcore.obj) : error LNK2001: unresolved external symbol ___argv
nafxcwd.lib(appcore.obj) : error LNK2001: unresolved external symbol ___argc
Debug/Interface.exe : fatal error LNK1120: 3 unresolved externals
Error executing link.exe.Interface.exe - 11 error(s), 0 warning(s)请高手指教,什么原因。
解决方案 »
- MFC-DLL求助
- StretchDIBits问题
- 资源发布专帖
- 我封装的dispatch接口访问类为什么调用vb的com如果有长型,整型的参数调用不成功呢?如果光串型没问题
- 请问用什么开发工具好?
- 关于char的问题.......
- 请问如何自画CListCtrl的Column Header? 我想在上面放箭头,并把它变成平的按钮
- ADO/C++连SYBASE数据库时_RecordsetPtr的RecordCount总返回-1
- kevin_qing:我找到了你的“决定提一个有点难度的问题,关于new/delete 的重载”的答案,嘿嘿^_^
- 超级简单问题:怎么连接字符串?
- 关于文件读取速度问题?
- 关于BCG中的CBCGPListCtrl的排序问题
问题了,所以呀,这个很正常,需要把vc中使用的dll文件拷贝到system32下,或者设置在环境变量中,也
可以在程序的目录中,至于说缺什么DLL,需要什么DLL,可以使用SKY++工具看看
我看了你们说的以后还是不太明白到底要怎么解决这个问题……
“将我电脑上的MFC42.dll拷贝到目标机器的system32里面”?这是什么意思。
我电脑安装了VC++6.0.
这个问题烦恼了我一个下午了,还请帮忙!谢谢!