当构建一个VS2013解决方案时(从VS8迁移),我得到以下错误。
错误1错误C2220:警告被视为错误--没有生成'对象'文件C:\\Program Files\Microsoft Visual Studio 12.0\VC\atlmfc\include\afx.h 38警告2警告C4996:'MBCS_Support_Deprecated_In_MFC'。MFC 中的 MBCS 支持已被废弃,并可能在未来的 MFC 版本中被移除。 C:\\程序文件Microsoft Visual Studio 12.0\VC\atlmfc\include\afx.h 38
这是由于下面的代码造成的。
#ifdef _MBCS
// Warn about MBCS support being deprecated: see http://go.microsoft.com/fwlink/p/?LinkId=279048 for more information.
#pragma warning(push)
#pragma warning(1 : 4996)
inline __declspec(deprecated("MBCS support in MFC is deprecated and may be removed in a future version of MFC.")) void MBCS_Support_Deprecated_In_MFC() { }
class MBCS_Deprecated_MFC
{
public:
MBCS_Deprecated_MFC() { MBCS_Support_Deprecated_In_MFC(); }
};
#pragma warning(pop)
#endif
如何找到解决方案中定义的_MBCS的位置。查找没有任何结果。
该 _MBCS
符号将根据您的项目属性中的设置来定义。请看 General->Character Set
- 这就是在命令行中添加所需条目的方法。
要继续使用 MBCS,你需要安装来自 微软在此
正如它所指出的 MSDN:
你的问题中的代码实际上提供了一个链接到 本博文其中讨论了这些变化并提供了下载链接。
// Warn about MBCS support being deprecated: see http://go.microsoft.com/fwlink/p/?LinkId=279048 for more information.
因此,你可以从上面的链接下载补丁,或者将你的应用程序迁移到UNICODE。