Compartilhar via


Função SerCxRetrieveReceiveMdl (sercx.h)

O método SerCxRetrieveReceiveMdl recupera o MDL que descreve o buffer a ser usado para receber o próximo bloco de dados de entrada.

Sintaxe

NTSTATUS SerCxRetrieveReceiveMdl(
  [in]  WDFDEVICE Device,
  [out] PMDL      *Mdl
);

Parâmetros

[in] Device

Um identificador WDFDEVICE para o objeto de dispositivo de estrutura que representa o controlador serial.

[out] Mdl

Um ponteiro para um local no qual o método grava um ponteiro no MDL.

Retornar valor

SerCxRetrieveReceiveMdl retornará STATUS_SUCCESS se a chamada for bem-sucedida. Os possíveis valores retornados incluem os seguintes códigos de erro.

Código de retorno Descrição
STATUS_INVALID_DEVICE_REQUEST
Esse valor será retornado se ocorrer um dos seguintes procedimentos:
  • Não há nenhuma solicitação de recebimento pendente da qual obter um MDL.
  • O número atual de bytes recebidos (conforme relatado pelo método SerCxProgressReceive ) não é igual a zero.
  • O buffer já foi recuperado (e a chamada correspondente para o método SerCxProgressReceive ainda não ocorreu).
  • O MDL já foi recuperado (e a chamada correspondente para o método SerCxProgressReceive ainda não ocorreu).

Comentários

O driver do controlador serial chama essa função para obter um MDL a ser usado para a operação de recebimento (leitura) atual. O MDL descreve a memória do buffer na qual o driver deve transferir os dados recebidos. O driver é o proprietário exclusivo desse MDL até que ele chame o método SerCxProgressReceive , após o qual o ponteiro MDL é inválido e o driver não deve mais tentar acessar o MDL ou a memória de buffer que o MDL descreve.

Para obter mais informações sobre MDLs, consulte Usando MDLs.

Requisitos

Requisito Valor
Cliente mínimo com suporte Disponível a partir do Windows 8.
Plataforma de Destino Universal
Cabeçalho sercx.h
IRQL <= DISPATCH_LEVEL

Confira também

SerCxProgressReceive