Compartir a través de


Método IWDFIoQueue::RetrieveNextRequestByFileObject (wudfddi.h)

Advertencia

UMDF 2 es la versión más reciente de UMDF y sustituye a UMDF 1. Todos los controladores UMDF nuevos deben escribirse con UMDF 2. No se agregan nuevas características a UMDF 1 y hay compatibilidad limitada con UMDF 1 en versiones más recientes de Windows 10. Los controladores universales de Windows deben usar UMDF 2. Para obtener más información, consulta Introducción con UMDF.

El método RetrieveNextRequestByFileObject recupera de una cola de E/S la siguiente solicitud de E/S cuyo objeto de archivo coincide con el objeto de archivo especificado.

Sintaxis

HRESULT RetrieveNextRequestByFileObject(
  [in]  IWDFFile      *pFile,
  [out] IWDFIoRequest **ppRequest
);

Parámetros

[in] pFile

Puntero a la interfaz IWDFFile del objeto de archivo que se usa para recuperar la siguiente solicitud de E/S cuyo objeto de archivo coincide con este objeto de archivo proporcionado.

[out] ppRequest

Puntero a un búfer que recibe un puntero a la interfaz IWDFIoRequest del siguiente objeto de solicitud cuyo objeto de archivo coincide con el objeto de archivo proporcionado, o recibe NULL si la cola está vacía o si no se encuentra la siguiente solicitud.

Valor devuelto

RetrieveNextRequestByFileObject devuelve uno de los siguientes valores:

Código devuelto Descripción
S_OK La siguiente solicitud de E/S se recuperó correctamente de la cola de E/S.
HRESULT_FROM_NT(STATUS_WDF_PAUSED) La cola no envía solicitudes. Esta situación se produce si el dispositivo se somete a una transición de estado de energía y todas las colas se detienen de enviar solicitudes o si el controlador llamó explícitamente IWDFIoQueue::Stop para detener el envío de solicitudes. Esta situación también puede producirse si el controlador intenta quitar una solicitud de una cola manual que se administra con energía y que está apagada o si la cola está en pausa.
HRESULT_FROM_WIN32(ERROR_NO_MORE_ITEMS) No había solicitudes en la cola.
HRESULT_FROM_NT(STATUS_INVALID_DEVICE_STATE) La llamada se realizó para recuperar la solicitud de una cola paralela.

RetrieveNextRequestByFileObject también puede devolver otros valores HRESULT.

Comentarios

Si un controlador configura una cola de E/S para el envío manual de solicitudes de E/S, el controlador puede llamar al método RetrieveNextRequestByFileObject para obtener la siguiente solicitud cuyo objeto de archivo coincide con el objeto de archivo proporcionado de la cola. Para obtener más información sobre el envío manual de solicitudes de E/S, consulte Configuración del modo de distribución para una cola de E/S.

Si hay varias solicitudes de E/S cuyos objetos de archivo coinciden con el objeto de archivo al que apunta el parámetro pFile en la cola de E/S, se devuelve la primera solicitud de E/S.

Ejemplos

Para obtener un ejemplo de código de cómo usar el método RetrieveNextRequestByFileObject , vea IWDFIoQueue::RetrieveNextRequest.

Requisitos

Requisito Value
Finalización del soporte técnico No disponible en UMDF 2.0 y versiones posteriores.
Plataforma de destino Escritorio
Versión mínima de UMDF 1.5
Encabezado wudfddi.h (incluya Wudfddi.h)
Archivo DLL WUDFx.dll

Consulte también