下列 API 已從 Visual Studio SDK 中移除,無法再使用,如需如何更新程式碼的詳細資訊,請參閱每個章節。
IVsImageServiceIBlockContextProviderIToolTipProvider-
IVsTextScanner和IVsFullTextScanner - 異步解決方案載入和輕量型解決方案載入
IVsDummyMicrosoft.VisualStudio.Shell.Task- 開放原始碼安全
- .NET Framework 的新 WPF XAML 設計工具
IVsImageService
Visual Studio 2022 中正在移除 IVsImageService。
IVsImageService 的所有用戶都應該改為移至 IVsImageService2。
建議的更新
如果您使用 IVsImageService,請以對 IVsImageService2上對等方法的呼叫取代對其方法的呼叫:
| IVsImageService 方法 | 對等 IVsImageService2 方法 |
|---|---|
| 加 | AddCustomImage |
| 獲取 | GetImage |
| GetIconForFile | GetImageMonikerForFile |
| GetIconForFileEx | GetImageMonikerForFile |
IVsImageService的 Add 和 Get 方法會依名稱參考自定義映像(字串),而不是 Moniker。 最好將程式代碼切換為只使用Moniker來參考自定義影像,但如果這證明不切實際 IVsImageService2 有幾個方法可讓您將名稱與Moniker產生關聯:
TryAssociateNameWithMonikerGetImageMonikerForName
使用這兩種方法,您可以依名稱繼續參考影像。
IBlockContextProvider
Visual Studio 2022 中會移除 IBlockContextProvider 和相關類型。
IBlockContextProvider 的所有用戶都應該改為移至 IStructureContextSourceProvider。
建議的更新
IBlockContextProvider 的用戶應該改用 IStructureContextSourceProvider (檔)。
IToolTipProvider
Visual Studio 2022 中會移除 IToolTipProvider 和相關類型。
IToolTipProvider 的所有用戶都應該改為移至 IToolTipService。
建議的更新
IToolTipProvider 的用戶應該改用 IToolTipService (檔)。
IVsTextScanner 和 IVsFullTextScanner
Visual Studio 2022 中正在移除 IVsTextScanner 和 IVsFullTextScanner。
IVsTextScanner 或 IVsFullTextScanner 的所有使用者都應該改為移至 IVsTextLines。
建議的更新
IVsTextScanner 或 IVsFullTextScanner 的使用者應該改用 IVsTextLines(檔案。
異步解決方案載入和輕量型解決方案載入
Visual Studio 2022 已移除異步解決方案載入 (ASL) 和輕量型解決方案載入 (LSL) 功能,例如正在移除下列方法:
介面
-
IVsSolution4- 方法:IsBackgroundSolutionLoadEnabled、EnsureProjectsAreLoaded、EnsureProjectIsLoaded、EnsureSolutionIsLoaded -
IVsSolutionLoadEvents- 方法:OnBeforeBackgroundSolutionLoadBegins、OnQueryBackgroundLoadProjectBatch、OnBeforeLoadProjectBatch、OnAfterLoadProjectBatch -
IVsSolutionLoadManagerSupport- 整個介面 -
IVsSolutionLoadManager- 整個介面 -
IVsSccManager3- 整個介面 -
IVsAsynchronousProjectCreate- 整個介面 -
IVsAsynchronousProjectCreateUI- 整個介面
列舉、屬性和UI內容
-
VSHPROPID_ProjectUnloadStatus- 列舉:UNLOADSTATUS_LoadPendingIfNeeded VSHPROPID_DemandLoadDependenciesVSHPROPID_IsProjectProvisionedVSPROPID_IsInBackgroundIdleLoadProjectBatchVSPROPID_IsInSyncDemandLoadProjectBatchVSPROPID_ActiveSolutionLoadManagerUICONTEXT_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 設計工具擴充性移轉。