IVsProjectStartupServices Arabirim

Tanım

Diğer geliştiriciler tarafından proje genişletilebilirliğini etkinleştirir.

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
Öznitelikler

Açıklamalar

IVsProjectStartupServices , bir üçüncü taraf VSPackage'ın projenizin proje dosyanızda kalıcı olduğu bir hizmet GUID'sini kaydetmesine izin veren isteğe bağlı bir arabirimdir. Böylece projeniz her yüklendiğinde bu bilgileri proje dosyanıza ve QueryService bu GUID için yüklersiniz. Bu, bir üçüncü taraf VSPackage'ın projenizin yeniden yüklendiği noktada yüklenmesini geciktirmenizi sağlar. Bu şekilde üçüncü taraf VSPackage, eski adıyla kayıt defterinde artık kullanılmayan Preload=1 seçeneğini kullanmaktan kaçınmaktadır. Ancak VSPackage, projeniz yüklenirken yüklendiğinden emin olmak için devam eder.

Projenizin yalnızca parametreleri (guidService, IID_IUnknown, &punk) geçirmesini çağırması QueryService gerekir; hizmette bir yöntem çağırma girişiminde bulunmaz. VsPackage yüklendikten sonra yüklenen projeleri numaralandırabilir ve uygun işlemleri gerçekleştirebilir (örneğin, proje olaylarına bağlanın).

Arabirim IVsProjectStartupServices bir proje hiyerarşisinden aşağıdaki şekilde alınabilir:

GetProperty(IVsProjectStartupServices, IVsProjectStartupServices...)

IVsProjectStartupServices , diğer geliştiriciler tarafından genişletilebilir bir proje türü oluşturuyorsanız öncelikli olarak genişletilebilirlik için kullanılır.

Uygulayanlara Notlar

Projenizi diğer geliştiriciler tarafından genişletilebilir hale getirmek için üzerinde IVsHierarchy uygulanır.

Yöntemler

AddStartupService(Guid)

Proje örneği oluşturulurken başlatılacak hizmetler listesine üçüncü taraf hizmeti ekler ve tüm üçüncü taraf hizmetlerinin başlatılmasını sağlar.

GetStartupServiceEnum(IEnumProjectStartupServices)

GUID'ye göre üçüncü taraf hizmet dizisi öğesini aramak için kullanılır.

RemoveStartupService(Guid)

Başlatılacak üçüncü taraf hizmetler listesinden bir hizmet kimliği GUID'sini kaldırır ve yüklendiyse hizmeti serbest bırakır.

Şunlara uygulanır