Udostępnij za pośrednictwem


IVsProjectStartupServices Interfejs

Definicja

Umożliwia rozszerzalność projektu przez innych deweloperów.

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
Atrybuty

Uwagi

IVsProjectStartupServices jest opcjonalnym interfejsem, który umożliwia innej firmie VSPackage zarejestrowanie identyfikatora GUID usługi, który projekt jest utrwalany w pliku projektu, dzięki czemu za każdym razem, gdy projekt zostanie załadowany, należy załadować te informacje do pliku projektu i QueryService dla tego identyfikatora GUID. Dzięki temu pakiet VSPackage innej firmy może zostać załadowany w momencie ponownego załadowania projektu. W ten sposób pakiet VSPackage innej firmy unika korzystania z przestarzałej opcji Preload=1 wcześniej w rejestrze. Jednak pakiet VSPackage nadal zapewnia, że jest ładowany w momencie załadowania projektu.

Projekt potrzebuje tylko wywołania QueryService przekazującego parametry (guidServiceIID_IUnknown, &punk); nie podejmuje próby wywołania metody w usłudze. Pakiet VSPackage po załadowaniu może następnie wyliczać załadowane projekty i wykonywać odpowiednie operacje (na przykład podłączyć się do zdarzeń projektu).

Interfejs IVsProjectStartupServices można pobrać z hierarchii projektu w następujący sposób:

GetProperty(IVsProjectStartupServices, IVsProjectStartupServices...)

IVsProjectStartupServices jest używany głównie do rozszerzalności, jeśli tworzysz typ projektu, który jest rozszerzalny przez innych deweloperów.

Uwagi dotyczące implementowania

Zaimplementowano element w IVsHierarchy celu rozszerzenia projektu przez innych deweloperów.

Metody

AddStartupService(Guid)

Dodaje usługę innej firmy do listy usług, które mają być uruchamiane po utworzeniu wystąpienia projektu i zapewnia, że wszystkie usługi innych firm są uruchamiane.

GetStartupServiceEnum(IEnumProjectStartupServices)

Służy do wyszukiwania elementu tablicy usług innej firmy według identyfikatora GUID.

RemoveStartupService(Guid)

Usuwa identyfikator GUID usługi z listy usług innych firm do uruchomienia i zwalnia usługę, jeśli została załadowana.

Dotyczy