EVT_VMB_CHANNEL_PROCESS_PACKET 콜백 함수(vmbuskernelmodeclientlibapi.h)
[일부 정보는 상업적으로 출시되기 전에 실질적으로 수정될 수 있는 시험판 제품과 관련이 있습니다. Microsoft는 여기에 제공된 정보와 관련하여 명시적이거나 묵시적인 보증을 하지 않습니다.]
EvtVmbChannelProcessPacket 콜백 함수는 패킷이 들어오는 링 버퍼에 도착하면 호출됩니다.
통사론
EVT_VMB_CHANNEL_PROCESS_PACKET EvtVmbChannelProcessPacket;
void EvtVmbChannelProcessPacket(
[in] VMBCHANNEL Channel,
[in] VMBPACKETCOMPLETION Packet,
[in] PVOID Buffer,
[in] UINT32 BufferLength,
[in] UINT32 Flags
)
{...}
매개 변수
[in] Channel
패킷이 도착하는 채널입니다.
[in] Packet
트랜잭션을 사용 중지할 수 있는 경우 KMCL(커널 모드 클라이언트 라이브러리)에 이 패킷을 식별하는 완료 컨텍스트입니다.
[in] Buffer
반대쪽 엔드포인트에서 보낸 패킷입니다. 이 값은 VMBus 및 KMCL 헤더를 포함하지 않습니다.
[in] BufferLength
Buffer 매개 변수의 길이(바이트)입니다.
[in] Flags
플래그. 가능한 값은 다음과 같습니다.
값 | 의미 |
---|---|
|
패킷은 외부 데이터를 참조합니다. 이 데이터는 VmbChannelPacketGetExternalData 함수를 사용하여 검색할 수 있습니다. |
반환 값
없음
발언
클라이언트 드라이버는 VmbChannelInitSetProcessPacketCallbacks 함수를 사용하여 이 콜백 함수의 구현을 등록합니다.
이 함수를 호출할 때마다 결국 VmbChannelPacketComplete 함수를 호출해야 합니다.
채널이 작업자 스레드에 대한 패킷 처리를 지연하도록 구성되지 않은 한 이 콜백 함수는 DISPATCH_LEVEL 이하에서 호출할 수 있습니다.
요구 사항
요구 | 값 |
---|---|
대상 플랫폼 | Windows |
헤더 | vmbuskernelmodeclientlibapi.h(VmbusKernelModeClientLibApi.h 포함) |
IRQL | <=DISPATCH_LEVEL |