您的位置:首页 > 编程语言 > C#

vs2012打开vs2010的c#项目遇到的mfcs100u.lib无法打开(V100缺失)的问题

2016-05-24 09:40 916 查看
最近公司有个Visual Studio 2010的项目要重新编译生成下DLL

用2012打开并升级了项目后,编译时报以下错误



搜索了一下VS2012的目录,发现有110没有100



看了下项目属性常规



没有v100

在网上搜了下,发现相关内容比较少,有个建议弄宏的,看得不是很懂

/article/2019997.html

看了下知乎,上面推荐不同项目用不同环境,避免升级带来的问题

装了VS2010后问题解决



附:MFC的静态库.lib、动态库.dll(包含引入库.lib)以及Unicode库示例

/article/6336752.html

一 MFC的静态库(.lib)

MFC静态库使用下列命名约定:

uAFXcWd.LIB .

库命名约定的说明符如下:

说明符 值和含义

u (n) ANSI 或 (u)Unicode

c 创建的计划类型:c=all

d d=debug版本; release版本略去说明符

默认值为生成用于 Intel 平台的调试版本 windows ANSI 应用程序的静态库:NAFXCWD.Lib.

下表列出的所有库是在 \ atlmfc \ lib 目录中包含预生成的静态库。

静态链接库命名约定:

库 说明

NAFXCW.LIB MFC 静态链接库,发布版本

NAFXCWD.LIB MFC 静态链接库,调试版本

UAFXCW.LIB MFC 具有 Unicode 的静态链接库支持,发布版本

UAFXCWD.LIB MFC 具有 Unicode 的静态链接库支持,调试版本

二 MFC的动态库(含引入库.lib)

MFC 中包含的 DLL 和库遵循结构化命名约定。这使了解应为什么目的使用哪个 DLL 或库变得更容易。

生成使用这些 DLL 的应用程序或扩展 DLL 所需的导入库与 DLL 具有相同的基本名称,但带有 .lib 文件扩展名。

共享 DLL 命名约定:

DLL(导入库.lib) 说明

MFCxx.DLL (MFCxx.lib/MFCSxx.lib) MFC DLL,ANSI 发布版本

MFCxxU.DLL (MFCxxU.lib/MFCSxxU.lib) MFC DLL,Unicode 发布版本

MFCxxD.DLL (MFCxxD.lib/MFCSxxD.lib) MFC DLL,ANSI 调试版本

MFCxxUD.DLL (MFCxxUD.lib/MFCSxxUD.lib) MFC DLL,Unicode 调试版本

三 MFC所有Unicode库示例

MFC 库的 Unicode 版本如下述:

静态链接库:

发布(Release) 调试(Debug) 说明

UAFXCW.lib, .pdb UAFXCWD.lib, .pdb Unicode MFC 静态链接库

动态链接库:

发布(Release) 调试(Debug) 说明

MFC100U.lib, .dbg, def, .dll, .map, .pdb, .prf MFC100UD.lib, .def, .dll, .map, .pdb Unicode MFC 包含应用程序或 DLL 必须静态链接的代码的导入库

MFCS100U.lib, .pdb MFCS100UD.lib, .pdb Unicode MFC 包含应用程序或 DLL 必须静态链接的代码的导入库

文件类型:

•导入库文件具有扩展名 (.lib)。

•动态链接库文件具有扩展名 (.dll)。

•模块定义 (.def) 文件是包含定义的 .exe 或 .dll 语句的文本文件。

•映射 (.map) 文件是包含信息链接器使用,在链接程序中的文本文件。

•导入库 (.lib) 文件与 MFC 的 DLL 版本一起使用。 这些文件包含应用程序或 DLL 必须静态链接的代码。

•程序数据库 (.pdb) 文件中调试和项目状态信息。

•调试 (.dbg) 文件包含 Visual C++ 调试器使用的信息 (COFF FPO 和 CodeView)。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: