摘要:
VC++常规错误之17:1>nafxcwd.lib(afxmem.obj) : error LNK2005(1)错误案例:在写日志程序中出现,工程是MFC程序(注:win32控制台应用程序,不会出现这种错误,当然是不支持MFC库的那种)(2)错误原因:如下能看出一点眉目,重定义了.在使用***.obj时,已经在***.lib库中定义了.摘抄:上网搜了下,是CRT库与MFC库的冲突,解决方法是:让程序先链接Nafxcwd.lib,然后再链接Libcmtd.libyou've got to change the order inwhich the libraries are link 阅读全文
摘要:
原因很简单。如果项目不需要用到rc文件,则排除所有rc文件到项目外。要么试试:项目\属性\配置属性\清单工具\输入和输出\嵌入清单:原来是“是”,改成“否”。 阅读全文
摘要:
无意中遇到了这样的编译问题, 于是google,发现在.h文件里定义变量,发生这问题的概率是灰常大的.下面这段红字是参考网上的说法:当你第一个使用这个头的.cpp文件生成.obj的时候,int i在里面定义了当另外一个使用这个的.cpp再次[单独]生成.obj的时候,int i又被定义然后两个obj被另外一个.cpp也include这个头的,连接在一起,就会出现重复定义.不过经过一轮研究发现.. 其实这说法不怎么正确.. 最起码对VS来说..经过实验, 发现只要有两个cpp同时包含一个定义了变量的.h文件,就会提示错误.再回想下刚考完的编译原理,obj是什么? 其实就是cpp翻译后的一坨中间代 阅读全文
摘要:
1.nafxcw.lib(appcore.obj) : error LNK2001: unresolved external symbol ___argvnafxcw.lib(appcore.obj) : error LNK2001: unresolved external symbol ___argcnafxcw.lib(apphelp.obj) : error LNK2001: unresolved external symbol __mbctypenafxcw.lib(filelist.obj) : error LNK2001: unresolved external symbol __ 阅读全文
摘要:
: 不能将参数 2 从“const char *”转换为“LPCWSTR”在VS2008下使用MFC编程遇到错误:error C2664: “CFrameWnd::Create”: 不能将参数 2 从“const char [12]”转换为“LPCTSTR”。解决办法:项目-属性-配置属性-常规,将字符集由“使用Unicode字符集”改为“使用多字字符集”。具体原因参照如下长篇大论:Problem This error message means that you are trying to pass a multi-byte string (const char [12]) to a fun 阅读全文
摘要:
例如“error LNK2019: 无法解析的外部符号_imp__SetupDiGetDeviceInterfaceDetailW@24error LNK2001: 无法解析的外部符号“private: static struct _OVERLAPPED CUsbCom::g_WriteOverlapped”应该是工程设置的问题 没有连接相应的lib库或者是所用到的函数没定义(这个定义是在别的类里面的)当出现error LNK2001: 无法解析的外部符号 _print_interfacelog.obj可在log.c里搜print_interface(无前面_),找到此函数,看有无定义学习VC 阅读全文
摘要:
waiting for result! 阅读全文
摘要:
导致原因:虽然主源文件没有引用相关的文件,而项目有包括这些文件到项目中。故而也会编译。 阅读全文
摘要:
cl.exe的功能是将源代码文件编译为可提供链接器使用的obj对象文件。cl.exe命令行参数形式如下:CL (option...) file... [option | file]... [lib...] [@command-file] [/link link-opt...]各命令行参数的意义如下 :1、option命令行中的"option"是指一个或多个编译选项。在指定选项时,需要在选项前加正斜杠(/)或一个短划线(-)。有一些选项还会带有参数,使用":"来指定选项的参数。比如"/sybsystem:windows,5.0"是一个编 阅读全文
摘要:
这一章节介绍的全是VC编译器选项,option参数是cl.exe的编译选项,是cl.exe命令行参数中最复杂、也是最常用的。下面介绍一些常用的编译选项:1、代码生成有关这些选项将影响编译完成后生成的机器代码:2、调试有关与调试有关的编译选项如下图,/Z7、/Zi、/ZI这三个选项是对程序进行调试时所必需的选项,同时注意,在生成调试版本的程序时,需要指定/Od选项以禁用优化:3、程序优化有关与程序优化有关的选项如下图,优化选项将影响编译器对代码的优化,最选择代码体积最小还是选择运行速度最快等需要使用这些选项:4、输出文件有关与生成的输出文件有关的选项如下图,输入文件在参数中需要使用字符串来指定其 阅读全文