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 |