影响C++开发者的Visual Studio 2015 的安装改变

[原文发表地址]Setup Changes in Visual Studio 2015 Affecting C++ Developers

[原文发表时间]2015/07/24 9:30 AM

如之前Visual Studio 2015 集成开发环境博客所提到的,Visual Studio 2015为用户安装体验提供更多的选择, 什么安装,什么可以不安装。 那篇博客解释了这种改变的理由,以及将来Visual Studio的安装指导。C++现在是可选安装的其中一个功能(而不是默认安装)。这样让那些非C++开发者不需要消耗多余的安装时间和磁盘空间安装他们并不需要的C++。 同时,C++开发者仍然可以获取他们所需的组件。

VC++开发经理 Steve Carroll的说明

我们已经收到很多关于这一改动的反馈,这这里我想澄清一些大家普遍的问题和担心。

最普遍的问题就是为什么只有C++变成可选安装的选项。C++团队在VS2015发布的过程中做了很多次工程完善来改善C++的安装,所以我们才能够比VS其他部分用了较短时间分离出我们的资源包,编译器,和Lib库。C++仍然是一个很大的组件,因为我们所包含的库文件很大,因为覆盖了很多架构以及相匹配的PDBs。C++也依然需要安装Windows SDK. 很多非C++开发者不需要这么大的额外负担,因此对于VS安装体验有显著提升的一定是通过这种改变。

集成开发环境博客所提到的,在所记录的计划中, Visual Studio的一大部分都会变成可选安装,就像我们所做的。这是正在进行中的第一项工作。我想打消C++开发者的担心,这样的改变绝不意味着降低C++开发的重要性,我们的探测和研究告诉我们C++开发在VS里的用处,并且整个行业都是在加速的,而不是减速的,我们将会继续加大C++的投入。

我有提到过我们正在招聘新的职员么?

 

谢谢!

Steve

不同之处

在Visual Studio 2015,C++工具不再默认安装。而是,C++编译器,库,工程模板都被移动到可安装选项中。在启动的安装界面上,你可以选择“典型”或者“定制”安装:

如果你选择“典型”安装,你将不能使用Visual Studio 开发C++, 因为只有托管语言和web开发工具将会被安装。 如果想要安装C++中的桌面和手机开发的组件,你必须选择“定制”安装,手动选择那些条目:

请注意“Programming Languages”下面的”Visual C++”结点分为三个部分,因此你可以选择不装那些你不需要的工具。 在进行以前我们建议你仔细阅读所有的可选条目。特别是:

  • “Common Tools for Visual C++ 2015” 包含了C++的编译器/链接器集,库文件,桌面(Win32)工程模板。
  • “Microsoft Foundation Classed for C++”包含那些在编译应用需要使用MFC的库文件和工程模板。 注意这个选项包含对MFC多字节字符集的支持,不需要像在Visual Studio 2013中那样额外单独下载安装包。
  • “Windows XP Support for C++”包含Windows7.1 SDK,可以用v140_xp平台工具来编译针对XP的应用。

Windows 8.1 和Windows Phone 8.0/8.1 支持的说明

Windows 8.1 和Windows Phone 8.0/8.1 的XAML 编译依赖“Common Tools for Visual C++ 2015”,当选择“Windows 8.1和 Window Phone8.0/8.1”选项时,“Common Tools for Visual C++ 2015” 这个选项不是自动选中的。如果“Common Tools for Visual C++ 2015”并没有选中安装(我们正在研究这个选项并在短期内解决)的,请在选择“Windows 8.1 和 Windows Phone 8.0/8.1“选项时,再做一选中操作。

从命令行选择Visual C++功能特性

 

为了支持从命令行安装可选功能选项,/InstallSelectableItems 参数命令已经被添加在Visual Studio 2015 社区版,专业版和企业版中了。

/InstallSelectableItems 参数接收分号分隔的标识符列表,这个列表和安装对话框中的可选功能选项相对应。

对于自动安装的情况, 例如部署一个实验室,后面的命令将会安装”Visual C++“结点下面的所欲可选的功能项:

vs_enterprise.exe /q /norestart /InstallSelectableItems NativeLanguageSupport_Group

这个例子使用的是企业版的安装包(VS_Enterprise.exe)。 这个当然对专业版和社区版同样适用。

下面列出了Visual Studio 2015 RTM版中所有的可选功能和标识符, 可以用来安装C+功能特性。

VS 安装的可选功能项 (命令行标识符)

描述

Common Tools for Visual C++ 2015 (NativeLanguageSupport_VC )

V140编译器集,C++桌面应用工程模板和库

Microsoft Foundation Classes for C++ (NativeLanguageSupport_MFC)

Visual C++中的MFC库, 需要Common Tools for Visual C++ 2015

XP Targeting for C++ (NativeLanguageSupport_XP )

针对于XP 的Visual C++工具,需要Common Tools for Visual C++ 2015

Visual C++ [parent node] (NativeLanguageSupport_Group)

选择上面的三个选项
Windows 8.1 and Windows Phone 8.0/8.1 Tools (ToolsForWin81_WP80_WP81) 包含Visual C++编译器工具集(V120和V110),库,Windows 8.1 和Windows Phone8.0/8.1 应用模板。注意:这个选项不是Visual C++ 特有。

如果我没有安装Visual C++呢?

我们知道Visual Studio用户可能在他们初始安装的时候没有选择所有的工具和库,我们有修改Visual Studio的操作来处理这种情况。当然,你同样可以在”系统控制面板”通过“添加或者删除程序”再一次直接运行安装程序。

创建新的工程

为方便起见,在新工程的窗口,我们插入了预留模板,它将会为组件触发所要开发类型的应用的安装包:

例如,选择上面的模板将会触发开发MFC应用所需的工具安装程序:

打开现有的工程

当你尝试打开你之前未打开过的工程,它需要安装一些你还没安装的组件,Visual Studio 将会让你知道你所缺失的组件,如果你选择,将会安装他们:

如果你忽略安装,Visual Studio将不会加载那些工程。重复的加载操作将会弹出同样的窗口。你也可以通过右键未加载工程,选择“Install Missing Feature(s)”来直接安装:

自定义工程

如果你编辑过工程文件,并且将标识信息移入到.props文件和.target文件,那么这个工程将不支持自动安装。这时,请注意输出窗口,它会列出工程所缺失的一些安装包。

如果你有任何问题和疑虑,请随意写出来给Daniel Griffing Daniel.Griffing@microsoft.com.