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.