Nota
O acesso a esta página requer autorização. Podes tentar iniciar sessão ou mudar de diretório.
O acesso a esta página requer autorização. Podes tentar mudar de diretório.
RxCeSendDatagram envia uma TSDU (unidade de dados do serviço de transporte) ao longo da conexão especificada em um circuito virtual.
Sintaxe
NTSTATUS RxCeSendDatagram(
IN PRXCE_ADDRESS hAddress,
[in] IN PRXCE_CONNECTION_INFORMATION pConnectionInformation,
IN ULONG SendOptions,
[in] IN PMDL pMdl,
[in] IN ULONG SendLength,
[in] IN PVOID pCompletionContext
);
Parâmetros
hAddress
Um ponteiro para o transporte ao longo do qual o TSDU deve ser enviado.
[in] pConnectionInformation
Um ponteiro para informações de conexão que contém o endereço remoto.
SendOptions
Um ponteiro para informações de conexão que contém o endereço remoto.
[in] pMdl
Um ponteiro para o buffer a ser enviado.
[in] SendLength
O comprimento dos dados a serem enviados.
[in] pCompletionContext
O contexto passado de volta para o chamador durante SendCompletion para operações assíncronas. Não que esse parâmetro seja ignorado se as Opções parâmetro solicitarem uma operação de envio síncrona.
Valor de retorno
RxCeSendDatagram retorna STATUS_SUCCESS com êxito ou um dos seguintes códigos de erro sobre falha:
| Código de retorno | Descrição |
|---|---|
|
Falha na alocação de memória de pool nãopagada necessária para essa rotina. |
|
Um comprimento inválido foi passado no parâmetro SendLength com base nas opções de especificadas. |
Observações
As opções assíncronas e síncronas indicadas no parâmetro Options usado em RxCeSendDatagram distinguir entre duas situações. No caso assíncrono, o controle retorna ao chamador depois que a solicitação é enviada com êxito para o transporte subjacente. Os resultados de qualquer solicitação determinada são comunicados novamente usando a rotina de retorno de chamada SendCompletion. O parâmetro pCompletionContext em RxCeSendDatagram é passado novamente na rotina de retorno de chamada para ajudar o chamador a desambiguar as solicitações.
No caso síncrono, a solicitação é enviada para o transporte subjacente e o controle não retorna ao chamador até que a solicitação seja concluída. Observe que, no caso síncrono, o parâmetro pCompletionContext é ignorado e o status retornado corresponde ao status de conclusão das operações.
O benefício das opções assíncronas e síncronas depende do transporte subjacente. Em um ambiente de circuito virtual (TCP, por exemplo), uma opção síncrona implica que o controle não retorna até que os dados cheguem ao servidor. Por outro lado, para transportes orientados a datagram (UDP, por exemplo), há muito pouca diferença entre as duas opções.
Observe que a opção de síncrona é desconsiderada por enviar datagramas porque os transportes subjacentes não bloqueiam os envios de datagram.
RXCE_CONNECTION_INFORMATION é um typedef para uma estrutura TDI_CONNECTION_INFORMATION.
Requisitos
| Requisito | Valor |
|---|---|
| da Plataforma de Destino | Área de trabalho |
| cabeçalho | rxce.h (include Rxce.h, Tdi.h) |
| IRQL | <= APC_LEVEL |