Compartilhar via


HvCallPostMessage

A hiperchamada HvCallPostMessage tenta postar (ou seja, enviar de forma assíncrona) uma mensagem para a conexão especificada, que tem uma porta de destino associada. Se a mensagem for postada com êxito, ela será enfileirada para entrega a um processador virtual dentro da partição associada à porta.

Interface

HV_STATUS
HvCallPostMessage(
   _In_ HV_CONNECTION_ID ConnectionId,
   _In_ HV_MESSAGE_TYPE MessageType,
   _In_ UINT32 PayloadSize,
   _In_reads_bytes_(PayloadSize) PCVOID Message
   );

Código de chamada

0x005C Único

Parâmetros de Entrada

Nome Deslocamento Tamanho Informações Fornecidas
ConnectionId 0 4 Especifica a ID da conexão.
RsvdZ 4 4
MessageType 8 4 Especifica o tipo de mensagem que será exibido dentro do cabeçalho da mensagem. O chamador pode especificar qualquer tipo de mensagem de 32 bits cujo bit mais significativo seja limpo, com a exceção de zero.
PayloadSize 12 4 Especifica o número de bytes incluídos na mensagem.
Message 16 240 Secifies o conteúdo da mensagem — até 240 bytes no total. Somente os primeiros n bytes são realmente enviados para a partição de destino, em que n é fornecido no parâmetro PayloadSize.

Valores de retorno

Código de status Condição de erro
HV_STATUS_ACCESS_DENIED A partição do chamador não possui o privilégio de mensagens.
HV_STATUS_INVALID_CONNECTION_ID A ID de conexão especificada é inválida.
HV_STATUS_INVALID_PORT_ID A porta associada à conexão especificada foi excluída.
A porta associada à conexão especificada pertence a uma partição que não está no estado "ativo".
A porta associada à conexão especificada não é uma porta do tipo "Message".
HV_STATUS_INVALID_PARAMETER O bit mais significativo do tipo de mensagem especificado está definido.
O parâmetro MessageType especifica um valor igual a zero.
O tamanho da carga especificada excede 240 bytes.
HV_STATUS_INSUFFICIENT_BUFFERS A porta não tem buffers de mensagens de convidado disponíveis.
HV_STATUS_INVALID_VP_INDEX O VP de destino não existe mais ou não há nenhum VPSs disponível para o qual a mensagem possa ser postada.
HV_STATUS_INVALID_SYNIC_STATE O SynIC do vice-presidente de destino está desabilitado e não pode aceitar mensagens postadas.
A página SIM do vice-presidente de destino está desabilitada.