Método IWDFIoRequest2::Reuse (wudfddi.h)
[Aviso: UMDF 2 é a versão mais recente do UMDF e substitui UMDF 1. Todos os novos drivers UMDF devem ser gravados usando UMDF 2. Nenhum novo recurso 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 com UMDF.]
O método Reuse reinicializa um objeto de solicitação de estrutura para que ele possa ser reutilizado.
Sintaxe
void Reuse(
[in] HRESULT hrNewStatus
);
Parâmetros
[in] hrNewStatus
Um valor de status do tipo HRESULT que a estrutura atribui à solicitação.
Retornar valor
Nenhum
Comentários
Se um driver baseado em estrutura chamar IWDFDevice::CreateRequest para criar objetos de solicitação, o driver poderá reutilizar esses objetos de solicitação. Os drivers também podem reutilizar objetos de solicitação que recebem da estrutura em suas filas de E/S.
Um driver pode reutilizar um objeto de solicitação após a conclusão da solicitação original. Depois que um driver tiver chamado Reuse, o conteúdo da solicitação deverá ser reinicializado.
Se você quiser que a solicitação reutilizado tenha uma função de retorno de chamada IRequestCallbackRequestCompletion::OnCompletion , o driver deverá chamar IWDFIoRequest::SetCompletionCallback depois de chamar Reuse.
Para obter mais informações sobre Reutilização, consulte Reutilizando objetos de solicitação de estrutura.
Exemplos
O exemplo de código a seguir mostra como uma função de retorno de chamada IRequestCallbackRequestCompletion::OnCompletion pode obter a interface IWDFIoRequest2 e, em seguida, chamar Reuse.
void
STDMETHODCALLTYPE
CMyRemoteDevice::OnCompletion(
__in IWDFIoRequest* FxRequest,
__in IWDFIoTarget* FxTarget,
__in IWDFRequestCompletionParams* Params,
__in void* Context
)
{
...
CComQIPtr<IWDFIoRequest2> fxRequest2(FxRequest);
fxRequest2->Reuse(S_OK);
...
}
Requisitos
Requisito | Valor |
---|---|
Fim do suporte | Indisponível no UMDF 2.0 e posterior. |
Plataforma de Destino | Área de Trabalho |
Versão mínima do UMDF | 1,9 |
Cabeçalho | wudfddi.h (inclua Wudfddi.h) |
DLL | WUDFx.dll |