两个超恶心的错误,现在网络上面针对这些错误都有很多种做法:
http://blog.csai.cn/user1/16781/archives/2006/6412.htmlhttp://www.qqgb.com/Program/VC/VCJQ/Program_165466.htmlhttp://topic.csdn.net/u/20071105/11/673EBD2D-CD29-419D-8486-433D6C1A28FA.htmlhttp://www.ureader.com/msg/145357.aspxhttp://topic.csdn.net/u/20071229/21/490eb437-9693-4666-8a97-f236c81b0036.html等等这些,都提出了很多,但是总结起来vc2005里面主要要修改的地方还是有一些的.
项目属性页->常规->配置类型,->MFC的使用,->字符集(Unicode/Multi-byte)
项目属性页->调试->工作目录.
项目属性页->C/C++->优化.
项目属性页->预处理器->预处理器定义
项目属性页->C/C++->代码生成->运行时库
项目属性页->C/C++->预编译头文件->创建/使用预编译头文件
项目属性页->连接器->常规->启用增量连接(这个主要是影响map文件信息的声称)
项目属性页->连接器->常规->附加库目录
项目属性页->连接器->清单文件->生成清单
项目属性页->连接器->系统->子系统
项目属性页->连接器->高级->入口点
项目属性页->连接器->命令行(添加附加的库).
当然还有清单工具等等.
基本上一些工程的配置都在上面进行,以前总是在弄弄,但是没发觉什么,今天弄烦了,索性将他全部列出来.
winMain相关错误除了前面的解决办法之外,还要注意一些模板的设置,比如,win32 console和win32 app的主函数就是不一样的,而mfc的主函数就更加不一样了,所以不能将一些工程模板的主函数混淆起来.
之前我出现的一个错误就是在win32 console里面用win32 app的主函数.
而对于msvcr80d.dll的错误一般是要处理:项目属性页->C/C++->代码生成->运行时库将mtd改为md或者其它的,在上面的url里面也有相应的说明,只希望这两个错误以后不能再犯了.呵呵
PRJ0019: 这个错误以前在编译ut的时候就出现过,ut2004,后来一直都没有重视它,现在又出现了,就不能不重视了.
这个错误的报告是"生成后事件目录错误".具体的解决办法是工程的目录太深,需要将之清除.
项目属性页->生成事件->生成后事件.出现这个错误的时候,命令行上面有一个很长串的目录,需要将这个清除掉后再重新编译即可.