Compartir a través de


EXT_ANALYSIS_PLUGIN función de devolución de llamada (extsfns.h)

Al escribir un de extensión de análisis de, debe implementar un EXT_ANALYSIS_PLUGIN exportado como (_EFN_Analyze). Cuando se ejecuta el comando !analyze depurador, llama a la _EFN_Analyze en cada fase para que pueda participar en el análisis.

Se requiere la convención de llamada de WINAPI (__stdcall). Ninguna excepción (noexcept) debe dejar la función.

Sintaxis

EXT_ANALYSIS_PLUGIN ExtAnalysisPlugin;

HRESULT ExtAnalysisPlugin(
  [in] PDEBUG_CLIENT4 Client,
  [in] FA_EXTENSION_PLUGIN_PHASE CallPhase,
  [in] PDEBUG_FAILURE_ANALYSIS2 pAnalysis
)
{...}

Parámetros

[in] Client

Puntero a una interfaz IDebugClient4. Use esta interfaz para acceder al depurador. Use QueryInterface para tener acceso a otras interfaces del depurador, como legacy (IDebug*), Debug Host (IDebugHost*), Data Model (IDataModel*), etc., interfaces.

[in] CallPhase

Valor de la enumeración FA_EXTENSION_PLUGIN_PHASE que especifica qué fase del análisis está actualmente en curso. Las fases de análisis incluyen la inicialización, el análisis de pila, el pre-bucketing y el post-bucketing.

[in] pAnalysis

Puntero a una interfaz IDebugFailureAnalysis2. Use esta interfaz para obtener o establecer propiedades del análisis. Use QueryInterface para acceder a otras interfaces !analyze.

Valor devuelto

S_OK: se realizó un cambio.

S_FALSE: no se realizaron cambios.

E_*: se produjo un error. !analyze notificará el error a través de Clave/Valor mediante una cadena de clave de Plugin.Exception."Phase"."DLL" y Cadena de valor de HRESULT en formato "0x%08x".

Requisitos

Requisito Valor
de la plataforma de destino de Escritorio
encabezado de extsfns.h

Consulte también

escribir la extensión custom Analysis Debugger

escribir un complemento de extensión de análisis para ampliar !analyze