Share via


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(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
屬性

備註

IVsProjectStartupServices 是選擇性的介面,可讓第三方 VSPackage 註冊專案保存至專案檔的服務 GUID,如此一來,每次專案載入時,您就會將該資訊載入項目檔,以及 QueryService 該 GUID 的服務 GUID。 這可讓第三方 VSPackage 在專案再次載入時延遲載入。 如此一來,第三方 VSPackage 會避免使用先前在登錄中過時的 Preload=1 選項。 不過,VSPackage 會繼續確保載入專案時載入。

您的專案只需要呼叫 QueryService 將參數傳遞 (、IID_IUnknown guidService、&) punk ;它不會嘗試在服務上呼叫方法。 載入時 VSPackage 可以接著列舉載入的專案,並執行適當的作業 (例如,連結至專案事件) 。

IVsProjectStartupServices介面可以透過下列方式從項目階層擷取:

GetProperty (IVsProjectStartupServicesIVsProjectStartupServices...)

IVsProjectStartupServices 如果您建立其他開發人員可擴充的項目類型,則主要用於擴充性。

給實施者的注意事項

實作 在 IVsHierarchy 上,讓您的專案可供其他開發人員延伸。

方法

AddStartupService(Guid)

將第三方服務新增至專案具現化時要啟動的服務清單,並確保所有第三方服務都已啟動。

GetStartupServiceEnum(IEnumProjectStartupServices)

用來依 GUID 查閱第三方服務數位專案。

RemoveStartupService(Guid)

從要啟動的第三方服務清單中移除服務標識元 GUID,並在已載入服務時釋出服務。

適用於