Método IWDFIoQueue::RetrieveNextRequestByFileObject (wudfddi.h)
Aviso
O UMDF 2 é a versão mais recente do UMDF e substitui o UMDF 1. Todos os novos drivers UMDF devem ser gravados usando UMDF 2. Nenhum recurso novo está sendo adicionado ao UMDF 1 e há suporte limitado para UMDF 1 em versões mais recentes do Windows 10. Os drivers universais do Windows devem usar o UMDF 2. Para obter mais informações, consulte Introdução aoUMDF.
O método RetrieveNextRequestByFileObject recupera de uma fila de E/S na próxima solicitação de E/S cujo objeto de arquivo corresponde ao objeto de arquivo especificado.
Sintaxe
HRESULT RetrieveNextRequestByFileObject(
[in] IWDFFile *pFile,
[out] IWDFIoRequest **ppRequest
);
Parâmetros
[in] pFile
Um ponteiro para a interface IWDFFile para o objeto de arquivo usado para recuperar a próxima solicitação de E/S cujo objeto de arquivo corresponde a esse objeto de arquivo fornecido.
[out] ppRequest
Um ponteiro para um buffer que recebe um ponteiro para a interface IWDFIoRequest para o próximo objeto de solicitação cujo objeto de arquivo corresponde ao objeto de arquivo fornecido ou recebe null se a fila estiver vazia ou se a próxima solicitação não for encontrada.
Valor de retorno
RetrieveNextRequestByFileObject retorna um dos seguintes valores:
Código de retorno | Descrição |
---|---|
S_OK | A próxima solicitação de E/S foi recuperada com êxito da fila de E/S. |
HRESULT_FROM_NT(STATUS_WDF_PAUSED) | A fila não está expedindo solicitações. Essa situação ocorrerá se o dispositivo passar por uma transição de estado de energia e todas as filas forem impedidas de expedir solicitações ou se o driver explicitamente chamado IWDFIoQueue::Parar para interromper a expedição de solicitações. Essa situação também pode ocorrer se o driver tentar remover uma solicitação de uma fila manual que é gerenciada por energia e que está pressionada ou se a fila estiver pausada. |
HRESULT_FROM_WIN32(ERROR_NO_MORE_ITEMS) | Nenhuma solicitação estava na fila. |
HRESULT_FROM_NT(STATUS_INVALID_DEVICE_STATE) | A chamada foi feita para recuperar a solicitação de uma fila paralela. |
RetrieveNextRequestByFileObject também pode retornar outros valores HRESULT.
Observações
Se um driver configurar uma fila de E/S para expedição manual de solicitações de E/S, o driver poderá chamar o método RetrieveNextRequestByFileObject para obter a próxima solicitação cujo objeto de arquivo corresponde ao objeto de arquivo fornecido da fila. Para obter mais informações sobre o envio manual de solicitações de E/S, consulte Configurando o modo de expedição para uma fila de E/S.
Se várias solicitações de E/S cujos objetos de arquivo corresponderem ao objeto de arquivo que o pFile pontos de parâmetro existirem na fila de E/S, a primeira solicitação de E/S será retornada.
Exemplos
Para obter um exemplo de código de como usar o método retrieveNextRequestByFileObject, consulte IWDFIoQueue::RetrieveNextRequest.
Requisitos
Requisito | Valor |
---|---|
fim do suporte | Indisponível no UMDF 2.0 e posterior. |
da Plataforma de Destino | Área de trabalho |
versão mínima do UMDF | 1.5 |
cabeçalho | wudfddi.h (inclua Wudfddi.h) |
de DLL | WUDFx.dll |
Consulte também
- IWDFFile
- IWDFIoQueue
- IWDFIoQueue::RetrieveNextRequest
- IWDFIoQueue::Stop
- IWDFIoRequest