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


Метод IDebugSystemObjects3::SetCurrentProcessId (dbgeng.h)

Метод SetCurrentProcessId делает указанный процесс текущим процессом.

Синтаксис

HRESULT SetCurrentProcessId(
  [in] ULONG Id
);

Параметры

[in] Id

Указывает идентификатор процесса подсистемы, который станет текущим процессом.

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

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

Код возврата Описание
S_OK
Метод выполнен успешно.
E_NOINTERFACE
Процесс с заданным идентификатором процесса не найден.
E_FAIL
В процессе не удалось найти подходящего кандидата для текущего потока.

Комментарии

Этот метод также изменяет текущий поток и может изменить текущий целевой объект и текущий компьютер.

При изменении процесса будет вызываться обратный вызов IDebugEventCallbacks::ChangeEngineState с набором битов DEBUG_CES_CURRENT_THREAD.

Примечание При отладке в режиме ядра текущий процесс является виртуальным, а не системным процессом. Этот метод нельзя использовать для изменения между системными процессами при отладке в режиме ядра. Однако неявный процесс можно изменить с помощью SetImplicitProcessDataOffset.
 
Дополнительные сведения о процессах см. в разделе Потоки и процессы. Дополнительные сведения о событиях мониторинга см. в разделе События мониторинга.

Требования

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