Compartir a través de


FN_VMB_CHANNEL_SEND_SYNCHRONOUS_REQUEST función de devolución de llamada (vmbuskernelmodeclientlibapi.h)

[Cierta información se relaciona con el producto publicado previamente que puede modificarse sustancialmente antes de su publicación comercial. Microsoft no ofrece ninguna garantía, expresa o implícita, con respecto a la información proporcionada aquí.]

La función VmbChannelSendSynchronousRequest envía un paquete al punto de conexión opuesto y espera una respuesta.

Sintaxis

FN_VMB_CHANNEL_SEND_SYNCHRONOUS_REQUEST FnVmbChannelSendSynchronousRequest;

NTSTATUS FnVmbChannelSendSynchronousRequest(
  VMBCHANNEL Channel,
  PVOID Buffer,
  UINT32 BufferSize,
  PMDL ExternalDataMdl,
  UINT32 Flags,
  PVOID CompletionBuffer,
  PUINT32 CompletionBufferSize,
  PLARGE_INTEGER Timeout
)
{...}

Parámetros

Channel

Identificador del canal.

Buffer

Datos que se van a enviar.

BufferSize

Tamaño, en bytes, de los datos que se van a enviar.

ExternalDataMdl

Lista de descriptores de memoria (MDL) que describe un búfer adicional que se va a enviar.

Flags

Marcas estándar.

CompletionBuffer

Búfer en el que almacenar los resultados del paquete de finalización.

CompletionBufferSize

Tamaño, en bytes, del valor de completionBuffer. Este valor se debe redondear hasta los 8 bytes más cercanos, o bien se produce un error en la función. Si se ejecuta correctamente, devuelve el número de bytes escritos en CompletionBuffer.

Timeout

Tiempo de espera en el estilo del enrutamiento de KeWaitForSingleObject. Una vez transcurrido este tiempo, se cancela el paquete. Para un tiempo de espera de cero (0), si un paquete no se encuentra en el búfer de anillo, no se pone en cola.

Valor devuelto

Código devuelto Descripción
STATUS_SUCCESS
Las funciones finalizaron correctamente.
STATUS_BUFFER_OVERFLOW
El paquete no cabe en el búfer y no se puso en cola.
STATUS_CANCELLED
Se canceló el paquete.
STATUS_DEVICE_REMOVED
El canal se está apagando.

Observaciones

Los clientes pueden ejecutar esta función con cualquier combinación de parámetros.

La raíz solo puede llamar a esto si no se establece *Timeout == 0 y la marca VMBUS_CHANNEL_FORMAT_FLAG_WAIT_FOR_COMPLETION.

Importante

Esta función se llama a través de la interfaz de la biblioteca cliente del modo kernel (KMCL) de VMBus, proporcionada por el controlador de bus de Vmbkmcl.sys. Se trata de una función cliente a la que se accede desde la estructura KMCL_CLIENT_INTERFACE_V1.

Para obtener más información, vea la sección Comentarios de la KMCL_CLIENT_INTERFACE_V1.

Requisitos

Requisito Valor
cliente mínimo admitido Windows 10, versión 1803
encabezado de vmbuskernelmodeclientlibapi.h

Consulte también

KeWaitForSingleObject