EVT_VMB_PACKET_COMPLETION_ROUTINE функция обратного вызова (vmbuskernelmodeclientlibapi.h)

[Некоторые сведения относятся к предварительно выпущенным продуктам, которые могут быть существенно изменены до его коммерческого выпуска. Майкрософт не дает никаких гарантий, явных или подразумеваемых, в отношении предоставленной здесь информации.]

Функция обратного вызова EvtVmbPacketCompletionRoutine вызывается после завершения транзакции, связанной с отправленным пакетом.

Синтаксис

EVT_VMB_PACKET_COMPLETION_ROUTINE EvtVmbPacketCompletionRoutine;

void EvtVmbPacketCompletionRoutine(
  [in] VMBPACKET Packet,
  [in] NTSTATUS Status,
  [in] PVOID Buffer,
  [in] UINT32 BufferLength
)
{...}

Параметры

[in] Packet

Пакет, который завершен.

[in] Status

Код состояния.

[in] Buffer

Буфер, содержащий ответ завершения от противоположной конечной точки, если таковой имеется.

[in] BufferLength

Длина параметра Buffer в байтах.

Возвращаемое значение

None

Remarks

После выделения объекта пакета с помощью функции VmbPacketAllocate диск клиента может задать обратный вызов завершения с помощью функции VmbPacketSetCompletionRoutine .

Если отправитель использовал флаг VMBUS_CHANNEL_FORMAT_FLAG_WAIT_FOR_COMPLETION, вызов этого обратного вызова означает, что противоположная конечная точка получила пакет и завершила его. В противном случае исходящий пакет был успешно помещен в кольцевой буфер.

Требования

Требование Значение
Целевая платформа Windows
Header vmbuskernelmodeclientlibapi.h (включая VmbusKernelModeClientLibApi.h)
IRQL <=DISPATCH_LEVEL

См. также раздел

VmbPacketAllocate

VmbPacketSetCompletionRoutine