Compartir a través de


IVsProjectStartupServices Interfaz

Definición

Habilita la extensibilidad de proyectos por otros desarrolladores.

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

Comentarios

IVsProjectStartupServices es una interfaz opcional que permite a un VSPackage de terceros registrar un GUID de servicio que el proyecto conserva en el archivo del proyecto para que cada vez que se cargue el proyecto, cargue esa información en el archivo del proyecto y QueryService para ese GUID. Esto permite que un VSPackage de terceros se cargue de nuevo en el momento en que el proyecto se vuelva a cargar. De este modo, VSPackage de terceros evita usar la opción Preload=1 obsoleta que anteriormente se encontraba en el registro. Sin embargo, VSPackage sigue garantizando que se carga en el momento en que se carga el proyecto.

El proyecto solo necesita llamar a QueryService pasar los parámetros (guidService, IID_IUnknown, &punk); no intenta llamar a un método en el servicio. El VSPackage al cargarse puede enumerar los proyectos cargados y realizar las operaciones adecuadas (por ejemplo, enlazar a eventos de proyecto).

La IVsProjectStartupServices interfaz se puede recuperar de una jerarquía de proyectos de la siguiente manera:

GetProperty(IVsProjectStartupServices, IVsProjectStartupServices...)

IVsProjectStartupServices se usa principalmente para la extensibilidad si va a crear un tipo de proyecto extensible por otros desarrolladores.

Notas a los implementadores

Implementado en IVsHierarchy para que el proyecto sea extensible por otros desarrolladores.

Métodos

AddStartupService(Guid)

Agrega un servicio de terceros a la lista de servicios que se iniciarán cuando se creen instancias del proyecto y se asegura de que todos los servicios de terceros están iniciados.

GetStartupServiceEnum(IEnumProjectStartupServices)

Se usa para buscar un elemento de matriz de servicio de terceros por GUID.

RemoveStartupService(Guid)

Quita un GUID de identificador de servicio de la lista de servicios de terceros que se van a iniciar y libera el servicio si se ha cargado.

Se aplica a