IVsProjectStartupServices Interfaz
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
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. |