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


Функция IoIs32bitProcess (wdm.h)

Подпрограмма IoIs32bitProcess проверяет, является ли инициатор текущего запроса ввода-вывода 32-разрядным приложением пользовательского режима.

Синтаксис

BOOLEAN IoIs32bitProcess(
  [in, optional] PIRP Irp
);

Параметры

[in, optional] Irp

Необязательный указатель на IRP, содержащий текущий запрос ввода-вывода. Обратите внимание, что это должен быть исходный IRP, выданный диспетчером операций ввода-вывода. Если вызывающий объект является быстрой подпрограммой диспетчеризации ввода-вывода (и, следовательно, не существует IRP), вызывающий объект должен задать для этого параметра значение NULL.

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

IoIs32bitProcess возвращает значение TRUE , если инициатором текущего запроса ввода-вывода является 32-разрядный процесс в пользовательском режиме. В противном случае возвращается значение FALSE.

Комментарии

Драйверы вызывают IoIs32bitProcess , чтобы определить, будет ли запрос ввода-вывода содержать элементы данных, которые необходимо преобразовать или "thunked", прежде чем их можно будет использовать в 64-разрядном драйвере.

Если параметр Irp имеет значение NULL и вызывающий объект выполняется в контексте процесса пользовательского режима, IoIs32bitProcess возвращает значение TRUE , если этот процесс является 32-разрядным процессом.

Если параметр Irp не равен NULL, он должен указывать на IRP, выданный диспетчером ввода-вывода от имени процесса пользовательского режима. IoIs32bitProcess нельзя использовать для проверка irp, выделенных драйверами. Предполагается, что irP, выделенные драйверами, а также драйверы в режиме ядра, являются 64-разрядными.

Дополнительные сведения см. в разделе Проблемы программирования для 64-разрядных драйверов.

Требования

Требование Значение
Минимальная версия клиента Доступно в 64-разрядных версиях Microsoft Windows XP и более поздних 64-разрядных версиях операционной системы Windows.
Целевая платформа Универсальное
Верхняя часть wdm.h (включая Wdm.h, Ntddk.h, Ntifs.h)
Библиотека NtosKrnl.lib
DLL NtosKrnl.exe
IRQL <= DISPATCH_LEVEL