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


Функция IoSetActivityIdIrp (ntddk.h)

Подпрограмма IoSetActivityIdIrp связывает идентификатор действия с IRP.

Синтаксис

NTSTATUS IoSetActivityIdIrp(
  [in]           PIRP    Irp,
  [in, optional] LPCGUID Guid
);

Параметры

[in] Irp

IRP для связывания идентификатора действия с.

[in, optional] Guid

Указатель на GUID, представляющий идентификатор для хранения в IRP. Если значение NULL, IoSetActivityIdIrp пытается получить идентификатор действия из текущего потока, если он был потоком, который первоначально выдал запрос.

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

IoSetActivityIdIrp возвращает STATUS_SUCCESS, если вызов выполнен успешно. Возможные значения возвращаемых ошибок включают следующие значения.

Возвращаемый код Описание
STATUS_NOT_SUPPORTED Идентификатор действия ETW не указан, и идентификатор действия ETW недоступен.
STATUS_UNSUCCESSFUL Поставщик трассировки ввода-вывода не включен в IRP.

Замечания

Драйверы должны использовать IoSetActivityIdIrp только для irPs, выделенных с помощью IoAllocateIrp (и освобожденных с помощью IoFreeIrp). В противном случае утечка памяти может привести к утечке памяти.

Требования

Требование Ценность
минимальные поддерживаемые клиентские Доступно начиная с Windows 8.
целевая платформа Всеобщий
заголовка ntddk.h (include Ntddk.h)
библиотеки NtosKrnl.lib
DLL NtosKrnl.exe
IRQL Любой уровень, если guid передается, в противном случае PASSIVE_LEVEL.