Condividi tramite


IVsProjectStartupServices Interfaccia

Definizione

Abilita l'estensibilità di progetti da parte di altri sviluppatori.

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
Attributi

Commenti

IVsProjectStartupServices è un'interfaccia facoltativa che consente a un VSPackage di terze parti di registrare un GUID del servizio che il progetto mantiene nel file di progetto in modo che ogni volta che il progetto viene caricato, le informazioni vengono caricate nel file di progetto e QueryService per tale GUID. In questo modo, un VSPackage di terze parti può essere caricato in ritardo nel momento in cui il progetto viene caricato nuovamente. In questo modo, il VSPackage di terze parti evita di usare l'opzione preload=1 obsoleta in precedenza nel Registro di sistema. Tuttavia, il VSPackage continua a garantire che venga caricato al momento del caricamento del progetto.

Il progetto deve solo chiamare QueryService i parametri (guidService, IID_IUnknown, &punk); non tenta di chiamare un metodo nel servizio. Il VSPackage al momento del caricamento può quindi enumerare i progetti caricati ed eseguire operazioni appropriate , ad esempio associare gli eventi del progetto.

L'interfaccia IVsProjectStartupServices può essere recuperata da una gerarchia di progetto nel modo seguente:

GetProperty(IVsProjectStartupServices, IVsProjectStartupServices...)

IVsProjectStartupServices viene usato principalmente per l'estendibilità se si crea un tipo di progetto estendibile da altri sviluppatori.

Note per gli implementatori

Implementato su IVsHierarchy per rendere il progetto estendibile da altri sviluppatori.

Metodi

AddStartupService(Guid)

Aggiunge il servizio di terze parti all'elenco di servizi da avviare quando viene creata un'istanza del progetto e verifica che tutti i servizi di terze parti vengano avviati.

GetStartupServiceEnum(IEnumProjectStartupServices)

Utilizzato per individuare un elemento matrice di terze parti del servizio in base al GUID.

RemoveStartupService(Guid)

Rimuove un GUID dell'ID di servizio dall'elenco dei servizi di terze parti da avviare e rilascia il servizio se è stato caricato.

Si applica a