Compartilhar via


APIs removidas do SDK do Visual Studio 2022

As APIs abaixo foram removidas do SDK do Visual Studio e não podem mais ser usadas, consulte cada seção para obter detalhes sobre como atualizar seu código.

IVsImageService

O IVsImageService está sendo removido no Visual Studio 2022. Todos os usuários de IVsImageService devem mudar para IVsImageService2 em vez disso.

Se você usar IVsImageService, substitua chamadas para seus métodos por chamadas para métodos equivalentes em IVsImageService2:

Método IVsImageService Método IVsImageService2 equivalente
Add Adicionar Imagem Personalizada
Obter GetImage
GetIconForFile GetImageMonikerForFile
GetIconForFileEx GetImageMonikerForFile

IVsImageServiceOs métodos Add e Get referem-se a imagens personalizadas por nome (uma cadeia de caracteres), em vez de um moniker. É preferível que você alterne seu código para usar apenas monikers para se referir a imagens personalizadas, mas se isso se mostrar impraticável IVsImageService2 , tem alguns métodos que permitirão associar um nome a um moniker:

  • TryAssociateNameWithMoniker
  • GetImageMonikerForName

Usando esses dois métodos, você pode continuar a fazer referência a imagens por nome.

IBlockContextProvider

Os IBlockContextProvider tipos relacionados e estão sendo removidos no Visual Studio 2022. Todos os usuários de IBlockContextProvider devem mudar para IStructureContextSourceProvider em vez disso.

Os usuários de IBlockContextProvider devem usar IStructureContextSourceProvider em vez disso (documentação).

IToolTipProvider

Os IToolTipProvider tipos relacionados e estão sendo removidos no Visual Studio 2022. Todos os usuários de IToolTipProvider devem mudar para IToolTipService em vez disso.

Os usuários de IToolTipProvider devem usar IToolTipService em vez disso (documentação).

IVsTextScanner e IVsFullTextScanner

O IVsTextScanner e IVsFullTextScanner estão sendo removidos no Visual Studio 2022. Todos os usuários de IVsTextScanner ou IVsFullTextScanner devem mudar para IVsTextLines em vez disso.

Os usuários de IVsTextScanner ou devem usar IVsTextLines em vez disso (documentaçãoIVsFullTextScanner.

Carga de solução assíncrona e carga de solução leve

Os recursos ASL (carga de solução assíncrona) e LSL (carga de solução leve) estão sendo removidos no Visual Studio 2022, pois os seguintes métodos estão sendo removidos:

Interfaces

  • IVsSolution4 - Métodos: IsBackgroundSolutionLoadEnabled, EnsureProjectsAreLoaded, EnsureProjectIsLoaded, EnsureSolutionIsLoaded
  • IVsSolutionLoadEvents - Métodos: OnBeforeBackgroundSolutionLoadBegins, OnQueryBackgroundLoadProjectBatch, OnBeforeLoadProjectBatch, OnAfterLoadProjectBatch
  • IVsSolutionLoadManagerSupport - Interface inteira
  • IVsSolutionLoadManager - Interface inteira
  • IVsSccManager3 - Interface inteira
  • IVsAsynchronousProjectCreate - Interface inteira
  • IVsAsynchronousProjectCreateUI - Interface inteira

Enumerações, propriedades e contextos de interface do usuário

  • VSHPROPID_ProjectUnloadStatus - Enumeração: UNLOADSTATUS_LoadPendingIfNeeded
  • VSHPROPID_DemandLoadDependencies
  • VSHPROPID_IsProjectProvisioned
  • VSPROPID_IsInBackgroundIdleLoadProjectBatch
  • VSPROPID_IsInSyncDemandLoadProjectBatch
  • VSPROPID_ActiveSolutionLoadManager
  • UICONTEXT_BackgroundProjectLoad

Nenhum.

IVsManequim

O IVsDummy está sendo removido no Visual Studio 2022 e não será substituído.

Nenhum. Mas, não deve ter impacto, pois a API não fez nada.

Microsoft.VisualStudio.Shell.Task

A Microsoft.VisualStudio.Shell.Task classe foi renomeada para Microsoft.VisualStudio.Shell.TaskListItem não entrar em conflito com a classe muito popular System.Threading.Tasks.Task .

Abrir a partir do código-fonte seguro

O suporte para abrir uma solução do código-fonte seguro está sendo removido, dessa forma, os seguintes métodos, eventos e constantes estão sendo removidos.

Interfaces

  • IVsSCCProvider3 - Interface inteira

Nenhum.

Novo Designer XAML do WPF para .NET Framework

O atual Designer XAML do WPF para .NET Framework foi preterido e será substituído por um novo Designer XAML do WPF para .NET Framework, com base na mesma arquitetura usada para o Designer XAML do WPF para .NET (.NET Core). Isso também significa que não há mais suporte para o modelo de extensibilidade de controle do WPF .NET Framework baseado em .design.dll e Microsoft.Windows.Design.Extensibility. O novo Designer XAML do WPF para .NET Framework fornecerá o mesmo modelo de extensibilidade que o Designer XAML do WPF para .NET (.NET Core). Se você já criou uma extensão .designtools.dll para .NET (.NET Core), essa mesma extensão funcionará para o novo Designer XAML do WPF para .NET Framework. Consulte o link de migração abaixo para obter mais informações sobre como migrar para o novo modelo de extensibilidade para plataformas WPF (.NET Framework e .NET Core) e plataformas UWP no futuro.

Consulte Migração de extensibilidade do designer XAML.