错误Building an MFC project for a non-Unicode character set is deprecated
2016-06-23 16:48
405 查看
转载于:http://www.it165.net/pro/html/201403/10309.html和http://blog.csdn.net/shuaihj/article/details/17071351
vs2013是目前最新版的windows平台的开发环境,确实好用,还记得很多人编程的时候,安装了一些插件,有助于编程,但是时代到了vs2013,完全不需要这些辅助工具了,呵呵,但是也带来了一些麻烦,这时候我开始对微软的这些做法不解,最恼人的就是在vs2013的H3Viewer2.1中搜索msdn离线文档的时候,发现不能使用桌面应用开发的文档,就是没有win32的部分了,现在要去查,就得到在线msdn了,据说是微软要力推net开发,确实net帮助文档是完整的。好了,现在说说vs2013的另外一个问题,就是默认不再对多字节字符编码的支持,其实这个对我没什么影响,如果是我自己编写,我都用unicode,但是如果你打开以前的编译器编写的代码,如果是用的多字节字符编码,就会提示错误,如:C:\Program
Files\MSBuild\Microsoft.Cpp\v4.0\V120\Microsoft.CppBuild.targets(369,5): error MSB8031: Building an MFC project for a non-Unicode character set is deprecated. You must change the project property to Unicode or download an additional library. See http://go.microsoft.com/fwlink/p/?LinkId=286820 for more information.
要解决这个错误,有两个办法,一个是在项目属性中,把字符编码改成unicode字符集
但是这样一来,就必须在代码中将各种字符都要修改,如很多函数接收的参数就编程了unicode的了,SetWindowText("hello world"),就要改成SetWindowText(L"hello world");或是SetWindowText(TEXT("hello world"));才可以编译成功。如果代码多,那就比较麻烦了。
第二种方法就是添加库,使vs2013支持多字节字符,这个就需要下载和安装一个文件http://pan.baidu.com/s/1Acu6M,安装了之后,就可以解决这个问题了。之后再编译,就会成功。不过安装之后,应该重启vs2013。就是安装 Multibyte MFC Library for Visual
Studio 2013
vs2013是目前最新版的windows平台的开发环境,确实好用,还记得很多人编程的时候,安装了一些插件,有助于编程,但是时代到了vs2013,完全不需要这些辅助工具了,呵呵,但是也带来了一些麻烦,这时候我开始对微软的这些做法不解,最恼人的就是在vs2013的H3Viewer2.1中搜索msdn离线文档的时候,发现不能使用桌面应用开发的文档,就是没有win32的部分了,现在要去查,就得到在线msdn了,据说是微软要力推net开发,确实net帮助文档是完整的。好了,现在说说vs2013的另外一个问题,就是默认不再对多字节字符编码的支持,其实这个对我没什么影响,如果是我自己编写,我都用unicode,但是如果你打开以前的编译器编写的代码,如果是用的多字节字符编码,就会提示错误,如:C:\Program
Files\MSBuild\Microsoft.Cpp\v4.0\V120\Microsoft.CppBuild.targets(369,5): error MSB8031: Building an MFC project for a non-Unicode character set is deprecated. You must change the project property to Unicode or download an additional library. See http://go.microsoft.com/fwlink/p/?LinkId=286820 for more information.
要解决这个错误,有两个办法,一个是在项目属性中,把字符编码改成unicode字符集
但是这样一来,就必须在代码中将各种字符都要修改,如很多函数接收的参数就编程了unicode的了,SetWindowText("hello world"),就要改成SetWindowText(L"hello world");或是SetWindowText(TEXT("hello world"));才可以编译成功。如果代码多,那就比较麻烦了。
第二种方法就是添加库,使vs2013支持多字节字符,这个就需要下载和安装一个文件http://pan.baidu.com/s/1Acu6M,安装了之后,就可以解决这个问题了。之后再编译,就会成功。不过安装之后,应该重启vs2013。就是安装 Multibyte MFC Library for Visual
Studio 2013
相关文章推荐
- AndroidStudio导入项目一直卡在Building gradle project info最快速解决方案
- Gradle自定义你的BuildConfig
- 改变UITextField中的系统控件的大小及位置
- Vuejs学习2--Vue实例
- Vuejs学习1--概述
- AIX installation guide
- Vuejs学习0
- 【iOS】UILabel 常用属性设置
- 【转】iOS开发UITableViewCell的选中时的颜色设置
- 【转】iOS UITableView的方法解析
- uicollectionview cell 行间距、列间距
- 详解build.gradle
- oledb 处理excel 报错 UPDATE “Operation must use an updateable query”
- UITableViewCell的高度自适应
- HIVE Row_Sequence 实现列自增长
- disabled="true" 的标签元素不可提交
- LeetCode—357. Count Numbers with Unique Digits
- UGUI与NGUI的区别与优缺点
- 1099. Build A Binary Search Tree
- 短序列组装Sequence Assembly(转载)