error MSB8031 Building an MFC project for a non-Unicode character set is deprecated
VS2013多位元組工程問題
使用VS2013編譯舊版VC++程式時,提示Building an MFC project for anon-Unicode character set is deprecated,微軟提供瞭解決方案。
一、錯誤資訊
1>C:\ProgramFiles (x86)\MSBuild\Microsoft.Cpp\v4.0\V120\Microsoft.CppBuild.targets(376,5):error MSB8031: Building an MFC project for a non-Unicode character set isdeprecated. You must change the project property to Unicode or download anadditional library. See http://go.microsoft.com/fwlink/p/?LinkId=286820 formore information.
==========生成: 成功 0 個,失敗 1 個,最新 0 個,跳過 0 個 ==========
二、微軟解釋
用於多位元組字元編碼 (MBCS) 的 MFC 庫 (DLL) 不再包含於 Visual Studio 中,但是可用作外掛,您可以在任何裝有 Visual Studio Professional、Visual StudioPremium 或 Visual Studio Ultimate 的計算機上下載和安裝。(在 Visual Studio 中,必須啟用 MFC。)安裝需要大約 440 MB 磁碟空間,包括英語(美國)和 DLL 的本地化版本。
在安裝 MBCS DLL 後,如果解除安裝或修復 VisualStudio,則還會解除安裝或修復。 但是,如果只禁用 MFC,MBCS DLL 仍會保留在系統上。 如果僅解除安裝或修復 MBCS DLL,將不會修改 VisualStudio。
具體內容:
Hello,I’m Pat Brenner, a developer on the Visual C++ Libraries team. In this blogpost I want to share some information about the Microsoft Foundation Class (MFC) Library, and in particular the support of the multi-byte character set(MBCS) in MFC.
MFChas many features that support building desktop apps, and MFC has supportedboth Unicode and MBCS for many years. However, because Unicode is so popular,and because our research shows significantly reduced usage of MBCS, we aredeprecating MBCS support in MFC for Visual Studio 2013. This keeps MFC moreclosely aligned with the Windows SDK itself, because many of the newestcontrols and messages are Unicode only. A warning to this effect has been addedto MFC, so when an application is built using MBCS, a deprecation warning isissued. This warning can be eliminated by adding theNO_WARN_MBCS_MFC_DEPRECATION preprocessor definition to your project builddefinitions.
MFC isa very large library and its binary components (static and dynamic librariesand PDBs) form a large part of the total size of the Visual C++ product. Thesize of the MFC libraries substantially increases both download size andinstall time (in full install and update scenarios). In part this is becausethere are so many flavors of the MFC libraries: Debug/Release, Unicode/MBCS,Static/Dynamic. To address this, the MBCS libraries will only be available viaa separate download, which is available here.
Thegoal is to remove MBCS support entirely in a subsequent release. MFC would thensupport only Unicode. We are interested in hearing feedback about thisdecision, so if you have comments, please take the time to leave a response tothis article. Are you using MBCS in MFC? If so, what is the reason, and isthere a reason you have not converted your application to Unicode?
We’recommitted to supporting MFC and making sure that applications built with MFCwill run on future Windows platforms. I hope you find this information usefuland reassuring.
PatBrenner, Visual C++ Libraries Development Team
三、Multibyte MFC Library for Visual Studio2013下載地址
http://www.microsoft.com/zh-cn/download/details.aspx?id=40770
相關文章
- 解決:錯誤 1 error MSB8031: Building an MFC project for a non-Unicode character set is deprecatedErrorUIProjectUnicode
- Qt開發,報錯:Error while building/deploying project untitled (kit: ....)QTErrorWhileUIProject
- Unknown initial character set index ‘255‘ received from server. Initial client character set can beIndexServerclient
- Indexing Mixed-Character Set ColumnsIndex
- character_set_database的意義Database
- 【Mysql】character-set-server引數MySqlServer
- 【轉】修改Oracle字符集(character set)Oracle
- mysql:Variable 'character_set_client' can't be set to the value of 'NULL'解決MySqlclientNull
- Caused by: Error: ' ' is not a valid resource name characterError
- Oracle 10中修改字符集(character set)Oracle
- Variable 'character_set_client' can't be set to the value of Null的解決方法clientNull
- [mysql] 批量匯入提示: Variable ‘character_set_client’ can’t be set to the value of ‘NULLMySqlclientNull
- mysql關於字符集character set的總結MySql
- rhel4 mysql5.5 字符集_character setMySql
- Get "ORA-29275: partial multibyte character" errorError
- MySQL字符集和校對規則(character set & collation)MySql
- mysqlbinlog: unknown variable 'default-character-set=utf8'MySql
- MySQL:簡單記錄character_set_server影響引數MySqlServer
- B19306_01 閱讀筆記(character set)筆記
- 關於MySQL中的8個 character_set 變數說明MySql變數
- Qt #pragma execution_character_set("utf-8") 執行字符集QT
- DataPump Export (EXPDP) Fails With Error LPX-216 Invalid CharacterExportAIError
- DEPRECATED: Use of this script to execute hdfs command is deprecated.
- oracle exp&imp之IMP-00037: Character set marker unknownOracle
- PHP Deprecated: Assigning the return value of new by reference is deprecatedPHP
- eclipse error .This project needs to migrate WTP metadata.EclipseErrorProject
- The type MultipartEntity is deprecated
- Changing Primary DB Character Set without Recreate DG Physical Standby_1124165.1
- 安裝benchmarksql報java:143: error: unmappable character for encoding ASCIISQLJavaErrorAPPEncodingASCII
- MFC-error C2589: “(”:“::”右邊的非法標記Error
- 解決AndroidStudio匯入專案在 Building gradle project info 一直卡住AndroidUIGradleProject
- MySQL 8.0.26 bug ERROR 1064(42000) -master-data is deprecated and will be removeMySqlErrorASTREM
- configuring Csscan in 10g and 11g (Database Character Set Scanner)_745809.1CSSDatabase
- AL32UTF8 / UTF8 (Unicode) Database Character Set Implications [ID 788156.1]UnicodeDatabase
- 解決Deprecated: mysql_connect(): The mysql extension is deprecated and will be removed in the future:MySqlREM
- ERROR: Cannot uninstall ‘PyYAML‘. It is a distutils installed project and thus we cannot accuratelyErrorYAMLProject
- rhel5_oracle10g_10.2.0.4_字符集character set_nls_valid_valueOracle
- Arduino BuildingUI