Partilhar via


IVsProjectStartupServices Interface

Definição

Habilita a extensibilidade do projeto por outros desenvolvedores.

public interface class IVsProjectStartupServices
public interface class IVsProjectStartupServices
__interface IVsProjectStartupServices
[System.Runtime.InteropServices.Guid("82780F79-A3ED-4B7F-90C0-5FEE14CBB53E")]
[System.Runtime.InteropServices.InterfaceType(1)]
public interface IVsProjectStartupServices
[System.Runtime.InteropServices.Guid("82780F79-A3ED-4B7F-90C0-5FEE14CBB53E")]
[System.Runtime.InteropServices.InterfaceType(System.Runtime.InteropServices.ComInterfaceType.InterfaceIsIUnknown)]
public interface IVsProjectStartupServices
[<System.Runtime.InteropServices.Guid("82780F79-A3ED-4B7F-90C0-5FEE14CBB53E")>]
[<System.Runtime.InteropServices.InterfaceType(1)>]
type IVsProjectStartupServices = interface
[<System.Runtime.InteropServices.Guid("82780F79-A3ED-4B7F-90C0-5FEE14CBB53E")>]
[<System.Runtime.InteropServices.InterfaceType(System.Runtime.InteropServices.ComInterfaceType.InterfaceIsIUnknown)>]
type IVsProjectStartupServices = interface
Public Interface IVsProjectStartupServices
Atributos

Comentários

IVsProjectStartupServices é uma interface opcional que permite que um VSPackage de terceiros registre um GUID de serviço que seu projeto persiste no arquivo de projeto para que, sempre que o projeto for carregado, carregue essas informações em seu arquivo de projeto e QueryService para esse GUID. Isso permite que um VSPackage de terceiros seja carregado com atraso no ponto em que o projeto é carregado novamente. Dessa forma, o VSPackage de terceiros evita usar a opção preload=1 agora obsoleta anteriormente no registro. No entanto, o VSPackage continua a garantir que ele seja carregado no momento em que o projeto é carregado.

Seu projeto só precisa chamá-lo QueryService passando os parâmetros (guidService, IID_IUnknown, &punk); ele não faz nenhuma tentativa de chamar um método no serviço. O VSPackage ao ser carregado pode enumerar os projetos carregados e executar operações apropriadas (por exemplo, conectar-se a eventos de projeto).

A IVsProjectStartupServices interface pode ser recuperada de uma hierarquia de projeto da seguinte maneira:

GetProperty(IVsProjectStartupServices, IVsProjectStartupServices...)

IVsProjectStartupServices será usado principalmente para extensibilidade se você estiver criando um tipo de projeto extensível por outros desenvolvedores.

Notas aos Implementadores

Implementado no IVsHierarchy para tornar seu projeto extensível por outros desenvolvedores.

Métodos

AddStartupService(Guid)

Adiciona serviço de terceiros à lista de serviços a serem iniciados quando o projeto for instanciado e garante que todos os serviços de terceiros sejam iniciados.

GetStartupServiceEnum(IEnumProjectStartupServices)

Usado para pesquisar um elemento de matriz de serviço de terceiros por GUID.

RemoveStartupService(Guid)

Remove um GUID de ID de serviço da lista de serviços de terceiros a serem iniciados e libera o serviço se ele tiver sido carregado.

Aplica-se a