Hata Ayıklama Sağlayıcıları
Bir uygulama içinde çalışanayrılmış sağlayıcılardışında, sağlayıcılar Svchost.exe ile değil, Wmiprvse.exe bir işlemde Winmgmt.exe bir işlemle yüklenir. Daha fazla bilgi için bkz. Sağlayıcı Barındırma ve Güvenlik.
Bir kesme noktasında durdurulduğunda, Visual Studio hata ayıklayıcısı genellikle paylaşılan konak Wmiprvse.exeolan sağlayıcı ana bilgisayar işleminin tamamını donduruyor. Bu, WMI Sunucu Gezgini uzantısı dahil olmak üzere bu işlemde barındırılan diğer bileşenlerin çalışmasını engeller. Sağlayıcıya çağrıda bulunan istemci uygulamaları da engellenir. Sağlayıcı WMI hizmet işlemine (Winmgmt.exe) yüklendiğinden, Windows 2000 ve önceki sürümlerinde ortaya çıkan sorunlar daha kötüdür.
WMI Sunucu Gezgini'ni başka bir örnekte çalıştırırsanız Visual Studio IDE donmuyor ve kesme noktasını serbest bırakabiliyorsunuz. Geliştirme aşamasında sağlayıcınızı ayrı bir barındırma sürecinde çalıştırmanız önerilir, böylece bir kesme noktasında durdurulması yalnızca sağlayıcınızı barındıran işlemi dondurabilir. WMI'daki diğer işlevler, WMI Sunucu Gezgini ve diğer WMI tabanlı uygulamalar veya betikler için erişilebilir olmaya devam ediyor. Ayrıca, sağlayıcınız kilitlenirse, aynı konak işlemine yüklenen diğer sağlayıcıların çalışmasını etkilemez.
Sağlayıcınızı kendi ana bilgisayar işleminde çalıştırmak için sağlayıcı kaydını değiştirerek __Win32Provider.HostingModel özelliğini, MyProvider'ın sağlayıcınızı benzersiz bir şekilde tanımlayan herhangi bir dize olabileceği NetworkServiceHost:[MyProvider]
olarak ayarlayın. Örneğin, __Win32Provider.ClsId değerini kullanın. Sağlayıcınız göndermeye hazır olduğunda, __Win32Provider.HostingModelNetworkServiceHostgibi hedeflenen değere döndürin.
Sağlayıcı yüklemesinde hata ayıklamazsanız, sağlayıcınızı yüklemeye zorlamak için MSFT_Providers sınıfıLoad yöntemini çağırabilir, ardından DLL'nin yüklü olduğu Wmiprvse.exe işlemine ekleyebilir ve gerektiğinde hata ayıklayabilirsiniz.
İlgili konular