Aracılığıyla paylaş


Desteklenen olay türleri

Visual Studio hata ayıklaması şu anda aşağıdaki olay türlerini destekler:

  • Zaman uyumsuz olaylar

    Oturum hata ayıklama yöneticisine (SDM) ve IDE'ye hata ayıklanan uygulamanın durumunun değiştiğini bildirin. Bu olaylar SDM ve IDE'nin boş zamanlarında işlenir. Olay işlendikten sonra hata ayıklama altyapısına (DE) yanıt gönderilmez. IDebugOutputStringEvent2 ve IDebugMessageEvent2 arabirimleri zaman uyumsuz olaylara örnektir.

  • Zaman uyumlu olaylar

    Hata ayıklanan uygulamanın durumunun değiştiğini SDM ve IDE'ye bildirin. Bu olaylarla zaman uyumsuz olaylar arasındaki tek fark, ContinueFromSynchronousEvent yöntemiyle bir yanıt gönderilmesidir.

    Zaman uyumlu olay göndermek, IDE olayı aldıktan ve işledikten sonra DE'nizin işlemeye devam etmesi gerekiyorsa yararlıdır.

  • Zaman uyumlu durdurma olayları veya durdurma olayları

    Hata ayıklanan uygulamanın kodu yürütmeyi durdurduğunu SDM'ye ve IDE'ye bildirin. Event yöntemiyle bir durdurma olayı gönderdiğinizde, IDebugThread2 parametresi gereklidir. Durdurma olayları, aşağıdaki yöntemlerden birine yapılan bir çağrıyla devam eder:

    Uyarı

    Eşzamanlı olmayan durdurma işlemleri desteklenmez. Zaman uyumsuz bir durdurma olayı göndermek bir hatadır.

Tartışma

Olayların gerçek uygulaması DE'nizin tasarımına bağlıdır. Gönderilen her olayın türü, DE'yi tasarlarken ayarlanan özniteliklerine göre belirlenir. Örneğin, bir DE bir IDebugProgramCreateEvent2'yi zaman uyumsuz bir olay olarak gönderirken, diğeri bunu durdurma olayı olarak gönderebilir.

Aşağıdaki tablo, hangi program ve iş parçacığı parametrelerinin hangi olaylar ve olay türleri için gerekli olduğunu belirtir. Herhangi bir olay zaman uyumlu olabilir. Hiçbir olayın zaman uyumlu olması gerekmez.

Uyarı

Tüm olaylar için IDebugEngine2 arabirimi gereklidir.

Event IDebugProgram2 IDebugThread2 Olayları Durdurma
IDebugActivateDocumentEvent2 İzin verilir, ancak gerekli değildir İzin verilir, ancak gerekli değildir Hayı
IDebugBreakEvent2 Gerekli Gerekli Yes
IDebugBreakpointBoundEvent2 İzin verilir, ancak gerekli değildir İzin verilir, ancak gerekli değildir Hayı
IDebugBreakpointErrorEvent2 İzin verilir, ancak gerekli değildir İzin verilir, ancak gerekli değildir Hayı
IDebugBreakpointUnboundEvent2 İzin verilir, ancak gerekli değildir İzin verilir, ancak gerekli değildir Hayı
IDebugBreakpointEvent2 Gerekli Gerekli Yes
IDebugCanStopEvent2 Gerekli Gerekli Hayı
IDebugDocumentTextEvents2 İzin verilmiyor İzin verilmiyor Hayı
IDebugEngineCreateEvent2 İzin verilmiyor İzin verilmiyor Hayı
IDebugEntryPointEvent2 Gerekli Gerekli Yes
IDebugErrorEvent2 İzin verilir, ancak gerekli değildir İzin verilir, ancak gerekli değildir Olabilir
IDebugExceptionEvent2 Gerekli Gerekli Yes
IDebugExpressionEvaluationCompleteEvent2 İzin verilir, ancak gerekli değildir İzin verilir, ancak gerekli değildir Olabilir
IDebugInterceptExceptionCompleteEvent2 Gerekli Gerekli Yes
IDebugLoadCompleteEvent2 Gerekli Gerekli Yes
IDebugMessageEvent2 İzin verilir, ancak gerekli değildir İzin verilir, ancak gerekli değildir Olabilir
IDebugModuleLoadEvent2 Gerekli İzin verilir, ancak gerekli değildir Hayı
IDebugOutputStringEvent2 İzin verilir, ancak gerekli değildir İzin verilir, ancak gerekli değildir Hayı
IDebugProgramCreateEvent2 Gerekli İzin verilir, ancak gerekli değildir Hayı
IDebugProgramDestroyEvent2 Gerekli İzin verilir, ancak gerekli değildir Hayı
IDebugPropertyCreateEvent2 Gerekli İzin verilir, ancak gerekli değildir Hayı
IDebugPropertyDestroyEvent2 Gerekli İzin verilir, ancak gerekli değildir Hayı
IDebugReturnValueEvent2 İzin verilir, ancak gerekli değildir İzin verilir, ancak gerekli değildir Hayı
IDebugStopCompleteEvent2 Gerekli Gerekli Yes
IDebugStepCompleteEvent2 Gerekli Gerekli Yes
IDebugSymbolSearchEvent2 İzin verilir, ancak gerekli değildir İzin verilir, ancak gerekli değildir Hayı
IDebugThreadCreateEvent2 Gerekli Gerekli Hayı
IDebugThreadDestroyEvent2 Gerekli Gerekli Hayı
IDebugThreadNameChangedEvent2 İzin verilir, ancak gerekli değildir İzin verilir, ancak gerekli değildir Hayı

Ayrıca bakınız