MDAInfo — Struktura
Zawiera szczegółowe informacje o Event_MDAFired
zdarzeniu, które wyzwala tworzenie zarządzanego asystenta debugowania (MDA).
Składnia
typedef struct _MDAInfo {
LPCWSTR lpMDACaption;
LPCWSTR lpMDAMessage
} MDAInfo;
Elementy członkowskie
Członek | Opis |
---|---|
lpMDACaption |
Tytuł bieżącego rozwiązania MDA. Tytuł opisuje rodzaj błędu, który wyzwolił Event_MDAFired zdarzenie. |
lpMDAMessage |
Komunikat wyjściowy dostarczony przez bieżące rozwiązanie MDA. |
Uwagi
Zarządzane asystenty debugowania (MDA) to pomoce debugowania, które działają w połączeniu ze środowiskiem uruchomieniowym języka wspólnego (CLR) w celu wykonywania zadań, takich jak identyfikowanie nieprawidłowych warunków w aplikatorze wykonywania środowiska uruchomieniowego lub usuwanie dodatkowych informacji o stanie aparatu. MdA generuje komunikaty XML dotyczące zdarzeń, które w przeciwnym razie są trudne do pułapki. Są one szczególnie przydatne do debugowania przejść między zarządzanym i niezarządzany kodem.
Środowisko uruchomieniowe wykonuje następujące kroki, gdy zostanie wyzwolone zdarzenie, które wyzwala tworzenie rozwiązania MDA:
Jeśli host nie zarejestrował wystąpienia IActionOnCLREvent przez wywołanie klasy ICLROnEventManager::RegisterActionOnEvent , aby otrzymywać powiadomienia o
Event_MDAFired
zdarzeniu, środowisko uruchomieniowe będzie kontynuowane zgodnie z jego domyślnym zachowaniem, które nie jest hostowane.Jeśli host zarejestrował procedurę obsługi dla tego zdarzenia, środowisko uruchomieniowe sprawdza, czy debuger jest dołączony do procesu. Jeśli tak jest, środowisko uruchomieniowe dzieli się na debuger. Po kontynuowaniu debugera wywołuje on hosta. Jeśli debuger nie jest dołączony, środowisko uruchomieniowe wywołuje
IActionOnCLREvent::OnEvent
i przekazuje wskaźnik doMDAInfo
wystąpienia jako parametrudata
.
Host może aktywować usługi MDA i otrzymywać powiadomienia po aktywowaniu usługi MDA. Dzięki temu host może zastąpić domyślne zachowanie i przerwać zarządzany wątek, który wywołał zdarzenie, aby zapobiec uszkodzeniu stanu procesu. Aby uzyskać więcej informacji na temat korzystania z usługi MDA, zobacz Diagnozowanie błędów za pomocą asystentów debugowania zarządzanego.
Wymagania
Platformy: Zobacz Wymagania systemowe.
Nagłówka: MSCorEE.idl
Biblioteki: Uwzględnione jako zasób w MSCorEE.dll
.NET Framework wersje: dostępne od wersji 2.0