IDebugControl3::Evaluate メソッド (dbgeng.h)

Evaluate メソッドは式を評価し、結果を返します。

構文

HRESULT Evaluate(
  [in]            PCSTR        Expression,
  [in]            ULONG        DesiredType,
  [out]           PDEBUG_VALUE Value,
  [out, optional] PULONG       RemainderIndex
);

パラメーター

[in] Expression

評価する式を指定します。

[in] DesiredType

目的の戻り値の型を指定します。 使用可能な値については、 DEBUG_VALUEで説明されています。DEBUG_VALUE_INVALIDを追加すると、戻り値の型が式の自然な型である必要があることを示します。

[out] Value

式の値を受け取ります。

[out, optional] RemainderIndex

評価で使用されていない式の最初の文字のインデックスを受け取ります。 RemainderIndexNULL の場合、この情報は返されません。

戻り値

このメソッドは、他のエラー値を返す場合もあります。 詳細については、「 戻り値 」を参照してください。

リターン コード 説明
S_OK
メソッドは正常に実行されました。
E_FAIL
式の評価中にエラーが発生しました。 たとえば、構文エラー、未定義の変数、または 0 個の例外による除算が発生しました。

注釈

式は、現在の 式エバリュエーターによって評価されます。 エンジンには複数の式エバリュエーターが含まれています。それぞれで異なる構文がサポートされています。 現在の式エバリュエーターは、 SetExpressionSyntax を使用して選択できます。

使用可能な式エバリュエーターとその構文の詳細については、「 数値式の構文」を参照してください。

式の評価中にエラーが発生し、E_FAIL返された場合は、 RemainderIndex 変数を使用して、式内のエラーが発生したおおよその場所を特定できます。

要件

要件
対象プラットフォーム デスクトップ
Header dbgeng.h (Dbgeng.h を含む)

こちらもご覧ください

GetExpressionSyntax

IDebugControl

IDebugControl2

IDebugControl3

SetExpressionSyntax

SetExpressionSyntaxByName