IVsCfgProviderEventsHelper Arabirim

Tanım

Bir yardımcı olarak kullanılacak projeler tarafından çağrılan ortam tarafından uygulanır IVsCfgProvider2 .

public interface class IVsCfgProviderEventsHelper
public interface class IVsCfgProviderEventsHelper
__interface IVsCfgProviderEventsHelper
[System.Runtime.InteropServices.Guid("0D6D480C-894F-48E4-98D2-E0A7127750E4")]
[System.Runtime.InteropServices.InterfaceType(1)]
public interface IVsCfgProviderEventsHelper
[<System.Runtime.InteropServices.Guid("0D6D480C-894F-48E4-98D2-E0A7127750E4")>]
[<System.Runtime.InteropServices.InterfaceType(1)>]
type IVsCfgProviderEventsHelper = interface
Public Interface IVsCfgProviderEventsHelper
Öznitelikler

Açıklamalar

IVsCfgProvider , kuruluşunuz için platformları desteketmenize ve yapılandırmanızı düzenlemenize olanak tanır. Projeniz uygularsa IVsCfgProvider2 , AdviseCfgProviderEvents UnadviseCfgProviderEvents tarafından tetiklenen yapılandırma olaylarını dinleyen istemcilerle havuza almak için ve yöntemlerini de uygulamalısınız IVsCfgProviderEvents .

Projenizin yapılandırma olaylarını dinleyen bir istemci dizisinin saklanması projenizin sorumluluğundadır. Ayrıca, her bir yapılandırma olayları tetiklemenin her bir dinleyicisine bildirimde bulunmak için bir mekanizmanız gerekir. bu nedenle, dizi boyunca döngü yaptığınız ve istenen olayları başlatmak için her birini çağıran bir işleminiz olması gerekir.

IVsCfgProviderEventsHelper , proje için dinleyici dizisini yöneterek bu işlevselliği sizin için sağlayan bir yardımcı nesnedir ve daha sonra, IVsCfgProvider2 olayları doğru zamanlarda, listedeki herkese doğru şekilde tetikleyerek yardımcı olur. Yapılandırma sağlayıcısı olarak bir yapılandırma eklediğinizde, sildiğinizde veya yeniden adlandırdığınızda ve projenizin içindeki diğer nesneleri ve olayların ortamını bilgilendirmek için yardımcı 'yı çağırdığınızda yapılandırma sağlayıcısı olarak bilirsiniz. Bu nedenle, bu olayları doğru zamanda tetiklemesi gerekir. Bu yardımcı nesneyi kullanarak, yalnızca yeni bir istemcinin, yapılandırma olaylarını yardımcı olacak şekilde dinlediğini veya bir istemcinin diziden kaldırılabileceği gerçeğini geçirmeniz gerekir. Daha sonra, bir olay tetiklendiğinde, tüm dinleyicilerini bildirme sorumluluğunu ele alacak şekilde tüm yapmanız gereken, etkinliğin yardımcı nesnesine bir bildirimini iletmektir.

Yardımcı nesnesini kullanarak, ' a yönelik bir çağrıyı AdviseCfgProviderEvents iki satırlık bir çağrıya dönüştürebilirsiniz AdviseCfgProviderEvents , zaten mevcut değilse yardım nesnesini örnekleyebilir ve bir yapılandırma olayı hakkında bildirim almak için bir dinleyici nesneleri dizisi oluşturmak için yardımcı örneğini kullanabilirsiniz.

IVsCfgProviderEventsHelper , CreateInstance metodu çağırarak ILocalRegistry ve geçirerek oluşturulur CLSID_VsCfgProviderEventsHelper . Bir örneği başlatıldıktan sonra IVsCfgProviderEventsHelper , AdviseCfgProviderEvents UnadviseCfgProviderEvents olaylara yönelik dinleyicileri ekler ve bu diziye kaldırır.

Benzer şekilde, ' nin uygulanması, UnadviseCfgProviderEvents UnadviseCfgProviderEvents dinleyiciyi dizi dışına almak için yardımcı yönteme geçer.

Ardından, yapılandırma olayları tetiklendiğinde, bildirim havuzu olaylarının uygulanması, IVsCfgProviderEvents IVsCfgProviderEventsHelper dizideki tüm dinleyicilerine bildirimde bulunan uygun bildirim yöntemine bir satırlık bir çağrı olur. Bu şekilde, bir yapılandırma adının eklendiğini bir bildirim geçirebilirsiniz, örneğin, öğesinden, AddCfgsOfCfgName ile, OnCfgNameAdded NotifyOnCfgNameAdded olayın dinleyicilerinin tamamına bildirilmekten sorumlu olacaktır.

Tabii ki, bu IVsCfgProvider2 işlevselliği doğrudan uygulayabilir ve bu havuz dizisini yönetebilir, ancak yardım öneri, gözeme ve bildirim olaylarını uygulamak için bir satır çağrısı kullanarak daha kolay hale getirir.

Uygulayanlara Notlar

Yapılandırma ile ilgili olayların tetikme bildirimini sağlamak için ortamı tarafından uygulanır.

Arayanlara Notlar

Uygulamasının uygulanması için yardımcı olarak bu nesneyi kullanan projeler tarafından çağırılır IVsCfgProvider2 , olayları dinleyen bir istemci dizisi tutar ve bu istemcilere yapılandırma olaylarının bildirimlerini tetikler.

Yöntemler

AdviseCfgProviderEvents(IVsCfgProviderEvents, UInt32)

Diziye yapılandırma olayları için dinleyicileri eklemek üzere çağırılır.

NotifyOnCfgNameAdded(String)

Dizideki tüm dinleyiciler için yapılandırma adı eklenen olayları havuza alma başlatıldı.

NotifyOnCfgNameDeleted(String)

Dizideki tüm dinleyicilerinin yapılandırma adı silindi olayları için tetiklendi.

NotifyOnCfgNameRenamed(String, String)

Dizideki tüm dinleyicilerinin yapılandırma adı yeniden adlandırılmış olaylarını havuza almak için harekete geçirildi.

NotifyOnPlatformNameAdded(String)

Dizide, dizideki tüm dinleyiciler için platform adı eklenen olaylar için harekete geçirildi.

NotifyOnPlatformNameDeleted(String)

Dizide bulunan tüm dinleyicilerinin havuz platformu adı silinen olayları için harekete geçirildi.

UnadviseCfgProviderEvents(UInt32)

Yapılandırma olayları için dinleyicileri dizisinden dinleyicileri kaldırmak için çağırılır.

Şunlara uygulanır