IDebugEngineProgram2::WatchForExpressionEvaluationOnThread

Permite que la evaluación de expresiones (o no permita) se produzca en el subproceso determinado, incluso si el programa se ha detenido.

Sintaxis

int WatchForExpressionEvaluationOnThread( 
   IDebugProgram2       pOriginatingProgram,
   uint                  dwTid,
   uint                  dwEvalFlags,
   IDebugEventCallback2 pExprCallback,
   int                   fWatch
);

Parámetros

pOriginatingProgram
[in] Objeto IDebugProgram2 que representa el programa que está evaluando una expresión.

dwTid
[in] Especifica el identificador del subproceso.

dwEvalFlags
[in] Combinación de marcas de la enumeración EVALFLAGS que especifica cómo se va a realizar la evaluación.

pExprCallback
[in] Objeto IDebugEventCallback2 que se va a usar para enviar eventos de depuración que se producen durante la evaluación de expresiones.

fWatch
[in] Si no es cero (TRUE), permite la evaluación de expresiones en el subproceso identificado por dwTid; en caso contrario, cero (FALSE) no permite la evaluación de expresiones en ese subproceso.

Valor devuelto

Si la operación se realiza correctamente, devuelve S_OK; de lo contrario, devuelve un código de error.

Comentarios

Cuando el administrador de depuración de sesión (SDM) solicita un programa, identificado por el pOriginatingProgram parámetro , para evaluar una expresión, notifica a todos los demás programas adjuntos llamando a este método.

La evaluación de expresiones en un programa puede hacer que el código se ejecute en otro, debido a la evaluación o evaluación de funciones de cualquier IDispatch propiedad. Por este motivo, este método permite que la evaluación de expresiones se ejecute y complete aunque el subproceso se pueda detener en este programa.

Consulte también