IVsProjectStartupServices Интерфейс

Определение

Обеспечивает расширяемость проектов другими разработчиками.

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(1)>]
type IVsProjectStartupServices = interface
Public Interface IVsProjectStartupServices
Атрибуты

Комментарии

IVsProjectStartupServices — Это необязательный интерфейс, позволяющий пакету VSPackage стороннего производителя зарегистрировать идентификатор GUID службы, который сохраняется в файле проекта, чтобы каждый раз при загрузке проекта загрузить эти сведения в файл проекта и QueryService для этого GUID. Это позволяет загружать пакет VSPackage стороннего производителя в момент, когда проект снова загружается. Таким образом, пакет VSPackage стороннего производителя позволяет избежать использования устаревшего параметра предварительной загрузки = 1, ранее нашедшихся в реестре. Однако пакет VSPackage продолжит загружаться во время загрузки проекта.

Вашему проекту нужен только метод QueryService , передающий ему параметры ( guidService , IID_IUnknown, &punk ), не пытаясь вызывать метод в службе. После загрузки VSPackage можно перечислить загруженные проекты и выполнить соответствующие операции (например, подключить к событиям проекта).

IVsProjectStartupServicesИнтерфейс можно извлечь из иерархии проекта следующим образом:

GetProperty(Ивспрожектстартупсервицес, ивспрожектстартупсервицес...)

IVsProjectStartupServices используется в основном для расширения, если создается тип проекта, расширяемый другими разработчиками.

Примечания для тех, кто реализует этот метод

Реализован в, IVsHierarchy чтобы сделать проект расширяемым другими разработчиками.

Методы

AddStartupService(Guid)

Добавляет стороннюю службу в список служб, которые должны запускаться при создании экземпляра проекта и обеспечивает запуск всех сторонних служб.

GetStartupServiceEnum(IEnumProjectStartupServices)

Используется для поиска элемента массива службы стороннего производителя по GUID.

RemoveStartupService(Guid)

Удаляет идентификатор GUID идентификатора службы из списка запускаемых сторонних служб и освобождает службу, если та была загружена.

Применяется к