Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Geçerli özel durumu kesmek istediğinde, geçerli yığın çerçevesinde hata ayıklayıcı tarafından çağrılır.
Sözdizimi
Parametreler
dwFlags
[in] Farklı eylemleri belirtir. Şu anda yalnızca INTERCEPT_EXCEPTION_ACTION değeri IEA_INTERCEPT desteklenir ve belirtilmelidir.
pqwCookie
[out] Belirli bir özel durumu tanımlayan benzersiz değer.
İade Değeri
Başarılı olursa, S_OK döndürür; aksi takdirde bir hata kodu döndürür.
En yaygın hata dönüşleri aşağıdadır.
| Hata | Açıklama |
|---|---|
E_EXCEPTION_CANNOT_BE_INTERCEPTED |
Geçerli özel durum kesilemez. |
E_EXCEPTION_CANNOT_UNWIND_ABOVE_CALLBACK |
Geçerli yürütme çerçevesi henüz bir işleyici için aranmadı. |
E_INTERCEPT_CURRENT_EXCEPTION_NOT_SUPPORTED |
Bu yöntem bu çerçeve için desteklenmiyor. |
Açıklamalar
Özel durum oluşturulduğunda, hata ayıklayıcı özel durum işleme işlemi sırasında önemli noktalarda çalışma zamanından denetim elde eder. Bu önemli anlarda hata ayıklayıcı geçerli yığın çerçevesine çerçevenin özel duruma müdahale etmek isteyip istemediğini sorabilir. Bu şekilde, bir yığın çerçevesi özel durum işleyicisi (örneğin, program kodunda try/catch bloğu) olmasa bile, kesişen bir özel durum temelde bir yığın çerçevesi için anında özel durum işleyicisi olur.
Hata ayıklayıcısı özel durumun kesilmesi gerekip gerekmediğini öğrenmek istediğinde, geçerli yığın çerçevesi nesnesinde bu yöntemi çağırır. Bu yöntem, özel durumun tüm ayrıntılarını işlemekle sorumludur. IDebugStackFrame3 arabirimi uygulanmadıysa veya InterceptStackException yöntem herhangi bir hata döndürüyorsa, hata ayıklayıcı özel durumu normal şekilde işlemeye devam eder.
Dekont
Özel durumlar yalnızca yönetilen kodda, yani hata ayıklanan program .NET çalışma süresi altında çalışırken kesilebilir. Tabii ki, üçüncü taraf dil uygulayıcıları tercih ederlerse kendi hata ayıklama altyapılarında uygulayabilirler InterceptStackException .
Kesme işlemi tamamlandıktan sonra bir IDebugInterceptExceptionCompleteEvent2 sinyali görüntülenir.