Freigeben über


IoIs32bitProcess-Funktion (wdm.h)

Die IoIs32bitProcess- Routine überprüft, ob der Absender der aktuellen E/A-Anforderung eine 32-Bit-Benutzermodusanwendung ist.

Syntax

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

Parameter

[in, optional] Irp

Optionaler Zeiger auf das IRP, das die aktuelle E/A-Anforderung enthält. Beachten Sie, dass dies das ursprüngliche IRP sein muss, das vom I/O-Manager ausgestellt wurde. Wenn der Aufrufer eine schnelle E/A-Verteilerroutine ist (und somit kein IRP vorhanden ist), sollte der Aufrufer diesen Parameter auf NULL-festlegen.

Rückgabewert

IoIs32bitProcess- gibt TRUE zurück, wenn der Absender der aktuellen E/A-Anforderung ein 32-Bit-Benutzermodusprozess ist. Andernfalls wird FALSE-zurückgegeben.

Bemerkungen

Treiber rufen IoIs32bitProcess- auf, um festzustellen, ob eine E/A-Anforderung wahrscheinlich Datenelemente enthält, die konvertiert werden müssen, oder "thunked", bevor sie in einem 64-Bit-Treiber verwendet werden können.

Wenn der Irp Parameter NULL-ist und der Aufrufer im Kontext eines Benutzermodusprozesses ausgeführt wird, gibt IoIs32bitProcess-TRUE zurück, wenn dieser Prozess ein 32-Bit-Prozess ist.

Wenn der Irp Parameter nicht NULL-ist, muss er auf ein IRP verweisen, das vom I/O-Manager im Auftrag eines Benutzermodusprozesses ausgegeben wurde. IoIs32bitProcess- kann nicht verwendet werden, um vom Treiber zugewiesene IRPs zu überprüfen. Vom Treiber zugewiesene IRPs sowie Kernelmodustreiber werden als 64-Bit-fähig angenommen.

Weitere Informationen finden Sie unter Programmierprobleme für 64-Bit-Treiber.

Anforderungen

Anforderung Wert
mindestens unterstützte Client- Verfügbar in 64-Bit-Versionen von Microsoft Windows XP und höher 64-Bit-Versionen des Windows-Betriebssystems.
Zielplattform- Universal
Header- wdm.h (include Wdm.h, Ntddk.h, Ntifs.h)
Library NtosKrnl.lib
DLL- NtosKrnl.exe
IRQL- <= DISPATCH_LEVEL