2022LogoVisual Studio 2022 17.6 版的版本資訊

提示

即將推出:使用適用於 Visual Studio 的 GitHub Copilot 搶先體驗最新的 AI 驅動功能。 深入了解完整的程式碼解譯、產生單元測試,以及探索修正錯誤 (bug) 的解決方案。 註冊!


提示

觀看 Visual Studio 2022 上市活動的錄製內容以了解新功能、聆聽提示及技巧,以及下載免費的數位 Swag。

開發人員社群 | Visual Studio 2022 藍圖 | 系統需求 | 相容性 | 可散發程式碼 | 版本歷程記錄 | 授權條款 | 部落格 | 最新版已知問題 | Visual Studio Docs 的新功能


按一下按鈕以下載最新版的 Visual Studio 2022。 如需安裝和更新 Visual Studio 2022 的指示,請參閱將 Visual Studio 2022 更新至最新版本。 此外,請參閱如何離線安裝上的指示。

下載 Community 按鈕下載 Professional 按鈕下載 Enterprise 按鈕

若要下載其他 Visual Studio 2022 產品,請造訪 Visual Studio 網站。


Visual Studio 2022 17.6 版


Visual Studio 2022 17.6 版

支援時間範圍

已設定為在 17.6 LTSC 通道上接收更新的 Visual Studio 2022 17.6 版的企業版和專業版使用者,都可在 2025 年 1 月前受到支援及收到安全性弱點的修正程式。 如需 Visual Studio 所支援基準的詳細資訊,請參閱 Visual Studio 2022 的支援原則

按一下下列其中一個按鈕,從 17.6 LTSC 通道下載最安全的 Visual Studio 2022 17.6 版。 您可以在 Visual Studio 訂閱網站上找到額外的 17.6 LTSC 產品。

下載 Enterprise 版 LTSC 按鈕下載 Professional 版 LTSC 按鈕

您只能在具有 Visual Studio 最新次要版本的最新維護版的「目前通道」上取得 Visual Studio Community 版本。

請瀏覽 Visual Studio 網站,以存取最新版 Visual Studio 2022 產品的連結。 如需安裝和更新 Visual Studio 2022 的指示,請參閱將 Visual Studio 2022 更新至最新版本Visual Studio 系統管理員指南包含如何跨組織部署 Visual Studio 的指引。

Visual Studio 2022 部落格

Visual Studio 2022 部落格是由 Visual Studio 工程小組發行的官方產品見解。 您可以在下列文章中找到有關 Visual Studio 2022 版的深入資訊:


17.6.14 Visual Studio 2022 17.6.14 版

2024 年 4 月 9 日發行

Visual Studio 2022 17.6.14 版發行版本的新功能摘要

  • 透過此錯誤修正,用戶端現在可以在配置中使用啟動載入器並傳入 --noWeb 參數以在用戶端電腦上安裝,並確保僅從配置下載安裝程式和 Visual Studio 產品。 先前,有時在安裝過程中,安裝程式不會考慮 -noWeb 參數,而且會嘗試從網路進行自我更新。

已解決的資安漏洞諮詢通告

  • CVE-2024-21409 WPF 中存在釋放後使用弱點,在檢視不受信任的文件時可能會導致權限提升。
  • CVE-2024-28929 此更新解決了 Microsoft ODBC Driver for Microsoft SQL Server 中的遠端程式碼執行弱點。
  • CVE-2024-28930 此更新解決了 Microsoft ODBC Driver for Microsoft SQL Server 中的遠端程式碼執行弱點。
  • CVE-2024-28931 此更新解決了 Microsoft ODBC Driver for Microsoft SQL Server 中的遠端程式碼執行弱點。
  • CVE-2024-28932 此更新解決了 Microsoft ODBC Driver for Microsoft SQL Server 中的遠端程式碼執行弱點。
  • CVE-2024-28933 此更新解決了 Microsoft ODBC Driver for Microsoft SQL Server 中的遠端程式碼執行弱點。
  • CVE-2024-28934 此更新解決了 Microsoft ODBC Driver for Microsoft SQL Server 中的遠端程式碼執行弱點。
  • CVE-2024-28935 此更新解決了 Microsoft ODBC Driver for Microsoft SQL Server 中的遠端程式碼執行弱點。
  • CVE-2024-28936 此更新解決了 Microsoft ODBC Driver for Microsoft SQL Server 中的遠端程式碼執行弱點。
  • CVE-2024-28937 此更新解決了 Microsoft ODBC Driver for Microsoft SQL Server 中的遠端程式碼執行弱點。
  • CVE-2024-28938 此更新解決了 Microsoft ODBC Driver for Microsoft SQL Server 中的遠端程式碼執行弱點。
  • CVE-2024-28941 此更新解決了 Microsoft ODBC Driver for Microsoft SQL Server 中的遠端程式碼執行弱點。
  • CVE-2024-28943 此更新解決了 Microsoft ODBC Driver for Microsoft SQL Server 中的遠端程式碼執行弱點。
  • CVE-2024-29043 此更新解決了 Microsoft ODBC Driver for Microsoft SQL Server 中的遠端程式碼執行弱點。

17.6.13 Visual Studio 2022 版本 17.6.13

發行於 2024 年 3 月 12 日

Visual Studio 2022 版本 17.6.13 發行版本的新功能摘要

已解決的資安漏洞諮詢通告

  • CVE-2024-21392 .NET 中有一個弱點,其中特製的要求可能會導致資源流失,進而導致拒絕服務。
  • CVE-2024-26190 MsQuic.dll 中存在弱點,這可能會導致同儕節點在連線保持運作時配置小型記憶體區塊。
  • CVE-2023-27911 此諮詢正在重新發佈,表示 Visual Studio 2022 不再支援 Autodesk® FBX® SDK。

17.6.12 Visual Studio 2022 17.6.12 版

2024 年 2 月 13 日發行

Visual Studio 2022 17.6.12 版的此發行版本中的新功能摘要

已解決的資安漏洞諮詢通告

  • CVE-2024-0057 當 Microsoft .NET Framework 型應用程式使用 X.509 鏈結建置 API 但由於邏輯缺陷而未完全驗證 X.509 憑證時,安全性功能會略過弱點。
  • CVE-2024-21386 使用 Azure SignalR Service 的 ASP.NET 應用程式中存在弱點,惡意用戶端可能會導致拒絕服務。
  • CVE-2024-21404 剖析 X509 憑證時,.NET 中存取 OpenSSL 支援的拒絕服務弱點。

17.6.11 Visual Studio 2022 17.6.11 版

2024 年 1 月 9 日發行

Visual Studio 2022 17.6.11 版發行版本的新功能摘要

  • IncrediBuild 的更新版本修正了使用標準建置功能表命令建置 CMake 專案時,預設會錯誤地重新導向組建以使用 IncrediBuild 的問題。
  • 修正 ASan 中的無限遞迴 - 在較新版本的 Windows 中,ntdll 已開始在其例外狀況處理機制中呼叫 memset;因此,我們必須確定如果我們是由 ntdll 呼叫,則需要確定我們不會從 memset 擲回任何 SEH 例外狀況。
  • 已將 MinGit 更新為 v2.43.0.1,該版本隨附於 OpenSSL v3.1.4,並解決了在某些情況下網路作業非常慢的回歸問題。

已解決安全性諮詢

  • CVE-2024-20656 VSStandardCollectorService150 服務中存在弱點,在其中本地攻擊者可以在執行受影響 Microsoft Visual Studio 安裝的主機上提升權限。
  • CVE-2023-32027 重新發佈此公告是為了解決 Visual Studio 中 Microsoft ODBC Driver for SQL Server 遠端程式碼執行弱點問題。
  • CVE-2023-32025 重新發佈此公告是為了解決 Visual Studio 中 Microsoft ODBC Driver for SQL Server 遠端程式碼執行弱點問題。
  • CVE-2023-32026 重新發佈此公告是為了解決 Visual Studio 中 Microsoft ODBC Driver for SQL Server 遠端程式碼執行弱點問題。
  • CVE-2023-29356 重新發佈此公告是為了解決 Visual Studio 中 Microsoft ODBC Driver for SQL Server 遠端程式碼執行弱點問題。
  • CVE-2023-32028 重新發佈此公告是為了解決 Visual Studio 中 Microsoft SQL OLE DB 遠端程式碼執行弱點問題。
  • CVE-2023-29349 重新發佈此公告是為了解決 Visual Studio 中 Microsoft ODBC 和 OLE DB 遠端程式碼執行弱點問題。
  • CVE-2024-0057 當 Microsoft .NET Framework 型應用程式使用 X.509 鏈結建置 API 但由於邏輯缺陷而未完全驗證 X.509 憑證時,安全性功能會略過弱點。
  • CVE-2024-0056 MICROSOFT.Data.SqlClient 和 System.Data.SqlClient SQL 資料提供者中存在弱點,攻擊者可以在 SQL 用戶端與 SQL 伺服器之間執行攔截攻擊 (有時稱為 MITM 或中間人攻擊)。
  • CVE-2024-21319 Microsoft 發行此資訊安全諮詢的目的,是提供 ASP.NET Core 專案範本中有關弱點的資訊。

17.6.10 Visual Studio 2022 17.6.10 版

2023 年 11 月 14 日發行

Visual Studio 2022 17.6.10 版發行版本的新功能摘要

  • 在 VS 2022 v17.6 中,我們對 VC++ 可轉散發套件的更新會更新安裝檔案所在的目錄。 如果您仰賴參考這些檔案的記載方式,則不應該有任何影響。 但是,如果您的應用程式部署指令碼中有硬式編碼版本目錄,您可能需要更新組建以參考新位置。
  • 已修正 ASan 中的無限遞迴 - 在較新版本的 Windows 中,ntdll 已開始在其例外狀況處理機制中呼叫 memset;因此,我們必須確定如果我們是由 ntdll 呼叫,則需要確定我們不會從 memset 擲回任何 SEH 例外狀況。
  • 已修正使用 /analyze 選項搭配 /std:c++20 選項進行程式碼分析期間的編譯器當機。
  • 已修正特定 C++ 模式觸發移動檢查 (C26800) 之後,使用中的當機問題。

開發人員社群重點

已解決安全性諮詢

  • CVE-2023-36038ASP.NET IIS 中存在一個弱點,其中遠端未經驗證的使用者可能會對可能導致拒絕服務的 .NET 應用程式發出特製要求。
  • CVE-2023-36049.NET 中存在權限提高弱點,其中提供給 System.Net.WebRequest.Create 的不受信任 URI 可用來將任意命令插入後端 FTP 伺服器。
  • CVE-2023-36558ASP.NET 存在安全性功能略過弱點,其中未經驗證的使用者能夠略過 Blazor 伺服器表單上的驗證,這可能會觸發非預期的動作。
  • CVE-2023-36042Visual Studio 中存在拒絕服務弱點,其中格式不正確的裝飾名稱可能會導致無限迴圈。

17.6.9 Visual Studio 2022 17.6.9 版

2023 年 10 月 24 日發行

Visual Studio 2022 17.6.9 版發行版本的新功能摘要

重新發佈的安全性諮詢

  • CVE-2023-36799.NET 中存在弱點,其中讀取惡意製作的 X.509 憑證可能會導致拒絕服務。 此問題只會影響 Linux 系統。
  • CVE-2023-36796此安全性更新會在讀取損毀的 PDB 檔案時,解決 DiaSymReader.dll 中的弱點,這可能會導致遠端程式碼執行。
  • CVE-2023-36794此安全性更新會在讀取損毀的 PDB 檔案時,解決 DiaSymReader.dll 中的弱點,這可能會導致遠端程式碼執行。
  • CVE-2023-36793此安全性更新會在讀取損毀的 PDB 檔案時,解決 DiaSymReader.dll 中的弱點,這可能會導致遠端程式碼執行。
  • CVE-2023-36792此安全性更新會在讀取損毀的 PDB 檔案時,解決 DiaSymReader.dll 中的弱點,這可能會導致遠端程式碼執行。

17.6.8 Visual Studio 2022 17.6.8 版

2023 年 10 月 10 日發行

Visual Studio 2022 17.6.8 版發行版本的新功能摘要

開發人員社群重點

已解決安全性諮詢

  • CVE-2023-36435MsQuic.dll 中存在記憶體流失弱點,可能會導致拒絕服務。 此問題只會影響 Windows 系統。
  • CVE-2023-38171MsQuic.dll 中存在 null 指標弱點,可能會導致拒絕服務。 此問題只會影響 Windows 系統。
  • CVE-2023-44487ASP.NET Core Kestrel 網路伺服器中存在弱點,惡意用戶端可能會用特製的 HTTP/2 要求來癱瘓伺服器,導致拒絕服務。

17.6.7 Visual Studio 2022 17.6.7 版

2023 年 9 月 12 日發行

Visual Studio 2022 17.6.7 版發行版本的新功能摘要

  • 已將 Visual Studio 使用的 Git 版本更新為 2.41.0.3 版。

開發人員社群重點

已解決安全性諮詢

  • CVE-2023-36799.NET 中存在弱點,其中讀取惡意製作的 X.509 憑證可能會導致拒絕服務。 此問題只會影響 Linux 系統。
  • CVE-2023-36796此安全性更新會在讀取損毀的 PDB 檔案時,解決 DiaSymReader.dll 中的弱點,這可能會導致遠端程式碼執行。
  • CVE-2023-36794此安全性更新會在讀取損毀的 PDB 檔案時,解決 DiaSymReader.dll 中的弱點,這可能會導致遠端程式碼執行。
  • CVE-2023-36793此安全性更新會在讀取損毀的 PDB 檔案時,解決 DiaSymReader.dll 中的弱點,這可能會導致遠端程式碼執行。
  • CVE-2023-36792此安全性更新會在讀取損毀的 PDB 檔案時,解決 DiaSymReader.dll 中的弱點,這可能會導致遠端程式碼執行。
  • CVE-2023-36759此安全性更新會移除 pgodriver.sys,讀取惡意檔案可能會導致提高權限。

17.6.6 Visual Studio 2022 17.6.6 版

2023 年 8 月 8 日發行

Visual Studio 2022 17.6.6 版發行版本的新功能摘要

  • 已修正 IntelliSense 涉及繼承指派運算子的損毀問題。
  • SQL 檔案語法醒目提示現在應該會如預期般運作。
  • 已修正最近引入的錯誤 (bug),其可能會在程式碼分析期間造成編譯器內部錯誤。
  • 已修正 C++ 模組錯誤 (bug),並新增數個模組輸送量改善。

開發人員社群重點

已解決安全性諮詢

  • CVE-2023-35390當某些 dotnet 命令用於目錄中且權限較弱時,就會存在弱點,而這可能會導致遠端程式碼執行。
  • CVE-2023-38180Kestrel 中存在弱點,偵測潛在的惡意用戶端時,Kestrel 有時會無法中斷連線,導致拒絕服務。
  • CVE-2023-38178.NET Kestrel 中存在弱點,惡意用戶端可以在 ASP.NET 和 .NET 執行階段中略過 HTTP/3 中的 QUIC 串流限制,導致拒絕服務。
  • CVE-2023-35391ASP.NET Core 2.1、.NET 7.0 和 .NET 6.0 應用程式中存在弱點,使用 redis 後擋板時使用 SignalR 可能會導致資訊洩漏。
  • CVE-2023-36897 Visual Studio 2010 Tools for Office 執行階段詐騙弱點此安全性更新解決了未經驗證的遠端攻擊者可以在沒有有效程式碼簽署憑證的情況下簽署 VSTO 增益集部署的弱點。

17.6.5 Visual Studio 2022 17.6.5 版

2023 年 7 月 11 日發行

Visual Studio 2022 17.6.5 版發行版本的新功能摘要

  • 修正問題:切換不帶正負號的 64 位元整數可能會導致 x86 和 ARM 目標損毀。
  • 修正問題:使用 Entity Framework 設計工具的 Visual Basic 使用者可能會在儲存 edmx 檔案之後,遇到編譯錯誤的問題。

開發人員社群重點

已解決安全性諮詢


17.6.4 Visual Studio 2022 17.6.4 版

2023 年 6 月 20 日發行

Visual Studio 2022 17.6.4 版發行版本的新功能摘要

  • 修正儲存 C++ 檔案有時會造成 IDE 停止回應的問題。
  • 修正針對 VC 專案設定「顯示所有檔案」模式時的問題,有時這些專案中的檔案結果會在 GoTo 和 FindInFiles 中遺失。
  • 修正 '__declspec(property) 會導致 C++20 和 /clr 語法錯誤
  • 修正 ASAN 初始化中導致啟動時損毀的競爭條件
  • 多個測試專案依序執行時,vstest.console 可能會因為持續輪詢 testhost 中已啟動但尚未執行的資料而耗用大量 CPU。 藉由停用 testhost 預先啟動來緩解此問題。 此迴歸發生在 17.6.0 中。
  • 修正當 XCFramework 涉及 MAUI (以 iOS 為目標) 時發生的 MessagingRemoteException。 請參閱 xamarin/macios#18308。
  • 此版本的 Visual Studio 包含 Win App SDK 1.3.230502000。 如需詳細資訊,請參閱 Windows App SDK 發行通道 - Windows 應用程式
  • 包含適用於 Windows 11 的 Windows SDK 維護更新 10.0.22621.1778。 如需詳細資訊,請參閱 Windows SDK
  • 修正文件索引標籤意外卸除至浮動視窗的錯誤。
  • 修正解決方案關閉時的某些 Visual Studio 損毀問題。

開發人員社群重點


17.6.3 Visual Studio 2022 17.6.3 版

2023 年 6 月 13 日發行

Visual Studio 2022 17.6.3 版發行版本的新功能摘要

  • razor 編譯器中引入一項迴歸,會破壞具有明確部分類別的特定標籤協助程式。 在修正此錯誤之前,客戶可以藉由往回釘選 7.0.203 SDK 來解決問題。

已解決安全性諮詢


17.6.2 Visual Studio 2022 17.6.2 版

2023 年 5 月 25 日發行

Visual Studio 2022 17.6.2 版發行版本的新功能摘要

開發人員社群重點


17.6.1 Visual Studio 2022 17.6.1 版

2023 年 5 月 22 日發行

Visual Studio 2022 17.6.1 版發行版本的新功能摘要

  • 我們已對新功能內容進行部分更新。

17.6.0 Visual Studio 2022 17.6 版

2023 年 5 月 16 日發行

Visual Studio 2022 17.6 版發行版本的新功能摘要

開發人員社群重點

F#

  • 引進從 C# 瀏覽至 F# 的原生「移至定義」功能。

移至定義:C# 至 F#

從這裡檢視支援的案例:#14377

  • 藉由在比對引數名稱時隱藏參數名稱提示來改善參數名稱提示

改善的參數名稱提示

  • 啟用可摺疊區塊註解,以提升可讀性

F# 中的可折疊註解

  • 藉由合併可設定的屬性來精簡屬性完成
  • 解決導致結果分割成相同標籤群組的「尋找所有參考」錯誤 (bug)
  • 透過智慧排序結果來升級「移至全部」功能體驗。 如需詳細資訊,請參閱這裡:#14882

C++

  • 與使用中文件同步的功能現在可在 CMake 目標檢視中運作。 此功能會尋找符合檔案完整路徑的第一個位置,並與該文件同步。
  • 我們已改進解決方案 – 開放案例,讓關閉包含 C++ 專案的解決方案更加快速。 在某些情況下,整體效能改進可以讓關閉解決方案的速度從小型程式碼基底的速度快了 20% 到在某些情況下大型解決方案 (1000 個以上的專案) 的速度快了 50%。 我們預期大型專案中的勝出會更明顯。 針對 Chromium,通常可加快 50%,可節省 20 秒的時間。
  • 透過 Visual Studio 安裝程式搭售的 Incredibuild 版本已更新為 10.1.9 版。 如需新功能和最新變更的詳細資訊,請參閱 Incredbuild 10 版本資訊
  • C++/CLI 的 C++20 支援
    • /std:c++20 現在可以與 /clr 搭配使用。 這可讓各種 C++20 建構搭配 ISO C++ 類型使用。 特別是,所有 C++20 標頭都可以 #included/clr 編譯中,且沒有限制。
    • 兩階段名稱查閱 (ISO C++ [temp.dep]) 現在是指定 /std:c++20/std:c++17 時的預設值。 使用 /Zc:twoPhase- 時不再需要指定 /std:c++17。 受控範本和泛型是例外狀況,編譯方式與之前一樣,不需要兩階段查閱語意。
    • 協同程式一律會編譯為機器碼,而且來自受控程式碼的任何呼叫都會產生受控->原生轉換損失。
    • 原生類型可支援概念,但禁止搭配受控類型使用,而且會導致診斷發生。
    • 尚未實作模組支援。 未來版本將推出受限制的模組匯入支援。
  • 您可以使用新的 CMake 偵錯工具,在設定時間對 CMake 指令碼進行偵錯。 您可以根據檔案名稱、行號以及觸發 CMake 錯誤時設定中斷點。 此外,您可以檢視檔案名稱的呼叫堆疊,並監看已定義的變數。 目前,這只適用於搭售方案的 CMake,尚不支援以 WSL 或遠端電腦為目標的專案。 我們正努力地將更多支援新增至 CMake 偵錯工具,而且非常歡迎您提供意見反應。

cmake 偵錯工具

  • 您現在可以使用「建立成員函式」功能,快速地將建構函式和等號比較運算子新增至您的類別中。 當您有具有欄位的類別時,類別名稱下會出現三個點,而懸停於上方將顯示螺絲起子圖示。 螺絲起子圖示的下拉式清單會顯示新的成員函式建議。 透過此功能,您可以新增預設建構函式、具有所有欄位的建構函式、等號比較運算子,以及所有欄位的等號比較運算子。 建立成員函式
  • HLSL (高階著色語言) 是遊戲開發和轉譯應用程式時,用於建立著色器的 DirectX 專用程式設計語言。 Tim Jones 提供的熱門 HLSL 工具延伸模組現在已可作為 Visual Studio 的一部分使用,可提供語法醒目提示、陳述式完成、移至定義等功能! 若要使用 HLSL 工具,請啟用 Visual Studio 安裝程式中的「使用 C++ 進行遊戲開發」元件或「使用 Unity 進行遊戲開發」工作負載。
  • 改善 C++ 符號的 [移至] 和 [多合一式搜尋] 效能。
  • 您現在可以在無需離開 Visual Studio 的情況下檢視 Unreal Engine 記錄。 若要開啟記錄視窗,請按一下 [檢視] > [其他視窗] > [Unreal Engine 記錄]。 開啟 UE 記錄視窗之後,當您使用 F5 啟動 Unreal 編輯器時,記錄會自動開始串流。 如果將偵錯工具附加至您的 UE 處理序不可行,您也可以按下紅色的 [記錄] 按鈕。 若要篩選您的記錄,請按一下 [類別] 或 [詳細程度] 下拉式清單。
  • 您現在可以使用 [檔案] > [開啟] > [匯入 STM32CubeIDE 專案],來匯入用於 VISUAL Studio 中內嵌開發的 STM32CubeIDE 專案。 此操作會產生 CMake 專案,其中包含 STLink 的裝置韌體刷新和偵錯設定。 您必須在裝置上安裝 STM32CubeIDE 與開發板支援套件。 這裡可取得更多詳細資訊。
  • 使用新的遠端檔案總管,您可以瀏覽、上傳和下載檔案到連線管理員中所列的遠端電腦。

遠端檔案總管

SQL

總帳支援

  • 當資料庫隨著時間演進時,資料庫總帳會以累進方式擷取資料庫的狀態,同時在總帳資料表上進行更新。 它會以邏輯方式使用區塊鏈和 Merkle 樹狀資料結構
  • 我們正在 Sql Server Data Tools 中新增與 Azure Data Studio 類似的總帳功能。 SQL 總帳是 SQL 2022 中新增的功能,可提供新的資料表類型,包括下列項目:
    • 僅限附加的總帳資料表
    • 可更新的總帳資料表
    • 總帳記錄資料表
    • 已卸除的總帳資料表
    • 總帳檢視
    • 已卸除的總帳檢視

SQL Ledger

  • 我們提供下列總帳使用案例:
    • 檢視總帳資料表 (在 SSOX 中檢視)。
    • 建立總帳資料表 (從 SSOX 檢視)
    • 使用總帳資料表建立 sqlproj。 以滑鼠右鍵按一下專案 -> [新增專案] -> [資料表總帳 (可更新)] 或 [資料表總帳 (僅限附加)]
    • 將總帳發佈至 SQL 資料庫

SQL Ledger 選項

Git 工具

偵錯、診斷和分析

中斷點群組

  • Visual Studio 偵錯工具現在支援中斷點群組,可讓您快速且輕鬆地管理組織群組中的許多中斷點。
  • 您可以使用中斷點視窗中的 [新增] 下拉式清單,建立新的中斷點群組。 若要將中斷點新增至現有的群組,請以滑鼠右鍵按一下中斷點,然後選擇 [新增至中斷點群組]。 您也可以將中斷點拖放到所需的群組中。 您可以啟用、停用和刪除這些中斷點群組。 您可以視需要以個別或組合方式切換中斷點。

復原中斷點群組

  • 中斷點群組也支援復原刪除。 您可以使用 “Ctrl-z” 來復原中斷點群組的刪除作業。

  • 此外,中斷點群組現在支援相依中斷點群組。 您可以讓中斷點群組相依於其他中斷點,讓群組只在叫用必要中斷點時才啟動。

相依中斷點群組

記憶體工具見解疏鬆陣列

  • Visual Studio 記憶體分析工具現在能夠識別和顯示疏鬆陣列。 您可以在 [見解] 索引標籤下看到具有疏鬆陣列的清單物件。
  • 疏鬆陣列是一個陣列,大部分會填入零元素,這在效能和記憶體使用量方面的效率可能較低。 記憶體分析工具會自動偵測這些陣列,並顯示由於這些零值而浪費多少記憶體。

疏鬆陣列

  • 偵錯工具現在支援在個別解決方案中包含 .natstepfilter 和 .natjmc 檔案,而不是在先前的全域位置中。 這項變更可讓小組內的共同作業更有效率,因為這些檔案現在可以視為存放庫內的任何其他檔案,並據以共用。

檢測工具

  • Visual Studio 程式碼剖析工具現在支援 C++ 程式碼,並提供改良的效能分析。 若要存取檢測工具,請前往 [偵錯] > [效能分析工具],然後在顯示的「分析工具」視窗中選取 [檢測]。
  • 「檢測資料檢視」會呈現依長時間執行排序的函式清單,讓您更容易識別潛在的瓶頸。 此外,[最忙碌路徑] 區段會顯示耗用最多 CPU 函式的呼叫堆疊,對效能問題提供進一步的深入見解。

檢測工具

適用於 WSL 上 .NET 分析工具的即時圖表

  • Visual Studio 分析工具現在也支援即時圖表,同時會從 WSL 的 dotnet-monitor 收集資料。 WSL 即時計量可用於 .NET 物件配置、CPU 使用量和 .NET 計數器工具。
  • 此工具一開始從適用於 WSL 的 dotnet-monitor 收集資料時,您可以查看即時計數器資訊的即時圖表,然後您可以停止收集並查看記憶體配置、呼叫樹狀結構、函式、集合和其他相關資料的詳細明細檢視。

WSL_Live_Graph

.NET 物件配置工具

  • .NET 物件配置工具現在能夠使用 ETL 檔案格式從 .NET 資料提供者匯入配置。 例如,如果您從包含配置標記事件的 .NET 提供者取得 ETL 檔案,則此工具可以執行並顯示該資料內所做的配置。

資料視覺化檢視

  • 您現在可以使用 IEnumerable 和 DataSet 視覺化檢視,透過 SSH、Docker 或 WSL 在 Unix 上偵錯 .NET 時檢查變數/物件。

跨平台視覺化檢視

  • HTML 和 XML 偵錯工具視覺化檢視現在已完全主題化,並支援 Visual Studio 的藍色、淺色和深色主題。

呼叫堆疊和平行堆疊視窗

  • 呼叫堆疊視窗現在支援搜尋功能。 您可以在搜尋方塊中新增所需的搜尋關鍵字,且相符的呼叫堆疊框架將會醒目提示。 視窗也有平行堆疊的新進入點,可讓您在偵錯時快速存取視窗。

呼叫堆疊搜尋

  • 平行堆疊視窗現在有新的複製功能。 您可以按兩下框架來複製堆疊/移位,並在線上按一下來選取感興趣的框架/選取特定框架,將其複製並貼到您的本機記事本/Excel 中以進行進一步評估。

重新附加至處理序

  • 重新附加至偵錯工具處理序現在可在跨工作階段的解決方案/專案中保留。 因此,即使在開啟新的 VS 工作階段之後,您仍可重新附加至先前已附加的處理序。

Git 工具增強功能

在建置期間暫存和認可

您現在可以在建置期間暫存您的變更並認可您的暫存項目。 直接認可是有風險的作業,因為您的檔案可能會變更,但是現在您可以暫存檔案、確認您的檔案正確無誤,並認可它們 - 所有作業都可在建置執行時進行。

GitHub 問題和 Azure DevOps 工作項目 - 改善搜尋

改善認可訊息中的問題和工作項目整合,您現在可以在查詢最近未更新或與您無關但屬於專案或存放庫的項目時,取得更好的搜尋結果。 搜尋的運作方式是比對項目名稱中的完整字串。 這有助於將瀏覽器與 Visual Studio 之間的複製貼上項目識別碼數降到最低。

改善合併對話方塊

合併對話方塊的更新可讓您更輕鬆地了解有多少檔案受到影響,並在可能發生衝突時警告您。

合併對話框

Git 歷程記錄效能改善

Git 歷程記錄視窗的顯著改善現在更快速地載入先前的認可,讓您更快速地深入探索檔案和資料夾歷程記錄!

git 記錄示範

新增分支和標記命名增強功能

[新增分支] 和 [新增標記] 對話方塊的改善會自動以虛線取代空格,以避免名稱中出現無效字元。

新增分支

GitHub 問題

因應此建議票證,GitHub 問題整合可讓您從 VS 內的認可訊息方塊中搜尋及參考問題。 您可以在認可訊息文字輸入框的右下方鍵入 # 或在 # 按鈕上按一下,以參考問題或提取要求。 如果您尚未通過存取相關問題的驗證,系統現在會提示您登入以利用這項功能。

取消暫存行

為了繼續改善我們的暫存行 (也稱為互動式暫存) 功能,我們新增了取消暫存。 您現在可以使用工具提示選項來逐行取消暫存變更,如此處的要求所述:取消暫存檔案中的個別行和區塊 - 4 票

Arm64

我們會繼續在 Windows 11 上建置 Arm64 的原生支援,以用於最受歡迎的開發人員案例。 我們現在支援 Arm64 Visual Studio 上的 .NET 多平台應用程式 UI (MAUI) 工作負載。

程式碼搜尋和瀏覽

多合一式搜尋

我們已更新多合一式搜尋的 UI。

  • 每個結果都會佔用 2 行空間,讓每個結果更具足夠的空間。
  • 視窗大小和位置會從 Visual Studio 的最後一個工作階段中保存下來。 選取的預覽狀態 (關閉、右側或底部) 也會儲存。
  • 預設預覽面配置會設定為底部。

請至https://aka.ms/all-in-one-search-blog,即可深入瞭解。

您可以啟用多合一式搜尋:[工具] > [管理預覽功能] > [新的 Visual Studio 搜尋體驗 (需要重新啟動)]

自黏捲動

自黏捲動

  • 自黏捲動有助於引導您知道自己在檔案中的位置,並了解所查看程式碼的內容。 當您捲視程式碼時,類別和方法特徵標記和其他標題會黏在您畫面的頂端。 按一下標題中的一行,就會瀏覽至該程式碼。
  • 使用 [自黏行數上限] (Maximum sticky lines) 來設定行數上限。
  • 若使用[當範圍數目超過上限時],請選擇較高層級的範圍 [偏好外部範圍] 或較低層級的範圍 [偏好內部範圍]。

啟用方式為依序前往 [選項] > [文字編輯器] > [一般] > [自黏捲動 (實驗性)],並切換 [將目前範圍分組在編輯器視窗的可捲動區域內] 核取方塊。

請至https://aka.ms/sticky-scroll-blog,即可深入瞭解。

大括弧配對顏色標示

大括弧配對顏色標示

使用大括弧配對顏色標示,您能夠以視覺化方式區分程式碼的每組左大括弧與右大括弧,更輕鬆地查看程式碼的範圍或找出任何遺漏的大括弧。

C#、C++、TypeScript、JavaScript、Visual Basic 和 Razor 支援大括弧配對顏色標示。

您可以前往 [工具] > [選項] > [文字編輯器],然後切換 [啟用大括弧配對顏色標示] 核取方塊,以啟用或停用顏色標示。

燈泡效能改善

透過全面重新設計診斷和程式碼分析架構,燈泡/程式碼動作已大幅改善。 我們著重於透過低/中/高階修正的組合來最佳化所有涉及啟動燈泡的元件。

  • 低階修正包括限制樹狀結構走法、更有效率的字串處理、改善處理來源文字的效率、大幅減少診斷程式代碼路徑中的配置、轉換、列舉和資料結構層級最佳化
  • 中階修正包括在計算燈泡診斷時取消背景診斷 (波浪線)、最佳化背景索引編製、藉由限制每個文件適用的分析器,針對單一文件上執行的查詢最佳化診斷引擎、解決數個第一方/第二方分析器中的大量效率低下問題,例如 PublicAPI 分析器,以及改善我們的快取模型
  • 高階修正包括大量重新處理診斷管線以回答跨範圍導向的問題,推斷哪些分析器適用於在特定範圍上執行,並根據歷程記錄執行資訊取消慢速分析器的優先順序。

之前與之後

![之前 燈碰需要 7 個週期才能完成](media/17.6/17.6ga-lightbulb-before.gif =400x) ![之後 燈泡可立即完成](media/17.6/17.6ga-lightbulb-after.gif =400x)

我們已大幅改善 CPU 和記憶體效能,特別是針對大型來源檔案。 事實上,我們已設法將大型來源檔案中燈泡案例的進度列週期從 8-17 個週期減少到小於一個週期,如上述 gif 所示。

Microsoft Teams 開發工具 (Teams 工具組)

  • 新增功能旗標「Teams 應用程式組態改進」。 Teams 工具組的預覽功能可讓開發人員使用 Teams 原生整合,將現有的內部和 SaaS 應用程式帶入 Teams。 teamsfxapp.yml 檔案中會定義 Teams 工具組引擎的功能。
  • 新增深層連結,以直接從 Teams 開發人員入口網站開啟 Teams 工具組。 您現在可以在開發人員入口網站中開啟 Teams 專案,並在 Teams 工具組中編輯。
  • 我們引進了新的 Teams 應用程式範本來協助您開始使用:工作流程 Bot。 使用新的工作流程 Bot 範本來建立循序工作流程,其中可傳回回應使用者輸入的調適型卡片。
  • 我們也完成了數個錯誤 (bug) 修正。

企業管理

從內部網路裝載和部署 Visual Studio 配置

IT 系統管理員現在除了檔案共用之外,還能在內部網路網站上裝載和部署配置。 使用內部網路位置可以簡化配置維護並改善安裝效能,特別是針對目前使用多個全域網路檔案共用的組織。 檢視指引以了解如何啟用此體驗,並留下意見反應,讓我們知道是否有任何可改善的地方。

更新安裝程式可用索引標籤上的產品供應項目

我們已更新邏輯來管理當您檢視 Visual Studio 安裝程式的 [可用] 索引標籤時會提供哪些產品。您現在應該能夠輕鬆存取目前的預覽版,以及您已安裝的最新 SKU 版本。 IT 系統管理員也能夠藉由停用特定通道,或使用新的 HideAvailableTab 原則來隱藏 [可用] 索引標籤的可見度,以限制特定產品的曝光。

最新安裝程式隨處可得

我們將開始在每個地方隨附最新的安裝程式,這表示未來所有 Visual Studio 2017 版和更新版本的更新都會包含最新的安裝程式。 這表示,我們新增至最新安裝程式的任何新功能或錯誤修正程式 (例如可復原來自配置的安裝) 將會自動在產品下層版本中使用。 不再需要在取得指令碼中使用 --useLatestInstaller 參數。

現在已可針對來自配置的產品安裝啟用復原作業

您現在可以對源自配置的產品來源復原更新。 只要確定配置包含復原成功所需的套件即可。 在 這裡可以找到更多詳細資訊。

.NET MAUI

  • 將 .NET MAUI 更新為 7.0.86 (SR6),請參閱 https://aka.ms/dotnet-maui-releases 來取得版本資訊。
  • 適用於 Android 33.0.46 的 .NET 更新
  • 適用於 iOS 16.4.7060 的 .NET 更新

已知問題

  • 具有指向 7.0.3xx SDK 之全域 json 的 Dotnet 格式使用者發生錯誤,並出現 ReflectionTypeLoadException。 這是因為格式工具中缺少相依性更新。 暫時的因應措施是使用 7.0.203。

  • 升級至 .NET 7.0.3xx SDK Razor / Blazor 客戶時,可能會發生多個元件使用標記 '....' 形式的錯誤

    這是 razor 編譯器中正在處理的錯誤 (bug) 所造成。 在修正此問題之前,使用者可以使用 global.json 釘選 7.0.20xx SDK 來解決此問題。  https://github.com/dotnet/razor/issues/8718

  • 由於 SettingsEditorFactory 相依性錯誤,RoslynPackage 無法初始化將 Visual Studio 升級至 17.6.1 版之後,有些客戶遇到 Visual Studio 無法載入 Roslyn 和其他套件的問題。 發生此問題的原因是組件不符。

    解決方案:若要解決此問題,請將 Visual Studio 升級至 17.6.2 版,然後重新啟動 Visual Studio。

    其他解決方案:如果您在升級後仍然遇到錯誤,您可以嘗試刪除位於 %LOCALAPPDATA%\Microsoft\VisualStudio\17.0_XXXX\ComponentModelCache 的 MEF 快取檔案,其中 XXXX 是隨機識別碼。 刪除檔案之前,建議您先備份這些檔案。 然後重新啟動 Visual Studio。

意見反應與建議

我們很希望聽聽您的意見! 您可以使用安裝程式或 Visual Studio IDE 右上角的 [傳送意見反應] 圖示,或從 [說明] > [傳送意見反應]回報問題或建議功能意見反應圖示。 您可以使用 Visual Studio 開發人員社群來追蹤您的問題,您可以在其中新增留言或尋找解決方案。 您也可以透過我們的即時聊天支援取得免費的安裝協助。


部落格

善用「開發人員工具部落格」網站中的見解與建議,讓您能夠隨時取得所有新版本的最新資訊,以及涵蓋各類功能的深入探討文章。


頁首