IoIs32bitProcess-Funktion (wdm.h)

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

Syntax

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

Parameter

[in, optional] Irp

Optionaler Zeiger auf den IRP, der die aktuelle E/A-Anforderung enthält. Beachten Sie, dass dies die ursprüngliche IRP sein muss, die vom E/A-Manager ausgestellt wurde. Wenn der Aufrufer eine schnelle E/A-Dispatchroutine ist (und daher 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.

Hinweise

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

Wenn der Irp-ParameterNULL ist und der Aufrufer im Kontext eines Benutzermodusprozesses ausgeführt wird, gibt IoIs32bitProcessTRUE zurück, wenn es sich um einen 32-Bit-Prozess handelt.

Wenn der Irp-Parameter nicht NULL ist, muss er auf einen IRP verweisen, der vom E/A-Manager im Auftrag eines Benutzermodusprozesses ausgestellt wurde. IoIs32bitProcess kann nicht verwendet werden, um vom Treiber zugewiesene IRPs zu überprüfen. Sowohl treiberseitig zugeordnete IRPs als auch Kernelmodustreiber werden als 64-Bit-bereit angenommen.

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

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client) Verfügbar in 64-Bit-Versionen von Microsoft Windows XP und höheren 64-Bit-Versionen des Windows-Betriebssystems.
Zielplattform Universell
Header wdm.h (einschließlich Wdm.h, Ntddk.h, Ntifs.h)
Bibliothek NtosKrnl.lib
DLL NtosKrnl.exe
IRQL <= DISPATCH_LEVEL