Поделиться через


Метод IDebugControl4::EvaluateWide (dbgeng.h)

Метод EvaluateWide вычисляет выражение, возвращая результат.

Синтаксис

HRESULT EvaluateWide(
  [in]            PCWSTR       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

Получает индекс первого символа выражения, не используемого при вычислении. Если параметр RemainderIndex имеет значение NULL, эта информация не возвращается.

Возвращаемое значение

Этот метод также может возвращать другие значения ошибок. Дополнительные сведения см. в разделе Возвращаемые значения .

Код возврата Описание
S_OK
Метод выполнен успешно.
E_FAIL
При вычислении выражения произошла ошибка. Например, произошла синтаксическая ошибка, неопределенная переменная или исключение деления на ноль.

Комментарии

Выражения вычисляются текущим вычислителем выражений. Подсистема содержит несколько вычислителей выражений; каждый из них поддерживает другой синтаксис. Текущий вычислитель выражений можно выбрать с помощью setExpressionSyntax.

Дополнительные сведения о доступных вычислителях выражений и их синтаксисе см. в разделе Синтаксис числовых выражений.

Если при вычислении выражения возникает ошибка, возвращающая E_FAIL, можно использовать переменную RemainderIndex , чтобы приблизительно определить, где в выражении произошла ошибка.

Требования

Требование Значение
Целевая платформа Персональный компьютер
Верхняя часть dbgeng.h (включая Dbgeng.h)

См. также раздел

GetExpressionSyntax

IDebugControl4

SetExpressionSyntax

SetExpressionSyntaxByName