IoGetRequestorProcess-Funktion (ntifs.h)
Die IoGetRequestorProcess-Routine gibt einen Prozesszeiger für den Thread zurück, der ursprünglich einen bestimmten E/A-Vorgang angefordert hat.
Syntax
PEPROCESS IoGetRequestorProcess(
[in] PIRP Irp
);
Parameter
[in] Irp
Ein Zeiger auf das E/A-Anforderungspaket (IRP) für den E/A-Vorgang.
Rückgabewert
IoGetRequestorProcess gibt einen Prozesszeiger für den Thread zurück, der den E/A-Vorgang angefordert hat. Wenn das IRP keinem Thread zugeordnet ist, gibt IoGetRequestorProcessNULL zurück.
Hinweise
Staring mit Windows Vista. IoGetRequestorProcess gibt einen Zeiger auf den Prozess zurück, an den der Thread derzeit angefügt ist. Für IRPs, die für Dateiobjekte in die Warteschlange eingereiht wurden, z. B. für Die Port-E/A-Vervollständigung, gibt IoGetRequestorProcess einen Zeiger auf den Ausgabeprozess zurück. Wenn kein Thread angefügt ist, gibt IoGetRequestorProcess einen Zeiger auf den Prozess zurück, der den Thread erstellt hat.
Unter Windows XP gibt IoGetRequestorProcess einen Zeiger auf den Prozess zurück, an den der Thread derzeit angefügt ist.
Vor Windows XP gibt IoGetRequestorProcess einen Zeiger auf den Prozess zurück, der den Thread erstellt hat.
Ein IRP wird automatisch einem Thread zugeordnet, wenn er vom E/A-Manager ausgegeben oder durch Aufrufen von IoBuildAsynchronousFsdRequest, IoBuildSynchronousFsdRequest oder IoBuildDeviceIoControlRequest abgerufen wird.
Weitere Informationen zum Verwenden von Systemthreads und zum Verwalten der Synchronisierung innerhalb eines nicht-untergeordneten Threadkontexts finden Sie unter Treiberthreads, Dispatcherobjekte und Ressourcen.
Anforderungen
Anforderung | Wert |
---|---|
Zielplattform | Universell |
Header | ntifs.h (include Ntifs.h) |
Bibliothek | NtosKrnl.lib |
DLL | NtosKrnl.exe |
IRQL | <= DISPATCH_LEVEL |