【问题标题】:MBCS Error building MFC C++ project with Visual Studio使用 Visual Studio 构建 MFC C++ 项目时出现 MBCS 错误
【发布时间】:2013-11-05 09:19:36
【问题描述】:

我使用 Visual Studio 打开了现有的 MFC 项目,并且在构建时收到以下错误消息:

Error 1 error MSB8031: Use of MBCS encoding in MFC projects require an additional library to be downloaded and installed. Please see http://go.microsoft.com/fwlink/?LinkId=286820 for more information. C:\Program Files\MSBuild\Microsoft.Cpp\v4.0\v120\Microsoft.CppBuild.targets

这是怎么回事?

【问题讨论】:

    标签: c++ visual-studio-2013 mfc visual-studio-2015 mbcs


    【解决方案1】:

    此错误消息是由于缺少 MBCS MFC 包造成的。从 Visual Studio 2013 开始,MFC 库的 MBCS 部分已从 Visual Studio 产品中分离出来,单独下载。安装这个包并重建应该可以解决问题。

    • 可下载here
    • 有关此更改的更多信息,请访问here

    Visual Studio 2015 更新

    从 Visual Studio 2015 开始,整个 MFC C++ 库(包括 MBCS 部分)都是可选的安装组件。安装VS2015时,如果选择C++和MFC,也会得到MBCS库。

    【讨论】:

    • 当我安装上面链接的 MFC MBCS 软件包时,我收到以下错误消息“此产品仅适用于 MFC 库,此计算机上不存在”。我使用 VS 2013 高级更新 3。
    • 你的机器上安装了VS2013吗?
    • 同时我解决了这个问题。原因是我在安装 Visual Studio 的时候没有安装 MFC 核心库,所以无法安装 MBCS MFC 包,因为它需要 MFC 核心库。
    • 使用 Visual Studio 2017 还可以更轻松地迁移旧的 MFC 项目 - 考虑升级
    【解决方案2】:

    您可以考虑将字符集从 MBCS 更改为 Unicode,而不是安装插件。

    这是在项目属性中完成的,如下所示。

    【讨论】:

    • 不过,这是有代价的。您可能需要更改代码。但是,是的,从长远来看,这是正确的方向。
    【解决方案3】:

    对于 Visual Studio 2015

    根据MSDN上的Redistributing the MFC Library文章,redist目录(c:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\redist\x86)下没有mfc140.dll文件.

    可再发行文件中省略了 mfc140.dll 文件 Visual Studio 2015 RTM 中的目录。您可以使用这些版本 由 Visual Studio 2015 安装在 Windows\system32 和 Windows\syswow64 目录。

    【讨论】:

      猜你喜欢
      • 2021-02-04
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-12-14
      • 1970-01-01
      • 2019-03-30
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多