Método IWDFIoRequest::GetOutputMemory (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 GetOutputMemory recupera o objeto de memória que representa o buffer de saída para uma solicitação de E/S.
Sintaxe
void GetOutputMemory(
[out] IWDFMemory **ppWdfMemory
);
Parâmetros
[out] ppWdfMemory
Um ponteiro para uma variável que recebe um ponteiro para a interface IWDFMemory contada por referência para o objeto de memória. Observe que retornar NULL é válido; nessa situação, nenhuma memória de saída está associada à solicitação de E/S.
Retornar valor
Nenhum
Comentários
Os drivers que usam o método de acesso de E/S armazenado em buffer podem chamar GetOutputMemory para obter o buffer de saída de uma solicitação de E/S.
Antes que um driver conclua uma solicitação de E/S, o driver deve chamar o método IWDFMemory::Release para o objeto de memória. O objeto de memória subjacente é liberado quando a solicitação é concluída.
O buffer de saída associado à solicitação de E/S contém informações (por exemplo, dados de um disco) que o driver fornece ao originador da solicitação. O driver pode chamar GetOutputMemory para obter o buffer de saída para uma solicitação de leitura ou uma solicitação de controle de E/S do dispositivo, mas não para uma solicitação de gravação (porque as solicitações de gravação não fornecem dados de saída). Para acessar o buffer de saída, o driver deve chamar o método IWDFMemory::GetDataBuffer .
O UMDF cria objetos de memória de uma solicitação de E/S quando recebe a solicitação de E/S, antes de adicionar a solicitação de E/S à fila de E/S de um driver. Se o UMDF não puder alocar memória para os objetos de memória, ele concluirá a solicitação de E/S com um retorno de falha status e não entregará a solicitação de E/S ao driver.
Para obter mais informações sobre como acessar os buffers de dados de uma solicitação de E/S, consulte Acessando buffers de dados em drivers de UMDF-Based.
Exemplos
Para obter um exemplo de código de como usar o método GetOutputMemory , consulte IWDFIoQueue::RetrieveNextRequest.
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.5 |
Cabeçalho | wudfddi.h (inclua Wudfddi.h) |
DLL | WUDFx.dll |