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


Метод IDebugEventCallbacksWide::CreateProcess (dbgeng.h)

Метод обратного вызова CreateProcess вызывается подсистемой при возникновении события отладки процесса создания в целевом объекте.

Синтаксис

HRESULT CreateProcess(
  [in]           ULONG64 ImageFileHandle,
  [in]           ULONG64 Handle,
  [in]           ULONG64 BaseOffset,
  [in]           ULONG   ModuleSize,
  [in, optional] PCWSTR  ModuleName,
  [in, optional] PCWSTR  ImageName,
  [in]           ULONG   CheckSum,
  [in]           ULONG   TimeDateStamp,
  [in]           ULONG64 InitialThreadHandle,
  [in]           ULONG64 ThreadDataOffset,
  [in]           ULONG64 StartOffset
);

Параметры

[in] ImageFileHandle

Задает дескриптор файла образа процесса. Если эта информация недоступна, ImageFileHandle будет NULL.

[in] Handle

Задает дескриптор процесса. Этот параметр соответствует полю hProcess в структуре CREATE_PROCESS_DEBUG_INFO. Если эта информация недоступна, ImageFileHandle будет NULL.

[in] BaseOffset

Задает базовый адрес исполняемого образа процесса в адресном пространстве памяти целевого объекта. Если эти сведения недоступны, BaseOffset будет NULL.

[in] ModuleSize

Указывает размер исполняемого образа процесса в байтах. Если эта информация недоступна, ModuleSize будет нулевым.

[in, optional] ModuleName

Указывает упрощенное имя модуля, используемое обработчиком отладчика. В большинстве случаев это соответствует имени файла изображения, за исключением расширения. Если эти сведения недоступны, имя модуля будет null.

[in, optional] ImageName

Указывает имя файла исполняемого образа процесса, которое может включать путь. Если эти сведения недоступны, ImageName будет null.

[in] CheckSum

Указывает контрольную сумму исполняемого образа процесса. Если эта информация недоступна, CheckSum будет равно нулю.

[in] TimeDateStamp

Указывает метку времени и даты исполняемого файла процесса. Если эта информация недоступна, TimeDateStamp будет равно нулю.

[in] InitialThreadHandle

Задает дескриптор начального потока процесса. Этот параметр соответствует полю hThread в структуре CREATE_PROCESS_DEBUG_INFO. Если эта информация недоступна, InitialThreadHandle будет NULL.

[in] ThreadDataOffset

Указывает блок данных, которые операционная система поддерживает для этого потока. Фактические данные в блоке зависят от операционной системы. Если эта информация недоступна, ThreadDataOffset будет NULL.

[in] StartOffset

Задает начальный адрес потока в виртуальном адресном пространстве процесса. Если эти сведения недоступны, StartOffset будет NULL.

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

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

Замечания

Этот метод вызывается только подсистемой, если флаг DEBUG_EVENT_CREATE_PROCESS задан в маске, возвращенной IDebugEventCallbacksWide::GetInterestMask.

Дополнительные сведения об обработке событий см. в событий мониторинга. Сведения о потоках см. в потоках и процессах.

Требования

Требование Ценность
целевая платформа Настольный
заголовка dbgeng.h (include Dbgeng.h)