Función IoGetRequestorProcess (ntifs.h)

La rutina IoGetRequestorProcess devuelve un puntero de proceso para el subproceso que solicitó originalmente una operación de E/S determinada.

Sintaxis

PEPROCESS IoGetRequestorProcess(
  [in] PIRP Irp
);

Parámetros

[in] Irp

Puntero al paquete de solicitud de E/S (IRP) para la operación de E/S.

Valor devuelto

IoGetRequestorProcess devuelve un puntero de proceso para el subproceso que solicitó la operación de E/S. Si el IRP no está asociado a ningún subproceso, IoGetRequestorProcess devuelve NULL.

Comentarios

Mirando con Windows Vista. IoGetRequestorProcess devuelve un puntero al proceso al que está asociado actualmente el subproceso. En el caso de los IRP en cola para objetos de archivo, como para la E/S de puerto de finalización, IoGetRequestorProcess devuelve un puntero al proceso de emisión. Si no hay ningún subproceso asociado, IoGetRequestorProcess devuelve un puntero al proceso que creó el subproceso.

En Windows XP, IoGetRequestorProcess devuelve un puntero al proceso al que está asociado actualmente el subproceso.

Nota En Windows XP, en los casos en los que un IRP contiene un subproceso que no es NULL pero no tiene ningún subproceso asociado, IoGetRequestorProcess intentará acceder a la información del proceso para un subproceso no definido. Esto presenta una posible condición de comprobación de errores si se llama a IoGetRequestorProcess sin control de excepciones o demasiado alto de un IRQL.

 

Antes de Windows XP, IoGetRequestorProcess devuelve un puntero al proceso que creó el subproceso.

Un IRP se asocia automáticamente a un subproceso si lo emite el Administrador de E/S o se obtiene mediante una llamada a IoBuildAsynchronousFsdRequest, IoBuildSynchronousFsdRequest o IoBuildDeviceIoControlRequest.

Para obtener más información sobre el uso de subprocesos del sistema y la administración de la sincronización dentro de un contexto de subproceso nobitrario, vea Subprocesos de controlador, objetos dispatcher y recursos.

Requisitos

Requisito Value
Plataforma de destino Universal
Encabezado ntifs.h (incluya Ntifs.h)
Library NtosKrnl.lib
Archivo DLL NtosKrnl.exe
IRQL <= DISPATCH_LEVEL

Consulte también

IoBuildAsynchronousFsdRequest

IoBuildDeviceIoControlRequest

IoBuildSynchronousFsdRequest

IoGetRequestorProcessId