共用方式為


Visual Studio 2022 SDK 已移除 API

下列 API 已從 Visual Studio SDK 中移除,無法再使用,如需如何更新程式碼的詳細資訊,請參閱每個章節。

IVsImageService

IVsImageService正在 Visual Studio 2022 中移除 。 所有 IVsImageService 使用者都應該改為移至 IVsImageService2

如果您使用 IVsImageService,請使用 上的 IVsImageService2對等方法呼叫取代對其方法的呼叫:

IVsImageService 方法 對等 IVsImageService2 方法
AddCustomImage
Get GetImage
GetIconForFile GetImageMonikerForFile
GetIconForFileEx GetImageMonikerForFile

IVsImageService的 Add 和 Get 方法會依名稱參考自定義影像(字串),而不是 Moniker。 最好將程式代碼切換為只使用Moniker來參考自定義影像,但如果這證明不切實際 IVsImageService2 的方法有幾個方法,可讓您將名稱與Moniker產生關聯:

  • TryAssociateNameWithMoniker
  • GetImageMonikerForName

使用這兩種方法,您可以依名稱繼續參考影像。

IBlockContextProvider

Visual IBlockContextProvider Studio 2022 中正在移除 和相關的類型。 所有 IBlockContextProvider 使用者都應該改為移至 IStructureContextSourceProvider

的用戶 IBlockContextProvider 應該改用 IStructureContextSourceProvider)。

IToolTipProvider

Visual IToolTipProvider Studio 2022 中正在移除 和相關的類型。 所有 IToolTipProvider 使用者都應該改為移至 IToolTipService

的用戶 IToolTipProvider 應該改用 IToolTipService)。

IVsTextScanner 和 IVsFullTextScanner

IVsTextScanner IVsFullTextScanner 正在 Visual Studio 2022 中移除。 或 IVsFullTextScannerIVsTextScanner所有使用者都應該改為移至 IVsTextLines

IVsTextScannerIVsFullTextScanner 的用戶應該改用 IVsTextLines

異步解決方案載入和輕量型解決方案載入

Visual Studio 2022 已移除異步解決方案載入 (ASL) 和輕量型解決方案載入 (LSL) 功能,例如正在移除下列方法:

介面

  • IVsSolution4 - 方法: IsBackgroundSolutionLoadEnabled、、 EnsureProjectsAreLoadedEnsureProjectIsLoadedEnsureSolutionIsLoaded
  • IVsSolutionLoadEvents - 方法: OnBeforeBackgroundSolutionLoadBegins、、 OnQueryBackgroundLoadProjectBatchOnBeforeLoadProjectBatchOnAfterLoadProjectBatch
  • IVsSolutionLoadManagerSupport - 整個介面
  • IVsSolutionLoadManager - 整個介面
  • IVsSccManager3 - 整個介面
  • IVsAsynchronousProjectCreate - 整個介面
  • IVsAsynchronousProjectCreateUI - 整個介面

列舉、屬性和UI內容

  • VSHPROPID_ProjectUnloadStatus -枚舉: UNLOADSTATUS_LoadPendingIfNeeded
  • VSHPROPID_DemandLoadDependencies
  • VSHPROPID_IsProjectProvisioned
  • VSPROPID_IsInBackgroundIdleLoadProjectBatch
  • VSPROPID_IsInSyncDemandLoadProjectBatch
  • VSPROPID_ActiveSolutionLoadManager
  • UICONTEXT_BackgroundProjectLoad

無。

IVsDummy

IVsDummy正在 Visual Studio 2022 中移除 ,且不會取代 。

無。 但是,它應該不會有任何影響,因為 API 不會執行任何動作。

Microsoft.VisualStudio.Shell.Task

類別 Microsoft.VisualStudio.Shell.Task 已重新命名為 Microsoft.VisualStudio.Shell.TaskListItem ,以免與非常受歡迎的 System.Threading.Tasks.Task 類別發生衝突。

從原始碼安全開放

正在移除從來源安全開啟解決方案的支援,例如正在移除下列方法、事件和常數。

介面

  • IVsSCCProvider3 - 整個介面

無。

適用於 .NET Framework 的新 WPF XAML 設計工具

目前適用於 .NET Framework 的 WPF XAML 設計工具已被取代,並將取代為適用於 .NET Framework 的新 WPF XAML 設計工具,其依據適用於 .NET 的 WPF XAML 設計工具所使用的相同架構(.NET Core)。 這也表示不再支援以 .design.dll 和 Microsoft.Windows.Design.Extensibility 為基礎的 WPF .NET Framework 控件擴充性模型。 適用於 .NET Framework 的新 WPF XAML 設計工具將提供與適用於 .NET 的 WPF XAML 設計工具相同的擴充性模型(.NET Core)。 如果您已經為 .NET (.NET Core) 建立了 .designtools.dll 擴充功能,則相同的擴充功能適用於適用於 .NET Framework 的新 WPF XAML 設計工具。 如需如何移轉至 WPF 平臺的新擴充性模型(.NET Framework 和 .NET Core)和 UWP 平臺的進一步資訊,請參閱下面的移轉連結。

請參閱 XAML 設計工具擴充性移轉