IVsProjectStartupServices Schnittstelle

Definition

Aktiviert Projekterweiterbarkeit von anderen Entwicklern.

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
Attribute

Hinweise

IVsProjectStartupServices ist eine optionale Schnittstelle, die es einem VSPackage eines Drittanbieters ermöglicht, eine Dienst-GUID zu registrieren, die ihr Projekt in Ihrer Projektdatei beibehalten wird, sodass Sie diese Informationen jedes Mal, wenn Das Projekt geladen wird, in Ihre Projektdatei und QueryService für diese GUID laden. Dadurch kann ein VSPackage eines Drittanbieters an dem Punkt verzögert geladen werden, an dem Ihr Projekt erneut geladen wird. Auf diese Weise vermeidet das VSPackage von Drittanbietern die Verwendung der jetzt veralteten Preload=1-Option, die zuvor in der Registrierung enthalten war. Das VSPackage stellt jedoch weiterhin sicher, dass es zum Zeitpunkt des Ladens des Projekts geladen wird.

Ihr Projekt muss nur aufrufen QueryService , indem es die Parameter (guidService, IID_IUnknown, &punk) übergeben. Es versucht nicht, eine Methode für den Dienst aufzurufen. Das VSPackage beim Laden kann dann die geladenen Projekte aufzählen und entsprechende Vorgänge ausführen (z. B. Das Einbinden von Projektereignissen).

Die IVsProjectStartupServices Schnittstelle kann auf folgende Weise aus einer Projekthierarchie abgerufen werden:

GetProperty(IVsProjectStartupServices, IVsProjectStartupServices...)

IVsProjectStartupServices wird hauptsächlich für die Erweiterbarkeit verwendet, wenn Sie einen Projekttyp erstellen, der von anderen Entwicklern erweiterbar ist.

Hinweise für Ausführende

Wird für implementiert IVsHierarchy , um Ihr Projekt von anderen Entwicklern erweiterbar zu machen.

Methoden

AddStartupService(Guid)

Fügt Drittanbieterdienst der Liste der Dienste hinzu, die gestartet werden, wenn das Projekt instanziiert wird und stellt sicher, dass alle Drittanbieterdienstleistungen gestartet werden.

GetStartupServiceEnum(IEnumProjectStartupServices)

Wird verwendet, um ein Drittanbieter-Dienstarrayelement nach GUID zu suchen.

RemoveStartupService(Guid)

Entfernt eine Dienst-ID-GUID aus der Liste der Drittanbieterdienstleistungen, die gestartet werden sollen, und gibt den Dienst frei, wenn er geladen wurde.

Gilt für: