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 |