Visual Studio 2012 Update 4 的说明

本文介绍 Visual Studio 2012 Update 4,并列出了新功能并修复了其中的问题。

原始产品版本: Visual Studio 2012
原始 KB 编号: 2872520

简介

Microsoft (Visual Studio 2012.4) 于 2013 年 11 月 13 日发布了 Visual Studio 2012 更新 4。

对 Visual Studio 2012 的支持仅适用于当前更新(被视为 Visual Studio 2012 Service Pack)和 Visual Studio 2012 RTM 版本(于 2012 年 8 月发布)。 有关详细信息,请参阅Microsoft 支持部门生命周期策略。

获取 Visual Studio 2012 Update 4

Visual Studio 2012 更新是累积版本,其中包括 Visual Studio 2012 更新概述中提供的新功能和修补程序。 以下下载链接指向最新更新:

立即下载最新的 Visual Studio 2012 更新包

安装 Visual Studio 2012 Update 4

有关 Visual Studio 产品的安装指南,请参阅:

重要

此更新适用于 Visual Studio 和 Team Foundation Server (TFS) 。 Visual Studio 和 TFS 安装机制不同。 Visual Studio 更新是一种更新,它安装在计算机上已安装的任何内容之上。 TFS 更新是一个完整的布局,可替换计算机上安装的任何内容。 在尝试应用 TFS 更新之前,请确保具有当前数据库的完整备份。 如果 TFS 更新安装失败,则如果不执行还原,将无法重启更新或回滚到早期版本的 TFS。

由于 Visual Studio 2012 Update 4 已推出,因此以下升级路径适用。

支持的升级

  • TFS 2012 Update 4 RC 4 to TFS 2012 Update 4 RTM
  • TFS 2012 将 4 RTM 更新为 TFS 2013 RTM

不支持的升级

  • TFS 2012 更新 4 RC 4 到 TFS 2013

Visual Studio 2012 Update 4 中的新技术改进和修复问题

以下部分列出了 Visual Studio 2012 Update 4 中的改进和修复问题。

注意

除非另有说明,否则链接项目会将你带到 Microsoft Connect 网页。

Team Foundation Server

  • 管理和操作

    • 假设在未安装 Microsoft SQL Server 实例的计算机上安装 Team Foundation Server (TFS) 2012 应用程序层服务器。 未配置Microsoft SQL Server Reporting Services。 在这种情况下,无法升级应用程序层服务器。

    • 如果 TFS 2012 的SQL Server服务作为虚拟帐户运行,则不再阻止计划备份配置 (例如 NT Service\MSSQLSERVER) 。

    • 在 TFS 2012 Update 2 和 Update 3 中,事务备份在完全备份或差异备份运行时尝试运行时会记录失败。

    • 如果正在运行完整备份或差异备份,计划备份不再运行事务备份。 相反,作业将挂起,直到另一个备份完成运行。

    • TFS 就地升级现在支持配置和设置暂留以及主机标头。 当进程遇到无效的主机标头时,TFS 就地升级将记录错误。

    • 将配置数据库升级到 TFS 2012 Update 3 并将 TFS 集合附加到升级的配置数据库时,成员身份和权限可能会丢失。

    • 尝试升级 TFS 时,升级操作可能不成功,并收到以下错误消息:

      TF20507:字符串参数包含无效的字符:u0009。

    • 将 TFS 集合附加回升级后的 TFS 服务器时,会发生意外的数据库故障,并且 TFS 集合升级不成功。

    • 假设使用用户移动域,然后分离集合并将其附加到现有配置数据库。 在 TFS 中保存收藏夹时,无法保存收藏夹。

    • 假设在之前的域迁移和显示名称更改后,使用用户将 TFS 服务器升级到 TFS 2012 Update 3。 用户不会在工作项跟踪中处于活动状态。

    • 假设有两个标识使用相同的域和帐户名称。 例如:domain1\user1。 在这种情况下,将激活错误的用户,并且用户 domain1\user1 无法访问 TFS 集合。

  • 敏捷规划

    • 假设你有一个包含许多团队项目的 TFS 2012 实例。 在 TFS SharePoint 门户中打开“仪表板”页面时,性能会降低,并可能会收到错误消息。

    • 在计算机上使用土耳其区域设置并将内联图像上传到 Visual Studio 2012 中的工作项时,其他客户端无法查看该图像。

    • 如果 TFS 2012 服务器配置为与 Project Server 同步,则可能无法对积压工作项进行重新排序。

  • 生成自动化

    • 假设使用 TFS 2010 服务器中的升级模板为生成定义创建封闭检查。 将 TFS 2010 服务器升级到 TFS 2012 服务器,然后将升级后的 TFS 服务器与 TFS 2010 生成代理一起使用。 在这种情况下,执行检查操作时,生成在 TFS 2010 生成代理上失败。

    • 假设使用 TFS 2010 服务器中的默认模板创建生成定义。 将服务器从 TFS 2010 升级到 TFS 2012 时,将修改生成定义以针对新上传的升级模板运行。

    • 未创建日志的 zip 文件,因为存档操作失败警告在成功完成生成时发生。

    • IndexSources 生成工作流活动遇到性能缓慢的问题。

    • 假设计划的生成运行时间很长,然后在第二天手动停止生成。 再次手动对生成进行排队时,会取消下一个计划的生成。

    • 在文件容器中使用升级模板定义生成时,在生成排队后,生成将启动,但永远不会完成。

    • 由于以前的生成失败,生成可能会在最后一个步骤冻结,并且永远不会完成。

  • 版本控制

    • 当用户打开尝试按用户的显示名称筛选历史记录的任何视图时,将收到错误消息。 如果显示名称包含特殊字符(如逗号),则会出现此问题。

    • 假设你尝试在 TFS 服务器的大型文件中检查。 无法上传文件。 再次在文件中检查时,会收到一条错误消息,指出以前的上传过程失败。

    • 假设你编辑了一个文件,但不保存它。 在“挂起的更改”窗口中检查文件时,可能不会收到要求保存该文件的消息。

  • 工作项跟踪

    • 使用 Internet Explorer 浏览使用工作项存储的任何页面时,延迟为 60 秒。 如果集合包含超过 175 个团队项目,则会出现此问题。

    • 如果团队与多个区域路径相关联,则用于创建或编辑工作项的功能将停止工作。

    • 在看板中移动项的功能在某些具有混合区域性的环境中不起作用。

    • 将查询与包含常量的“分配到”字段一起保存时,如果常量也是 TFS 组显示名称,则保存并运行查询后,用户将不会看到正确的查询结果。

    • 假设你有一个 TFS 2012 服务器插件,该插件 (例如,在保存工作项) 期间,向用户显示泛型 AJAX 异常,而不是插件引发的异常。

    • 对某个区域没有工作项写入权限的组中的 TFS 用户可以将工作项的区域更改为具有写入权限的其他区域。

    • 删除团队项目时,在对工作项执行创建、读取、更新和删除操作时,可能会收到以下错误消息:

      TF400013:发生意外的数据库错误。 请与 Team Foundation Server 管理员联系。 (代码:208)

    • 针对具有许多允许的字段值的工作项类型的 Web Access 性能改进。

  • Web 访问

    • 尝试使用 Web 浏览器和意外的用户代理字符串连接到 TFS 2012 服务器时,会收到内部错误页,而不是请求的页面。 此外,你无法访问任何 TFS Web 访问页。

    • 假设你有一台配置为与 Project Server 同步的 TFS 2012 服务器。 尝试在 TFS Web 访问中保存复制的工作项时,可能会收到以下错误消息:

      TF237165:由于服务器上的验证错误,Team Foundation 无法更新工作项。 这可能是因为工作项类型已被修改或销毁,或者你没有更新工作项的权限。

Windows 窗体

你可能会在 Windows 窗体 Designer 收到以下错误消息:

集合已修改;枚举操作可能不会执行

LightSwitch

  • 安装 Visual Studio 2012 Update 3 后,以下两个应用程序都不会显示本地化字符串。 相反,这些应用程序会显示英语字符串。

    • LightSwitch 超文本标记语言 (HTML) 应用程序 (VB 或 C#)
    • 升级的 LightSwitch 应用程序 (VB 或 C#)
  • 安装 .NET Runtime 4.5 的最新安全更新后,LightSwitch HTML 应用程序会定期显示英语字符串。

  • 假设打开一个项目,该项目包含一个屏幕以及多个日期成员。 此外,每个日期成员都有一个显示名称集。 在这种情况下,当你尝试在屏幕设计器中执行操作时,屏幕设计器会冻结。

调试

  • 远程调试托管在 Internet Information Services (IIS) 中的 ASP.NET 应用程序时,代码隐藏中的断点可能不会命中。

  • 首次尝试调试 Visual Studio 独立 shell 应用程序时,会收到错误消息。

  • 调试本机代码时,调试器偶尔会步到错误的行。

  • 使调试器能够附加在 Microsoft Azure 中运行的远程网站。

Visual Studio IDE

  • 安装 Telerik Justcode 或 Codemith 工具时,Visual Studio 2012 随机崩溃。

  • 在Windows 8.1 预览版上,项目对话报表的格式不正确。

  • 假设你有一个不属于 Visual Studio 项目的数据集 (.xsd) 文件。 在 Visual Studio 2012 中打开数据集文件时,会收到一条错误消息,指出参数不正确。

  • 加载某些解决方案时,Visual Studio 2012 可能会崩溃。

  • 如果打开了 “查看空白” 选项,则滚动源代码页时性能降低。

  • 在长时间运行的 Visual Studio 会话中,打开和关闭文档、工具窗口等时,Visual Studio 在某些情况下可能会崩溃。

Windows 开发

假设已在 Windows 8 计算机上安装 Visual Studio 2012 Update 3。 将操作系统升级到Windows 8.1预览版或更高版本。 在这种情况下,启动 Windows 模拟器时会收到阻止对话框。 此外,按照对话框中的说明操作后,仍无法启动 Windows 模拟器。

分析器

  • 适用于 64 位应用程序的并发可视化工具不适用于 64 位Windows 8.1操作系统。
  • 在 Windows 8.1 预览版 上分析应用程序时,分析工具在收集和显示符号信息时出现问题。

C++

  • 当 try 块调用外部动态链接库 (DLL) 中存在的函数时,C++ 优化器可能会错误地删除 Catch 块。

  • 卸载 Visual Studio 2012 时,将卸载 Visual C++ 2012 可再发行程序包。

  • Visual Studio 2012 安装中缺少 visual C++ 可再发行引导程序文件 (product.xml) 。

  • 与“生成调试信息”选项一起生成 C++ 应用程序时,会收到以下错误消息:

    致命错误LNK1318:意外的 PDB 错误

  • /LTCG (链接时代码生成) 选项一起构建大型应用程序时,链接器间歇性崩溃。

  • 编译包含许多虚拟函数的 C++ 类以及 /LTCG (链接时代码生成) 选项时,可能会出现内部编译器错误。

  • 调试 Visual C++ 应用程序时,无法正确可视化和显示类型的成员变量。

  • 启用优化选项时,可能会生成错误的 x64 计算机代码。

IntelliTrace

Visual Studio Ultimate 2012 现在能够打开由 Microsoft Monitoring Agent 创建的 IntelliTrace 日志文件。

.NET Framework Core

添加了对 NuGet 中的可移植类库的支持。

实体框架工具

假设你已安装 Microsoft Visual Studio Express 2012 for Web 或 Visual Studio Express 2012 for Windows Desktop 以及 Visual Studio 2012 Update 1 或更高版本。 执行生成实体的 T4 模板时,实体框架设计器中会收到以下编译时错误消息:

对于名为“CleanupBehavior”的指令,找不到名为“T4VSHost”的处理器。 不会运行转换。 引发了以下异常:
System.IO.FileNotFoundException:无法解析指令处理器 T4VSHost 的类型。

电话工具

  • Windows Phone随 Windows Phone 8 GDR2 SDK 一起安装的 8 个 GDR2 模拟器不能作为本机Windows Phone 8.0 应用程序的部署目标。

  • Windows Phone 8.0 单元测试项目无法在随 Windows Phone 8 GDR2 SDK 一起安装的 Windows Phone 8 GDR2 仿真器上运行。

  • 添加对 Windows Phone 8 GDR3 模拟器的支持。

本地化

使用 Visual Studio 2012 Update 3 在 Windows 8.1 预览版 上打开图形日志 (.vsglog) 文件时,将收到以下未本地化的消息:

此日志文件是在较新版本的 Windows 上创建的,无法在 Visual Studio 2012 中打开

Visual Studio 测试

  • 测试和实验室管理器

    • 通过配置与 System Center Virtual Machine Manager (SCVMM) 2012 R2 服务器的连接,在 Team Foundation Server 2012 中设置实验室管理时,设置不成功,并收到以下错误消息:

      Get-MachineConfig 命令 let 不存在

  • 尝试克隆并部署未围栏的环境时,会收到以下错误消息:

    若要使用此环境,必须在环境的所有计算机中安装兼容的测试代理。 单击“安装代理”完成此任务。

  • 在生成-部署-测试 (BDT) 工作流中,会进行大量 Web 服务调用来刷新托管服务上的测试运行。 这会导致许多不必要的 Web 服务调用。

  • 单元测试

    • 安装 .NET Framework 4.5.1 时,Visual Studio 2012 中的单元测试资源管理器无法发现 Windows 存储测试。
    • 计算机名称中具有特殊字符的用户无法发现和运行测试,例如名称开头的 en 短划线 ( ) 。
    • 尝试通过测试资源管理器发现测试时,Visual Studio 会间歇性崩溃。
  • Web 测试

    • 问题 1:

      无法录制或播放涉及在 Internet Explorer 10 或 Internet Explorer 11 上的页面上导航以及安装的最新 Internet Explorer GDR 更新的操作。

    • 问题 2:

      无法按预期在页面上播放方案以及 AJAX,因此无法完成播放。 例如,单击“附加文件”,选择“文件”并播放录制的步骤时,文件上传将开始,但从未完成。

      无法在 Internet Explorer 11 中记录 Web 性能测试,因为 Internet Explorer 11 中默认启用了增强保护模式。

  • 编码的 UI 测试和操作录制

    • 安装 Internet Explorer 更新时,不能在 Internet Explorer 10 或 Internet Explorer 11 的页面上录制或播放涉及导航的操作。

    • 无法在使用 AJAX 的网页上播放测试,因为播放未完成。 例如,单击“ 附加文件”、 选择要上传的文件或在测试中单击“ 上传 ”时,文件上传将开始,但在播放期间永远不会完成。

  • 测试用例管理器

    • 使用 MSTest 2010 在 TFS 2012 环境中发布测试结果时发生错误。

    • 假设将生成与测试计划相关联。 从 Web 访问运行测试用例时,“分析测试运行”选项卡中的测试运行不显示内部版本号。

    • 无法在 Microsoft 测试管理器 (MTM) 2012 和测试用例管理 (TCM) Web 网格中选择自定义长文本字段。

  • Microsoft 测试管理器

    • 在 Microsoft 测试管理器中创建新的基于 SCVMM 的实验室环境时,对于某些操作系统(如 Windows Server 2012 R2) ),在 Sysprep (系统准备 () 期间,不需要产品密钥。 但是,系统仍会提示你输入密钥,这就是无法继续的原因。

图形诊断

  • 如果着色器太大,则打开图形日志 (.vsglog) 文件时,图形调试器可能会崩溃。

  • 在最新的 Windows for Graphics Debugging 上添加对 Visual Studio 2012 的向后兼容性支持。

Web 工具

  • Page Inspector在安装了 Internet Explorer 11 的计算机上不起作用。
  • WebDeploy 3.5 随 Visual Studio 2012 Update 4 一起提供。

诊断工具

具有没有代码 ((如 web.config 或 .asmx) )的项目项的 Web 项目不会触发代码分析检查策略。

更多信息

要求

注意

本部分仅适用于 Visual Studio 客户端。 TFS 具有不同的系统要求, (检查 Visual Studio Team Foundation Server 2012 update 4Visual Studio Team Foundation Server Express 2012 update 4 下载页以获取详细信息) ,并且可能需要最多两次重启,具体取决于安装更新时计算机的状态。

重启要求

安装此包后,无需重启计算机。

支持的语言

Visual Studio 2012 Update 4 提供以下版本的更新:

  • 中文(简体)
  • 中文(繁体)
  • 捷克语
  • 英语
  • 法语
  • 德语
  • 意大利语
  • 日语
  • 朝鲜语
  • 俄语
  • 波兰语
  • 葡萄牙语(巴西)
  • 西班牙语
  • 土耳其语

支持的体系结构

  • 32 位 (x86)
  • 64 位 (x64) (WOW)

硬件要求

  • 1.6 千兆赫 (GHz) 或更快的处理器
  • 如果在虚拟机中运行,则为 1 GB (GB) RAM (1.5 GB)
  • 1 GB 可用硬盘空间
  • 5,400-RPM 硬盘驱动器
  • 支持 DirectX 9 的视频卡,以 1024 × 768 或更高分辨率运行

软件要求

若要应用此更新,必须安装 适用于部分中列出的 受支持的 Visual Studio 2012 程序之一。

支持 Visual Studio 2012 Update 4

可通过 Microsoft 开发人员网络 (MSDN) 论坛获取对 Visual Studio 2012 Update 4 的非正式社区支持。

适用对象

  • 2012 Visual Studio Premium
  • Windows 8 Visual Studio Express 2012
  • Visual Studio Express 2012 for Windows 桌面版
  • Visual Studio Express 2012 for Windows Phone
  • Visual Studio 2012 远程工具
  • 2012 Visual Studio Ultimate
  • 2012 Visual Studio Test Professional