Dev15Logo Visual Studio 2017 版本 15.9 发行说明

重要

这不是 Visual Studio 的最新版本。 若要下载最新版本,请访问 https://visualstudio.microsoft.com/downloads/ 并查看 Visual Studio 2022 发行说明

支持的时间范围

Visual Studio 2017 版本 15.9 是 Visual Studio 2017 的最终支持服务基线,并且已进入外延支持期。 鼓励企业和专业客户在需要采用长期稳定且安全的开发环境时,将此版本作为标准化选择。 正如我们在生命周期和支持策略中详细说明的那样,版本 15.9 的支持将通过 2027 年 4 月的安全更新提供,这是 Visual Studio 2017 产品生命周期的剩余部分。

由于 Visual Studio 2017 现已得到扩展支持,因此所有 管理员更新现在涵盖产品的所有次要版本范围。 这意味着,所有通过 Microsoft 更新目录或 Microsoft Endpoint Manager 提供的安全更新都会将客户端更新到 Visual Studio 2017 产品的最新安全版本。

.NET Core 2.1 自 2021 年 8 月 21 日起停止支持


Visual Studio 2017 版本 15.9 发布


重要

Visual Studio 2017 版本 15.9 安全公告通知


Visual Studio 2017 版本 15.9.78

发布时间:2025 年 11 月 11 日

此版本中已解决的问题

  • 将适用于 Windows 单个组件的 Git 更新为 v2.51.1.1

开发者社区


Visual Studio 2017 版本 15.9.77

发布时间:2025 年 10 月 14 日

此版本中已解决的问题

已解决的安全公告

  • CVE-2025-55240 Visual Studio 远程代码执行漏洞 - Gulpfile 中的不受信任的搜索路径远程代码执行漏洞

Visual Studio 2017 版本 15.9.76

发布日期:2025 年 8 月 12 日

此版本中已解决的问题

Visual Studio 2017 安装程序中删除了以下 Windows SDK 版本:

  • 10.0.10240.0
  • 10.0.10586.0
  • 10.0.14393.0
  • 10.0.15063.0
  • 10.0.16299.0
  • 10.0.17134.0
  • 10.0.17763.0

如果以前使用 Visual Studio 安装了其中一个版本的 SDK,则更新时会将其卸载。 如果项目面向上述任一 SDK,可能会遇到生成错误,例如: 找不到 Windows SDK 版本 10.0.17763.0。在项目属性页中安装所需的 Windows SDK 版本或更改 SDK 版本,或者右键单击解决方案并选择“重定目标解决方案”。

若要解决此问题,我们建议将项目重定向到 10.0.19041.0,或者根据需要将早期支持的版本重新定目标。 有关受支持的 SDK 版本的完整列表,请访问: https://developer.microsoft.com/windows/downloads/sdk-archive/ 如果需要安装不受支持的 SDK 版本,可在此处找到它: https://developer.microsoft.com/windows/downloads/sdk-archive/index-legacy/


Visual Studio 2017 版本 15.9.75

发布时间:2025 年 7 月 8 日

此版本中已解决的问题

  • 更新了 Visual Studio 安装程序中的工作负载和组件,以包含 Windows SDK 的 10.0.19041.0 版本,而不是 10.0.17763.0 版本。

已解决的安全公告


Visual Studio 2017 版本 15.9.74

发布时间:2025 年 6 月 10 日

此版本中已解决的问题

  • 更新了 VS 安装程序以包括 Windows SDK 版本 10.0.19041.0。

Visual Studio 2017 版本 15.9.73

发布时间:2025 年 5 月 13 日

此版本中已解决的问题

  • 修复了新式查询工作项 TFVC 签入策略中阻止检索项目名称的问题。
  • 修复了禁止的模式 TFVC 签入策略中的一个问题,该问题导致策略在创建后“遗忘”了模式。

已解决的安全公告

  • CVE-2025-32703 管理员在计算机上安装 VS 时,没有意识到可以访问 ETW 跟踪
  • CVE-2025-26646 .NET - 伪造 - msbuild 的 DownloadFile 任务默认行为中的权限提升

Visual Studio 2017 版本 15.9.72

发布日期:2025 年 4 月 8 日

此版本中已解决的问题

  • 添加了对新式 TFVC 签入策略的支持,以及应用过时的 TFVC 签入策略时的指导和警告。

Visual Studio 2017 版本 15.9.71

发布时间:2025 年 3 月 11 日

此版本中已解决的问题

已解决的安全公告


Visual Studio 2017 版本 15.9.70

发布时间:2025年2月11日

此版本中已解决的问题

已解决的安全公告

  • CVE-2025-21206 Visual Studio 安装程序特权提升 - 不受控制的搜索路径元素允许未经授权的攻击者在本地提升权限。

Visual Studio 2017 版本 15.9.69

于 2025 年 1 月 14 日发布

此版本中已解决的问题

已解决的安全公告


Visual Studio 2017 版本 15.9.68

发布时间:2024 年 11 月 12 日

此版本中已解决的问题

  • 此更新包括与 Visual Studio 符合性相关的修补程序。

Visual Studio 2017 版本 15.9.67

发布时间:2024 年 10 月 8 日

此版本中已解决的问题

  • 更新了与 Microsoft 应用商店交互时使用的身份验证方法。

已解决的安全公告

  • CVE-2024-43603 Visual Studio 收集器服务中的拒绝服务漏洞
  • CVE-2024-43590 Visual Studio C++ 可再发行安装程序中的特权提升漏洞

Visual Studio 2017 版本 15.9.66

于 2024 年 9 月 10 日发布

此版本中已解决的问题

已解决的安全公告

CVE-2024-35272 SQL Server 原生客户端 OLE DB 提供程序远程代码执行漏洞


Visual Studio 2017 版本 15.9.65

发布日期:2024 年 8 月 13 日

此版本中已解决的问题

  • 从此版本开始,Visual Studio 安装程序将不再提供安装可选的 Xamarin 工作簿组件。
  • 从此版本开始,Visual Studio 安装程序将不再提供安装 Visual Studio Emulator for Android 组件。

已解决的安全公告

  • CVE-2024-29187(重新发布) - 基于 WiX 的安装程序在作为 SYSTEM 运行时容易受到二进制劫持

Visual Studio 2017 版本 15.9.64

于 2024 年 7 月 9 日发布

此版本中已解决的问题

  • 由于已被弃用,AzCopy 版本 6.2 不再作为 Visual Studio 中 Azure 工作负载的一部分进行分发。 可以从 AzCopy 入门中下载 AzCopy 的最新支持版本。
  • 从此版本开始,Visual Studio 安装程序将不再提供安装 Windows 10 移动版模拟器。 如果仍然希望使用这些内容,可以从 Windows SDK 和模拟器存档页安装它们。
  • 将 MinGit 更新至 v2.45.2.1,其中包含 GCM 2.5,此版本解决了之前 GCM 版本中的一个问题,该问题是在克隆后向 Git 报告错误,使克隆看起来像是失败了一样。

Visual Studio 2017 版本 15.9.63

于 2024 年 6 月 11 日发布

此版本中已解决的问题

已解决的安全公告

  • CVE-2024-30052 在调试包含具有合理扩展名的恶意文件的转储文件时出现远程代码执行漏洞
  • CVE-2024-29060 在受影响的 Visual Studio 安装运行期间出现特权提升漏洞
  • CVE-2024-29187 基于 WiX 的安装程序在以 SYSTEM 身份运行时容易受到二进制劫持

Visual Studio 2017 版本 15.9.62

发布日期:2024 年 5 月 14 日

此版本中已解决的问题

  • 此版本将 OpenSSL 更新到了 v3.2.1

已解决的安全公告

  • CVE-2024-32002 支持符号链接的不区分大小写的文件系统上的递归克隆容易受到远程代码执行的影响。
  • CVE-2024-32004 远程代码执行,同时克隆特殊制作的本地存储库

Visual Studio 2017 版本 15.9.61

发布日期:2024 年 4 月 9 日

此版本中已解决的问题

  • 通过此 bug 修复,客户端现在可以在布局中使用引导程序,并传入 --noWeb 参数以在客户端计算机上安装,并确保仅从布局下载安装程序和 Visual Studio 产品。 以前,在安装过程中,有时安装程序不会执行 -noWeb 参数,而是尝试从 Web 自行更新。

Visual Studio 2017 版本 15.9.60

于 2024 年 2 月 13 日发布到 Web,并在 2024 年 3 月 12 日发布到 Microsoft 更新

此版本中已解决的问题

  • Visual Studio 安装程序 UI 中的“删除不再受支持的组件”现在将删除包含在 15.9 中的不再受支持的 .NET 运行时版本(.NET Core 1.1 和 2.1 受到影响)。

Visual Studio 2017 版本 15.9.59

发布日期:2024 年 1 月 9 日

此版本中已解决的问题

  • 将 MinGit 更新到 v2.43.0.1,其中包含 OpenSSL v3.1.4,并解决了在某些情况下导致网络操作非常缓慢的回归问题。

已解决的安全公告

  • CVE-2024-20656 VSStandardCollectorService150 服务中存在漏洞,本地攻击者可以在运行受影响的 Microsoft Visual Studio 安装的主机上提升特权。

Visual Studio 2017 版本 15.9.58

于 2023 年 10 月 10 日发布

此版本中已解决的问题

  • 为了提高 Visual Studio 安装程序 WMI 提供程序的可靠性,我们已将其移动到专用命名空间 root/cimv2/vs。这可以防止与其他共享相同、基础命名空间的 WMI 提供程序发生任何冲突,并防止 Visual Studio 安装程序 WMI 提供程序无法检测 Visual Studio 的情况。

Visual Studio 2017 版本 15.9.57

发布日期:2023 年 9 月 12 日

此版本中已解决的问题

已解决的安全公告

  • CVE-2023-36796此安全更新解决了 DiaSymReader.dll 中读取损坏的 PDB 文件时可能导致远程执行代码的漏洞。
  • CVE-2023-36794此安全更新解决了 DiaSymReader.dll 中读取损坏的 PDB 文件时可能导致远程执行代码的漏洞。
  • CVE-2023-36793此安全更新解决了 DiaSymReader.dll 中读取损坏的 PDB 文件时可能导致远程执行代码的漏洞。
  • CVE-2023-36792此安全更新解决了 DiaSymReader.dll 中读取损坏的 PDB 文件时可能导致远程执行代码的漏洞。

Visual Studio 2017 版本 15.9.56

发布日期:2023 年 8 月 8 日

此版本中已解决的问题

  • 解决了 VSWhere 的所有交换机不会返回处于不可启动状态的实例的问题。

已解决的安全公告


Visual Studio 2017 版本 15.9.55

发布日期:2023 年 6 月 13 日

此版本中已解决的问题

  • 在此更新中,为了解决 CVE-2023-27909、CVE-2023-27910 和 CVE-2023-27911 的问题,我们将删除 .fbx 和.dae支持。 这是作者不再支持的第三方 x86 组件。 受影响的用户应使用 fbx 编辑器

已解决的安全公告

Visual Studio 2017 版本 15.9.54

发布日期:2023 年 4 月 11 日

15.9.54 版中已修复的问题

  • 修复了 IIS Express 中更新遥测数据时可能导致崩溃的问题。

开发者社区

已解决的安全公告


Visual Studio 2017 版本 15.9.53

发布日期:2023 年 3 月 14 日

15.9.53 版本修复的问题

  • Git 2.39 已将 credential.helper 的值从“manager-core”重命名为“manager”。 有关详细信息,请参阅 https://aka.ms/gcm/rename
  • 将 mingit 和 Git for Windows 包更新到 v2.39.2,用于解决 CVE-2023-22490 的问题

已解决的安全公告


Visual Studio 2017 版本 15.9.52

发布日期:2023 年 2 月 14 日

在 15.9.52 版本中修复的问题

  • 将 mingit 和 Git for Windows 包更新到 v2.39.1.1,解决了 CVE-2022-41903

已解决的安全公告


Visual Studio 2017 版本 15.9.51

发布日期:2022 年 11 月 8 日

15.9.51 中已修复的问题

  • 管理员将能够从布局更新脱机客户端计算机上的 VS 安装程序,而无需更新 VS。

已解决的安全公告


Visual Studio 2017 版本 15.9.50

于 2022 年 8 月 9 日发布

修复于 15.9.50 版本中的问题

  • 将适用于 Windows 的 Git 更新为 v2.37.1.1,用于解决 CVE-2022-31012 的问题。

已解决的安全公告


Visual Studio 2017 版本 15.9.49

于 2022 年 6 月 14 日发布

已解决的安全公告


Visual Studio 2017 版本 15.9.48

于 2022 年 5 月 10 日发布

15.9.48 版中修复的问题

  • 已将 Visual Studio 所用的 Git for Windows 版本以及可安装的可选组件更新到 2.36.0.1
  • 修复了 git 集成的问题,其中,如果拉取/同步已分离的分支,则输出窗口不会显示有关如何解决该问题的本地化提示。

已解决的安全公告

CVE-2022-29148Visual Studio 远程代码执行漏洞:如果内存中的对象处理不当,Visual Studio 中会存在远程代码执行漏洞。 成功利用漏洞的攻击者可以在当前用户的上下文中运行任意代码。

CVE-2022-24513 特权提升漏洞 当 Microsoft Visual Studio 更新程序服务错误分析本地配置数据时,存在潜在的特权提升漏洞。


Visual Studio 2017 版本 15.9.47

于 2022 年 4 月 19 日发布

在15.9.47版本中解决的问题

  • 修复了 15.9.46 中 vctip.exe 的回退问题。

Visual Studio 2017 版本 15.9.46

于 2022 年 4 月 12 日发布

15.9.46 版中修复的问题

已解决的安全公告

CVE-2022-24765 特权提升漏洞 Git for Windows 中存在潜在的特权提升漏洞,其中 Git 操作可以在存储库外部运行,同时搜索 Git 目录。 Git for Windows 现已更新到版本 2.35.2.1。

CVE-2022-24767 DLL 劫持漏洞 在 SYSTEM 用户帐户下运行卸载程序时,Git for Windows 安装程序中存在潜在的 DLL 劫持漏洞。 Git for Windows 现已更新到版本 2.35.2.1。

CVE-2022-24513 特权提升漏洞 当 Microsoft Visual Studio 更新程序服务错误分析本地配置数据时,存在潜在的特权提升漏洞。


Visual Studio 2017 版本 15.9.45

发布日期:2022 年 3 月 8 日

修复于15.9.45版中的问题

已解决的安全公告

CVE-2021-3711 OpenSSL 缓冲区溢出漏洞 OpenSSL 中存在潜在的缓冲区溢出漏洞,该漏洞由 Git for Windows 使用。 现在,适用于 Windows 的 Git 已更新到版本 2.35.1.2,解决了此问题。


Visual Studio 2017 版本 15.9.44

于 2022 年 2 月 8 日发布

在 15.9.44 版中修复的问题

已解决的安全公告

CVE-2022-21871 诊断中心标准收集器运行时权限提升漏洞 若诊断中心标准收集器错误处理数据操作,就存在权限提升漏洞。


新版本图标 15.9.43 Visual Studio 2017 版本 15.9.43

于 2022 年 1 月 11 日发布

15.9.43 版中修复的问题

  • 修复了当 Windows 终端被用作默认终端时,无法多次调试应用程序的问题。
  • 修复了阻止客户端更新更当前的引导程序的问题。 客户端使用 2022 年 1 月或更高版本的引导程序和安装程序后,使用后续引导程序的所有更新都应在整个产品生命周期内有效。

新版本图标 15.9.42 Visual Studio 2017 版本 15.9.42

发布时间:2021 年 12 月 14 日

15.9.42 版中修复的若干问题

  • 由于安全漏洞,已将 CPython 3.6.6 标记为不受支持。

新版本图标 15.9.41 Visual Studio 2017 版本 15.9.41

于 2021 年 11 月 9 日发布

15.9.41 版中修复的问题

已解决的安全公告

CVE-2021-42319 权限提升漏洞 Visual Studio 安装程序中包含的 WMI 提供程序存在权限提升漏洞。

CVE-2021-42277 诊断中心标准收集器服务权限提升漏洞 当诊断中心标准收集器错误处理文件操作时,就存在权限提升漏洞。


新版本图标 15.9.40 Visual Studio 2017 版本 15.9.40

于 2021 年 10 月 12 日发布

修复于 15.9.40 版本的问题

已解决的安全公告

CVE-2020-1971 OpenSSL 拒绝服务漏洞 Git 使用的 OpenSSL 库中存在潜在的拒绝服务漏洞。

CVE-2021-3449 OpenSSL 拒绝服务漏洞 Git 使用的 OpenSSL 库中存在潜在的拒绝服务漏洞。

CVE-2021-3450 OpenSSL 可能绕过 X509_V_FLAG_X509_STRICT 标志 OpenSSL 库中存在可能被绕过的标志问题,该库被 Git 使用。


新版本图标 15.9.39 Visual Studio 2017 版本 15.9.39

于 2021 年 9 月 14 日发布

15.9.39版中修复的问题

  • 在 Visual Studio 中使用“工具”->“获取工具和功能”菜单项时,会出现一个错误,指出找不到 Visual Studio 安装程序。 此修补程序使 Visual Studio 能够正确找到安装程序位置。

已解决的安全公告

CVE-2021-26434 Visual Studio 错误的权限分配特权提升漏洞 安装了使用 C++ 的游戏开发并选择了 Unreal Engine 安装程序工作负载后,Visual Studio 中存在权限分配漏洞。 在安装过程中,系统容易受到 LPE 攻击,它会创建一个目录,该目录具有所有用户的写入访问权限。

CVE-2021-36952 Visual Studio 远程代码执行漏洞 如果内存中的对象处理不当,Visual Studio 中会存在远程代码执行漏洞。 成功利用漏洞的攻击者可以在当前用户的上下文中运行任意代码。


新版本图标 15.9.38 Visual Studio 2017 版本 15.9.38

发布日期:2021 年 8 月 10 日

在 15.9.38 版本中修复的问题

  • 修复了影响更新命令的命令行执行的问题。 如果第一次更新失败,那么之后再次发出更新命令现在会使更新从其停止的地方继续先前的操作。

已解决的安全公告

CVE-2021-26423 .NET Core 拒绝服务漏洞

存在拒绝服务漏洞,在这种情况下,提供 WebSocket 终结点的 .NET (Core) 服务器应用程序在尝试读取单个 WebSocket 帧时可能会陷入无限循环。

CVE-2021-34485 .NET Core 信息泄漏漏洞

在 Linux 和 macOS 上,当工具为收集故障转储和按需转储而创建的转储具有全局读取权限时,会存在信息泄露漏洞。

CVE-2021-34532 ASP.NET 核心信息泄露漏洞

如果无法分析 JWT 令牌,则记录该令牌时存在信息泄漏漏洞。


新版本图标 15.9.37 Visual Studio 2017 版本 15.9.37

发布日期:2021 年 7 月 13 日

在15.9.37版本中解决的问题

  • 修复了创建包含“使用 Unity 的游戏开发”工作负载和由中国提供的 Unity 编辑器可选组件的离线 Visual Studio 2017 安装布局的问题。

新版本图标 15.9.36 Visual Studio 2017 版 15.9.36

于 2021 年 5 月 11 日发布

15.9.36 版中修复的问题

  • 修复了管理员创建新的 Visual Studio 布局以部署更新时导致更新失败的问题。 由于布局已移动位置,客户端计算机更新将失败。

新版本图标 15.9.35 Visual Studio 2017 版本 15.9.35

于 2021 年 4 月 13 日发布

修复于 15.9.35 版本中的问题

已解决的安全公告

CVE-2021-27064 Visual Studio 安装程序特权提升漏洞

Visual Studio 安装程序在提升状态下执行反馈客户端时,存在远程代码执行漏洞。

CVE-2021-28313 / CVE-2021-28321 / CVE-2021-28322 诊断中心标准收集器服务特权提升漏洞

当诊断中心标准收集器错误处理数据操作时,存在特权提升漏洞。


新版本图标 15.9.34 Visual Studio 2017 v15.9.34

发布时间:2021 年 3 月 9 日

15.9.34 版中已修复的问题

已解决的安全公告

CVE-2021-21300 Git for Visual Studio 远程代码执行漏洞

Visual Studio 克隆恶意存储库时存在远程代码执行漏洞。

CVE-2021-26701 .NET Core 远程代码执行漏洞

由于文本编码的执行方式,.NET 5 和 .NET Core 中存在远程代码执行漏洞。


新版本图标 15.9.33 Visual Studio 2017 版本 15.9.33

于 2021 年 2 月 10 日发布

15.9.33 版修复的问题


新版本图标 15.9.32 Visual Studio 2017 版本 15.9.32

于 2021 年 2 月 9 日发布

15.9.32 版中修复的问题

已解决的安全公告

CVE-2021-1639 TypeScript 语言服务远程代码执行漏洞

当 Visual Studio 加载包含 JavaScript 或 TypeScript 代码文件的恶意存储库时,会存在远程代码执行漏洞。

CVE-2021-1721 .NET Core 拒绝服务漏洞

在 X509 证书链生成期间创建 HTTPS Web 请求时,存在拒绝服务漏洞。

CVE-2021-24112 .NET 5 和 .NET Core 远程代码执行漏洞

当在图形接口仍然引用图元文件的情况下处理这些文件时,存在远程代码执行漏洞。 此漏洞仅存在于在 MacOS 或 Linux 上运行的系统中。


新版本图标 15.9.31 Visual Studio 2017 版本 15.9.31

于 2021 年 1 月 12 日发布

15.9.31 版中修复的问题

已解决的安全公告

CVE-2021-1651 / CVE-2021-1680 诊断中心标准收集器特权提升漏洞

当诊断中心标准收集器错误处理数据操作时,存在特权提升漏洞。

CVE-2020-26870 Visual Studio 安装程序远程代码执行漏洞

Visual Studio 安装程序尝试显示恶意 Markdown 时,存在远程代码执行漏洞。


新版本图标 15.9.30 Visual Studio 2017 版本 15.9.30

发布时间:2020 年 12 月 8 日

15.9.30 版本中修复的问题

  • 修复了在编译调用采用 C++/CLI 泛型参数的函数时 C++ 编译器崩溃的问题。

已解决的安全公告

CVE-2020-17156 Visual Studio 远程代码执行漏洞

Visual Studio 克隆恶意存储库时存在远程代码执行漏洞。


新版本图标 15.9.29 Visual Studio 2017 版本 15.9.29

于 2020 年 11 月 20 日发布

15.9.29版中修复的问题

已解决的安全公告

CVE-2020-17100 Visual Studio 篡改漏洞

当用于 Visual Studio 的 Python 工具创建 python27 文件夹时,存在篡改漏洞。 成功利用此漏洞的攻击者可在提升的上下文中运行进程。


新版本图标 15.9.28 Visual Studio 2017 版本 15.9.28

于 2020 年 10 月 13 日发布

版本 15.9.28 中修复的问题

  • .NET Core SDK 2.1.519 已更新为 Visual Studio 2019。

新版本图标 15.9.27 Visual Studio 2017 版本 15.9.27

于 2020 年 9 月 8 日发布

修复于 15.9.27 版本中的问题

  • 在修复或升级期间,如果不再支持的 .NET Core 版本在 VS 安装程序之外被删除,将不会重新安装。

已解决的安全公告

CVE-2020-1130 诊断中心标准数据收集器权限提升漏洞

如果诊断中心标准收集器对数据操作的处理不当,就会存在特权提升漏洞。 成功利用此漏洞的攻击者可在提升的上下文中运行进程。

CVE-2020-1133 诊断中心标准收集器特权提升漏洞

如果诊断中心标准收集器对文件操作的处理不当,就会存在特权提升漏洞。 成功利用此漏洞的攻击者可在提升的上下文中运行进程。

CVE-2020-16856 Visual Studio 远程代码执行漏洞

在 Visual Studio 中,当错误处理内存中的对象时,会存在一个远程代码执行漏洞。 成功利用漏洞的攻击者可以在当前用户的上下文中运行任意代码。

CVE-2020-16874 Visual Studio 远程代码执行漏洞

在 Visual Studio 中,当错误处理内存中的对象时,会存在一个远程代码执行漏洞。 成功利用漏洞的攻击者可以在当前用户的上下文中运行任意代码。

CVE-2020-1045 Microsoft ASP.NET Core 安全功能绕过漏洞

Microsoft ASP.NET Core 分析编码 Cookie 名称的方式存在安全功能绕过漏洞。 ASP.NET Core Cookie 分析器对整个 Cookie 字符串进行解码,这可能会使恶意攻击者设置第二个 Cookie,并对其名称进行百分号编码。


新版本图标 15.9.26 Visual Studio 2017 版本 15.9.26

于 2020 年 8 月 11 日发布

15.9.26 版中修复的问题

已解决的安全公告

CVE-2020-1597 ASP.NET 核心拒绝服务漏洞

当 ASP.NET Core 不当处理 Web 请求时,会出现拒绝服务漏洞。 如果攻击者成功利用此漏洞,可能会导致对 ASP.NET Core Web 应用程序拒绝服务。 无需身份验证即可远程利用漏洞。


新版本图标 15.9.25 Visual Studio 2017 版本 15.9.25

于 2020 年 7 月 14 日发布

15.9.25 版修复的问题

已解决的安全公告

CVE-2020-1393 诊断中心标准收集器服务特权提升漏洞

当 Windows 诊断中心标准收集器服务无法正确清理输入时,存在特权提升漏洞,从而导致不安全的库加载行为。

CVE-2020-1416 Visual Studio 特权提升漏洞

加载软件依赖项时,Visual Studio 中存在特权提升漏洞。 成功利用此漏洞的本地攻击者可能会在当前用户的上下文中注入任意代码以运行。

CVE-2020-1147 .NET Core 拒绝服务漏洞

未经过身份验证的远程攻击者可能通过向 ASP.NET Core 应用程序或其他分析特定 XML 类型的应用程序发布特制请求来利用此漏洞。 安全更新通过限制允许在 XML 有效负载中存在的类型来解决漏洞。


新版本图标 15.9.24 Visual Studio 2017 版本 15.9.24

于 2020 年 6 月 2 日发布

15.9.24 版中修复的问题

  • 修复了在 DLL 名称的后缀上使用大小写不同的伞式 LIB 时 C++ 链接器缺少导入的 bug。
  • 修复了 ARM64 C++ 编译器中的错误,其中在调用 setjmp 之后可能会还原错误的值。
  • 修复了 C++ 编译器中的一个 bug,确保正确处理内联变量的动态初始化。
  • 进行了一项更改,使企业 IT 管理员和部署工程师能够配置 Microsoft 更新客户端和 SCCM 等工具来确定 Microsoft 更新目录和 WSUS 上托管的 VS2017 更新的适用性。

已解决的安全公告

CVE-2020-1202 / CVE-2020-1203诊断中心标准采集器服务权限提升漏洞

当诊断中心标准收集器或 Visual Studio 标准收集器无法正确处理内存中的对象时,存在特权提升漏洞。

CVE-2020-1293 / CVE-2020-1278 / CVE-2020-1257 诊断中心标准收集器服务特权提升漏洞

如果诊断中心标准收集器服务对文件操作的处理不当,就会存在特权提升漏洞。

CVE-2020-1108 / CVE-2020-1108 / CVE-2020-1108 .NET Core 拒绝服务漏洞

为了全面解决 CVE-2020-1108 问题,Microsoft发布了 .NET Core 2.1 和 .NET Core 3.1 的更新。 使用上述任何版本的 .NET Core 的客户应安装最新版本的 .NET Core。 有关最新版本号和 .NET Core 更新说明,请参阅发行说明


新版本图标 15.9.23 Visual Studio 2017 版本 15.9.23

发布日期:2020 年 5 月 12 日

已修复的问题(15.9.23 版)

  • 修复了 C++ 编译器中的一个 bug,确保正确处理内联变量的动态初始化。 从 VS 2019 16.0 版本移植。
  • vctip.exe中的安全性改进。
  • 一个更改,让企业 IT 管理员和部署工程师可以配置 Microsoft 更新客户端和 SCCM 等工具,以确定 Microsoft 更新目录和 WSUS 上托管的 VS2017 更新的适用性。

已解决的安全公告

CVE-2020-1108 .NET Core 拒绝服务漏洞

远程未经身份验证的攻击者可以通过向 .NET Core 应用程序发出特制的请求来利用此漏洞。 安全更新通过更正 .NET Core Web 应用程序处理 Web 请求的方式来解决漏洞。


新版本图标 15.9.22 Visual Studio 2017 版本 15.9.22

于 2020 年 4 月 14 日发布

在15.9.22版本中修复的问题

已解决的安全公告

CVE-2020-0899 Microsoft Visual Studio 特权提升漏洞

当 Microsoft Visual Studio 更新程序服务不当处理文件权限时,会出现特权提升漏洞。 成功利用此漏洞的攻击者可以在本地系统的安全上下文中篡改任意文件的内容。

CVE-2020-0900 Visual Studio 扩展安装程序服务特权提升漏洞

当 Visual Studio Extension Installer 服务不当处理文件操作时,会出现特权提升漏洞。 成功利用了此漏洞的攻击者可使用已提升的权限删除任意位置的文件。

CVE-2020-5260 由于对 URL 的验证不足,Git for Visual Studio 存在凭据泄漏漏洞

当专门创建的 URL 被分析并发送至凭据帮助程序时,会出现凭据泄露漏洞。 这可能会导致凭据被发送到错误的主机。


新版本图标 15.9.21 Visual Studio 2017 版本 15.9.21

于 2020 年 3 月 10 日发布

15.9.21 版已修复的问题

已解决的安全公告

CVE-2020-0793 / CVE-2020-0810 诊断中心标准收集器服务特权提升漏洞

如果诊断中心标准收集器处理文件操作不当,或者 Windows 诊断中心标准收集器服务无法正确清理输入,则存在特权提升漏洞。

CVE-2020-0884 在创建 Outlook Web 外接程序时存在欺骗漏洞

如果启用了多重身份验证,则在创建 Outlook Web 外接程序时将存在欺骗漏洞

新版本图标 15.9.20 Visual Studio 2017 版本 15.9.20

于 2020 年 2 月 11 日发布

15.9.20 版本中修复的问题


新版本图标 15.9.19 Visual Studio 2017 版本 15.9.19

于 2020 年 1 月 14 日发布

15.9.19版中修复的问题

  • 解决了C++ 优化器中的一个问题:写入到调用中的未知内存对调用方的影响不正确。

已解决的安全公告

CVE-2020-0602 ASP.NET 核心拒绝服务漏洞

远程未经身份验证的攻击者可以通过向 ASP.NET Core 应用程序发出特制的请求来利用此漏洞。 安全更新通过更正 ASP.NET Core Web 应用程序处理 Web 请求的方式来解决漏洞。

CVE-2020-0603 ASP.NET Core 远程代码执行漏洞

远程未经身份验证的攻击者可以通过向 ASP.NET Core 应用程序发出特制的请求来利用此漏洞。 此安全更新通过纠正 ASP.NET Core Web 应用程序处理内存的方式解决此漏洞。


新版本图标 15.9.18 Visual Studio 2017 版本 15.9.18

发布时间:2019 年 12 月 10 日

15.9.18版中修复的问题

  • 可能允许缓解 Visual Studio 中与 Per-Monitor 感知相关的崩溃

已解决的安全公告

CVE-2019-1349 Git for Visual Studio 远程执行漏洞,因为对子模块名称的限制过于宽松

当 Git 遇到同级子模块目录子模块名称冲突时,存在远程代码执行漏洞。 成功利用此漏洞的攻击者可以在目标计算机上远程执行代码。 安全更新通过采用新版本的 Git for Windows 来解决漏洞,该版本要求子模块克隆的目录为空。

CVE-2019-1350 Git for Visual Studio 中由于命令行参数引用错误导致的远程执行漏洞

Git 使用递归克隆过程中的特定引用以及 SSH URL 解释命令行参数时,存在远程代码漏洞。 成功利用此漏洞的攻击者可以在目标计算机上远程执行代码。 安全更新通过采用 Windows 的新版本 Git 来解决漏洞,此版本修复了这一问题。

CVE-2019-1351 Visual Studio 中的 Git 存在任意文件覆盖漏洞,原因是在克隆时使用了非字母驱动器名称

当非字母开头的驱动器名称绕过 git clone中的安全检查时,Git 中存在任意文件覆盖漏洞。 成功利用此漏洞的攻击者可以写入目标计算机上的任意文件。 安全更新通过采用 Windows 的新版本 Git 来解决漏洞,此版本修复了这一问题。

CVE-2019-1352 Git for Visual Studio 远程代码执行漏洞,由于对 NTFS 备用数据流的认识不足

通过 NTFS 备用数据流克隆和写入 .git/ 目录时,Git 中存在远程代码执行漏洞。 成功利用此漏洞的攻击者可以在目标计算机上远程执行代码。 安全更新通过采用新版本的 Git for Windows 来解决漏洞,该版本已注意到 NTFS 备用数据流。

CVE-2019-1354 Git for Visual Studio 存在任意文件覆盖漏洞,原因是不拒绝写出包含反斜杠的已跟踪文件

带有反斜杠和恶意符号链接的树条目突破工作树时,Git 中存在任意文件覆盖漏洞。 成功利用此漏洞的攻击者可以写入目标计算机上的任意文件。 安全更新通过采用不允许反斜杠这种使用的新版本的 Git for Windows 来解决漏洞。

CVE-2019-1387 由于在递归克隆中对子模块名称的验证过于宽松,导致 Git for Visual Studio 出现远程执行漏洞

当对子模块进行递归克隆时,Git 中存在远程代码执行漏洞。 成功利用此漏洞的攻击者可以在目标计算机上远程执行代码。 该安全更新通过使用新版本的 Git for Windows 来解决该漏洞,该版本加强了对子模块名称的验证。


新版本图标 15.9.17 Visual Studio 2017 版本 15.9.17

于 2019 年 10 月 15 日发布

已解决的安全公告

CVE-2019-1425 NPM 包特权提升漏洞(发布时间:2019 年 11 月 12 日)

当 Visual Studio 在提取存档文件时无法正确验证硬链接时,存在特权提升漏洞。 Visual Studio 使用的 NPM 包引入了这些漏洞,如以下两个 NPM 公告中所述:npmjs.com/advisories/803npmjs.com/advisories/886。 这些 NPM 包的更新版本包含在此版本的 Visual Studio 中。


新版本图标 15.9.16 Visual Studio 2017 版本 15.9.16

于 2019 年 9 月 10 日发布

15.9.16 版中已修复的问题

已解决的安全公告

CVE-2019-1232 诊断中心标准收集器服务特权提升漏洞

当诊断中心标准收集器服务错误地模拟特定文件操作时,会出现权限提升漏洞。 成功利用此漏洞的攻击者可能会获得提升的权限。 对易受攻击的系统拥有非特权访问权限的攻击者可利用此漏洞。 安全更新通过确保诊断中心标准收集器服务正确模拟文件操作来解决漏洞。

CVE-2019-1301 .NET Core 中的拒绝服务漏洞

.NET Core 未正确处理 Web 请求时,存在拒绝服务漏洞。 如果攻击者成功利用此漏洞,可能会导致对 .NET Core Web 应用程序拒绝服务。 无需身份验证即可远程利用漏洞。

此更新通过更正 .NET Core Web 应用程序处理 Web 请求的方式来解决漏洞。


新版本图标 15.9.15 Visual Studio 2017 版本 15.9.15

于 2019 年 8 月 13 日发布

15.9.15 版中已修复的问题事项

已解决的安全公告

CVE-2019-1211 Git for Visual Studio 特权提升漏洞

当 Git for Visual Studio 错误地分析配置文件时,其中存在特权提升漏洞。 成功利用漏洞的攻击者可以在另一个本地用户的上下文中执行代码。 若要利用漏洞,经过身份验证的攻击者需要在完全安装应用程序之前修改系统上的 Git 配置文件。 然后,攻击者需要说服系统上的其他用户执行特定的 Git 命令。 更新通过更改编辑配置文件所需的权限来解决该问题。


新版本图标 15.9.14 Visual Studio 2017 版本 15.9.14

发布日期:2019 年 7 月 9 日

15.9.14 版中修复的问题

已解决的安全公告

CVE-2019-1075 ASP.NET 核心欺骗漏洞

.NET Core 更新现已发布,并包含在此 Visual Studio 更新中。 此版本解决了安全性和其他重要问题。 有关详细信息,请参阅 .NET Core 发行说明。

CVE-2019-1077 Visual Studio 扩展自动更新漏洞

如果 Visual Studio 扩展自动更新过程不正确地执行特定文件操作,就会存在特权提升漏洞。 成功利用此漏洞的攻击者可以删除任意位置的文件。 若要利用此漏洞,攻击者需要对易受攻击的系统进行无特权访问。 安全更新通过保护 Visual Studio 扩展自动更新在其中执行文件操作的位置来解决漏洞。

CVE-2019-1113 WorkflowDesigner XOML 反序列化允许代码执行

引用某些类型的 XOML 文件可能会导致在 Visual Studio 中打开 XOML 文件时执行随机代码。 现在,允许在 XOML 文件中使用哪些类型存在限制。 如果打开包含其中一个新未授权类型的 XOML 文件,则会显示一条消息,说明该类型是未经授权的。

有关详细信息,请参阅 https://support.microsoft.com/help/4512190/remote-code-execution-vulnerability-if-types-are-specified-in-xoml


新版本图标 15.9.13 Visual Studio 2017 版本 15.9.13

发布日期:2019 年 6 月 11 日

15.9.13 版本中修复的已知问题


新版本图标 15.9.12 Visual Studio 2017 版本 15.9.12

于 2019 年 5 月 14 日发布

已修复的问题在15.9.12版中

已解决的安全公告

CVE-2019-0727 诊断中心标准收集器服务特权提升漏洞

当诊断中心标准收集器服务不正确地执行某些文件操作时,存在特权提升漏洞。 成功利用此漏洞的攻击者可以删除任意位置的文件。 若要利用此漏洞,攻击者需要对易受攻击的系统进行无特权访问。 安全更新通过保护诊断中心标准收集器执行文件操作的位置来解决漏洞。


新版本图标 15.9.11 Visual Studio 2017 版本 15.9.11

于 2019 年 4 月 2 日发布

15.9.11 版本中已解决的问题


新版本图标 15.9.10 Visual Studio 2017 版本 15.9.10

发布时间:2019 年 3 月 25 日

15.9.10 版中修复的问题

  • 修复了 [配置 Web 代理时使用 Docker 进行调试的问题。](https://github.com/Microsoft/DockerTools/issues/600
  • 在使用 Docker 进行调试时,您将体验到改进的错误处理,针对与驱动器共享配置相关的失败(例如过期的凭据)。

新版本图标 15.9.9 Visual Studio 2017 版本 15.9.9

于 2019 年 3 月 12 日发布

15.9.9 版中修复的问题

已解决的安全公告

CVE-2019-9197 Unity 编辑器远程代码执行漏洞

Unity 编辑器中存在远程代码执行漏洞,该编辑器是 Visual Studio 提供安装的一个第三方软件包,作为 Unity 工作负载中用于游戏开发的一部分。 如果已安装 Visual Studio 中的 Unity,请确保将所使用的 Unity 版本更新为解决 CVE 中所述漏洞的版本。 Visual Studio 安装程序已更新,以提供安装解决漏洞的 Unity 编辑器版本。

CVE-2019-0809 Visual Studio 远程代码执行漏洞

当 Visual Studio C++可再发行组件安装程序在加载动态链接库 (DLL) 文件之前错误地验证输入时,存在远程代码执行漏洞。 成功利用漏洞的攻击者可以在当前用户的上下文中执行任意代码。 与拥有管理员权限的用户相比,系统中那些帐户具有较少用户权限的用户受到的影响会更小。 要利用该漏洞,攻击者必须在本地系统上放置一个恶意 DLL 并说服用户执行特定可执行文件。 安全更新通过更正 Visual Studio C++ Redistributable Installer 在加载 DLL 文件之前验证输入的方式来解决漏洞。

CVE-2019-0757 .NET Core NuGet 篡改漏洞

在 Linux 或 Mac 环境中执行时,NuGet 软件中存在篡改漏洞。 成功利用漏洞的攻击者可以在当前用户的上下文中运行任意代码。 如果当前用户使用管理用户权限登录,攻击者可以控制受影响的系统。 然后,攻击者可以安装程序;查看、更改或删除数据;或创建具有完全用户权限的新帐户。 与拥有管理员权限的用户相比,系统中那些帐户具有较少用户权限的用户受到的影响会更小。 要利用此漏洞,攻击者必须能够以该计算机上任意其他用户的身份登录。 此时,攻击者将能够替换或添加到当前用户帐户中由 NuGet 还原操作创建的文件。

.NET Core 更新现已发布,并包含在此 Visual Studio 更新中。 该安全更新处理了该项漏洞,它更正了 NuGet 还原为提取到客户端计算机上的所有文件创建文件权限的方式。 有关包的详细信息,请参阅 .NET Core 发行说明


新版本图标 15.9.8 Visual Studio 2017 版本 15.9.8

于 2019 年 3 月 5 日发布

15.9.8 版中修复的问题


新版本图标 15.9.7 Visual Studio 2017 版本 15.9.7

于 2019 年 2 月 12 日发布

15.9.7 版中修复的问题

已解决的安全公告

CVE-2019-0613 WorkflowDesigner XOML 反序列化允许代码执行

引用某些类型的 XOML 文件可能会导致在 Visual Studio 中打开 XOML 文件时执行随机代码。 现在,允许在 XOML 文件中使用哪些类型存在限制。 如果打开包含其中一个新未授权类型的 XOML 文件,则会显示一条消息,说明该类型是未经授权的。

有关详细信息,请参阅 XOML 漏洞文档

CVE-2019-0657 .NET Framework 和 Visual Studio 欺骗漏洞

.NET Core 更新现已发布,并包含在此 Visual Studio 更新中。 此版本解决了安全性和其他重要问题。 有关详细信息,请参阅 .NET Core 发行说明。


新版本图标 15.9.6 Visual Studio 2017 版本 15.9.6

于 2019 年 1 月 24 日发布

15.9.6 版中修复的问题


新版本图标 15.9.5 Visual Studio 2017 版本 15.9.5

发布日期:2019 年 1 月 8 日

15.9.5 版中修复的问题

已解决的安全公告

CVE-2019-0546 Visual Studio 远程代码执行漏洞 Visual Studio 中存在远程代码执行漏洞时,C++编译器错误地处理C++构造的特定组合。 成功利用漏洞的攻击者可以在当前用户的上下文中运行任意代码。 如果当前用户使用管理用户权限登录,攻击者可以控制受影响的系统。 然后,攻击者可以安装程序;查看、更改或删除数据;或创建具有完全用户权限的新帐户。 与拥有管理员权限的用户相比,系统中那些帐户具有较少用户权限的用户受到的影响会更小。 本次安全更新通过更正 Visual Studio C++ 编译器处理某些 C++ 构造的方式来解决该漏洞。


新版本图标 15.9.4 Visual Studio 2017 版本 15.9.4

于 2018 年 12 月 11 日发布

15.9.4 版中修复的问题

已解决的安全公告

CVE-2018-8599 诊断中心标准采集器服务权限提升漏洞

如果诊断中心标准收集器服务不正确地处理特定文件操作,就会存在特权提升漏洞。 成功利用此漏洞的攻击者可能会获得提升的权限。 若要利用此漏洞,攻击者需要对易受攻击的系统进行无特权访问。 安全更新通过确保诊断中心标准收集器服务正确模拟文件操作来解决漏洞。


新版本图标 15.9.3 Visual Studio 2017 版本 15.9.3

于 2018 年 11 月 28 日发布

在 15.9.3 版本中修复的问题


新版本图标 15.9.2 Visual Studio 2017 版本 15.9.2

于 2018 年 11 月 19 日发布

15.9.2 版中修复的问题


新版本图标 15.9.1 Visual Studio 2017 版本 15.9.1

发布日期:2018 年 11 月 15 日

15.9.1 版中修复的问题

  • 修复了以下 bug:使用 Microsoft Xbox One XDK 时,Visual Studio 无法生成项目。

15.9.1 版中的新增功能的详细信息

通用 Windows 平台开发 SDK

Windows 10 2018 年 10 月更新的 SDK(版本 17763)现在是通用 Windows 平台开发工作负载的默认选定 SDK。


15.9 版中的主要新增功能摘要

15.9 版中解决的首要问题

请参阅 Visual Studio 2017 版本 15.9 中修复的所有客户报告的问题。

开发者社区门户 开发者社区门户


15.9 版中的新增功能的详细信息

新版本图标 15.9.0 Visual Studio 2017 版本 15.9.0

发布日期:2018 年 11 月 13 日

15.9 版中的新增功能

Install

我们让你能够更为轻松地跨 Visual Studio 的多个安装来保持安装设置的一致性。 现在可以使用 Visual Studio 安装程序导出给定 Visual Studio 实例的 .vsconfig 文件。 此文件将包含有关已安装的工作负载和组件的信息。 然后,可以导入此文件,以将这些工作负载和组件选项添加到 Visual Studio 的其他安装中。

调试

我们增加了对使用基于可移植PDB的新符号包格式(.snupkg)的支持。 添加了工具,使你可从 NuGet.org 符号服务器等源轻松使用和管理符号包

C++

  • 我们在 Visual Studio Enterprise 版本的适用于 C++ 的调试器中添加了“后退”功能。 回溯功能使你能够回溯到过去,以查看之前的应用状态。
  • C++ IntelliSense 现在响应面向 Linux 的 CMake 和 MSBuild 项目的远程环境中的更改。 安装新的库或更改 CMake 项目时,C++ IntelliSense 将自动分析远程计算机上的新头文件,以实现完整无缝的 C++ 编辑体验。
  • 已将 UWP Desktop Bridge 框架包更新至 Windows 应用商店的最新版本,适用于包括 ARM64 在内的所有受支持的体系结构。
  • 除了修复 60 个阻塞性错误之外,我们还为 MSVC 15.9 编译器添加了对 range-v3 库的支持,该支持在 /std:c++17 /permissive- 下可用。
  • Visual Studio 中的零售 VCLibs 框架包已更新,以匹配 UWP 应用商店中的最新可用版本。
  • 现已完全支持 ARM64 C++ 本机桌面方案(包括 VC++ 2017 可再发行版)。
  • 我们在 C++ 17 的 charconv 标头中实现了浮点 to_chars() 的最短往返程十进制重载。 使用科学记数法,约是 sprintf_s() "%.8e" 的 10 倍快(对于单精度浮点),是 sprintf_s() "%.16e" 的 30 倍快(对于双精度浮点)。 本方法使用了Ulf Adams的新算法Ryu。
  • 对 Visual C++ 编译器的标准符合性进行了一系列改进,标准符合性可能要求在严格符合性模式下进行源更改,可在此处找到这一系列改进。
  • 我们已弃用 C++ 编译器 /Gm 交换机。 如果已显式定义,请考虑在生成脚本中禁用 /Gm 交换机。 或者,也可以安全地忽略针对 /Gm 的弃用警告,因为在使用“将警告视为错误”(/WX) 时不会将其视为错误。

F#

F# 编译器

  • 我们修复了一个错误,其中采用 byref 值的扩展方法可能更改不可变值。
  • 我们改进了 byref/inref/outref重载的编译错误信息,而不是像以前那样显示不清晰的错误。
  • 现已完全不允许使用 byref 上的可选类型扩展。 它们以前可以声明,但不可用,从而导致令人困惑的用户体验。
  • 修复了在结构元组上使用 CompareTo 并产生使用别名的结构元组的类型等效项而造成运行时异常的 bug。
  • 修复了一个 bug,即在编写适用于 .NET Standard 的类型提供程序时,使用 System.Void 可能无法在设计时查找 System.Void 类型。
  • 我们修复了一个 bug:在部分应用的区分联合构造函数与区分联合的注解或推断类型不匹配时,可能会发生内部错误。
  • 我们在尝试获取表达式的地址(如访问属性)时修改了编译器错误消息,使其更清楚地表明它违反了 byref 类型的范围规则。
  • 修复了在对方法或函数部分应用 byref 类型时,程序可能在运行时崩溃的错误。 此时会显示一条错误消息。
  • 修复了 byref 和引用类型(例如 byref<int> option)的无效组合会在运行时失败且不发出错误消息的问题。 现在可发出错误消息。

F# 工具

  • 我们解决了以下问题:使用 .NET Core SDK 生成的 F# 程序集的元数据未显示在 Windows 上的文件属性中。 现在,右键单击 Windows 上的程序集并选择“属性”即可查看此元数据
  • 我们修复了在 F# 源中使用 module global 可能导致 Visual Studio 无响应的 bug。
  • 我们修复了一个漏洞,该漏洞导致使用 inref<'T> 的扩展方法不会显示在完成列表中。
  • 修复了 .NET Framework F# 项目的“项目属性”中 TargetFramework 下拉列表为空的 bug。
  • 我们修复了以下 bug:创建面向 .NET Framework 4.0 的新 F# 项目会失败。

F# 开源存储库

VisualFSharpFull 项目现在设置为默认启动项目,无需在调试之前手动设置该项目。 谢谢,罗伯特·杰佩森

JavaScript 和 TypeScript 语言服务支持

  • 我们添加了重构功能,以便在文件重命名后修正对该文件的引用。 我们还添加了对项目引用的支持,使你能够将你的 TypeScript 项目拆分为相互引用的独立版本。
  • 我们已更新到最新的 Vue CLI 3.0 并改进了 Vue.js 模板文件中的 linting。 你也可以使用 Jest 框架来编写和运行单元测试。
  • 添加了对 TypeScript 3.1 的支持。

SharePoint 2019 支持

我们添加了允许你为 SharePoint 2019 创建项目的新模板。 你将能够将现有 SharePoint 项目从 SharePoint 2013 和 SharePoint 2016 迁移到新的项目模板。

Visual Studio Tools for Xamarin

Visual Studio Tools for Xamarin 现在支持 Xcode 10,它允许你为 iOS 12、tvOS 12 和 watchOS 5 生成和调试应用。 有关可用新功能的更多详细信息,请参阅使用 iOS 12 的准备工作我们对 iOS 12 的介绍

初始 Xamarin.Android 构建性能改进

Xamarin.Android 9.1 包括初始生成性能改进。 请参阅我们的 Xamarin.Android 15.8 和15.9 生成性能比较以了解详细信息。

适用于通用 Windows 平台开发人员的工具

  • 最新的 Windows 10 SDK(内部版本 17763)作为可选组件包含在通用 Windows 平台开发工作负载中。
  • 我们为通用 Windows 平台项目添加了对创建 .MSIX 包的支持,也在 Windows 应用程序打包项目模板中添加了此支持。 若要创建 .MSIX 包,应用程序的最低版本必须为最新的 Windows 10 SDK(内部版本 17763)。
  • 你现在可以构建 ARM64 UWP 应用程序。 对于.NET UWP 应用程序,仅 .NET Native 支持 ARM64,并且必须将应用程序的最低版本设置为 Fall Creators Update(版本 16299)或更高版本。
  • 我们对通用 Windows 平台应用程序的 F5(生成 + 部署)速度进行了改进。 这对于使用 Windows 身份验证部署到远程目标的部署最为明显,但也会影响所有其他部署。
  • 开发人员现在可以选择在使用 XAML 设计器时指定控件显示选项,同时生成面向 Windows 10 Fall Creators Update(内部版本 16299)或更高版本的 UWP 应用程序。 选择“仅显示平台控件”可阻止设计器执行任何自定义控制代码,以提升设计器的可靠性。
  • XAML 设计器现在会自动将触发可捕获异常的控件替换为备选控件,而不是导致设计器崩溃。 回退控件带有黄色边框,提示开发人员,该控件在设计时已被替代。
  • Windows 应用程序打包项目现支持使用 Core CLR 调试器类型调试后台进程。

NuGet

NuGet 凭据提供程序的改进

此版本显著改善了使用已经过身份验证的包源的体验,尤其适用于 Mac 和 Linux 用户:

  • Visual Studio、MSBuild、NuGet.exe 和 .NET 现在支持新的凭据提供程序插件接口,可以通过 Azure Artifacts 等专用包主机实现。 以前,只有 NuGet.exe 和 Visual Studio 接受凭据提供程序。
  • Visual Studio 版本(包括生成工具版本)现提供具有特定工作负荷的 Azure Artifacts 凭据提供程序,从而可在开发过程中轻松使用 Azure Artifacts 源。 要使用这些改进的功能,请安装 NuGet 包管理器NuGet 目标和生成任务组件,或 .NET Core 工作负载。

NuGet 软件包管理器的改进

  • NuGet 现在支持对基于 PackageReference 的项目锁定完全包封闭,因此可支持包的重复还原。
  • Visual Studio NuGet 包管理器用户界面现在显示使用新许可证格式的包的许可证信息。 新的许可证格式 以 SPDX 表达式或许可证文件的形式将许可证信息嵌入包中。

NuGet 安全性

我们引入了 NuGet 客户端策略,使你能够配置包安全性约束。 这意味着你可以锁定环境以仅允许安装信任的包,方法如下:

  • 禁止安装未签名的包。
  • 根据作者签名定义受信任的签名列表。
  • 根据存储库签名中的元数据定义受信任的 NuGet.org 包所有者的列表。

适用于 Visual Studio 的 .NET Core 工具

从此版本开始,适用于 Visual Studio 的 .NET Core 工具在 Visual Studio 的正式版本中将默认仅使用在您计算机上安装的最新稳定版 .NET Core SDK。 对于将来的预览版,这些工具将仅使用预览版 .NET Core SDK。


已解决的问题

请参阅 Visual Studio 2017 版本 15.9 中修复的所有客户报告的问题。

DevComIcon 开发者社区门户


已知问题

请参阅 Visual Studio 2017 版本 15.9 中的所有现有已知问题和可用解决方法。

KnownIssueButton Visual Studio 2017 已知问题


Visual Studio 2017 发行说明历史记录

若要详细了解以往 Visual Studio 2017 版本的相关信息,请参阅 Visual Studio 2017 发行说明历史记录页。