KMCL_SERVER_ONLY_METHODS_V5-Struktur (vmbuskernelmodeclientlibapi.h)
Die KMCL_CLIENT_INTERFACE_V1-Struktur enthält Funktionszeiger für Clientfunktionen für die KMCL-Schnittstelle (Kernel Mode Client Library).
Weitere Informationen zum Zugreifen auf die KMCL-Schnittstelle finden Sie im Abschnitt Hinweise.
Syntax
typedef struct _KMCL_CLIENT_INTERFACE_V1 {
INTERFACE;
PFN_VMB_CHANNEL_ALLOCATE VmbChannelAllocate;
PFN_VMB_CHANNEL_CLEANUP VmbChannelCleanup;
PFN_VMB_CHANNEL_CREATE_GPADL_FROM_BUFFER VmbChannelCreateGpadlFromBuffer;
PFN_VMB_CHANNEL_CREATE_GPADL_FROM_MDL VmbChannelCreateGpadlFromMdl;
PFN_VMB_CHANNEL_DELETE_GPADL VmbChannelDeleteGpadl;
PFN_VMB_CHANNEL_DISABLE VmbChannelDisable;
PFN_VMB_CHANNEL_ENABLE VmbChannelEnable;
PFN_VMB_CHANNEL_GET_INTERFACE_INSTANCE VmbChannelGetInterfaceInstance;
PFN_VMB_CHANNEL_GET_MMIO_SPACE VmbChannelGetMmioSpace;
PFN_VMB_CHANNEL_GET_POINTER VmbChannelGetPointer;
PFN_VMB_CHANNEL_INIT_SET_CLIENT_CONTEXT_SIZE VmbChannelInitSetClientContextSize;
PFN_VMB_CHANNEL_INIT_SET_FLAGS VmbChannelInitSetFlags;
PFN_VMB_CHANNEL_INIT_SET_FRIENDLY_NAME VmbChannelInitSetFriendlyName;
PFN_VMB_CHANNEL_INIT_SET_MAXIMUM_EXTERNAL_DATA VmbChannelInitSetMaximumExternalData;
PFN_VMB_CHANNEL_INIT_SET_MAXIMUM_PACKET_SIZE VmbChannelInitSetMaximumPacketSize;
PFN_VMB_CHANNEL_INIT_SET_PROCESS_PACKET_CALLBACKS VmbChannelInitSetProcessPacketCallbacks;
PFN_VMB_CHANNEL_INIT_SET_STATE_CHANGE_CALLBACKS VmbChannelInitSetStateChangeCallbacks;
PFN_VMB_CHANNEL_PACKET_COMPLETE VmbChannelPacketComplete;
PFN_VMB_CHANNEL_PACKET_DEFER_TO_PASSIVE VmbChannelPacketDeferToPassive;
PFN_VMB_CHANNEL_PACKET_FAIL VmbChannelPacketFail;
PFN_VMB_CHANNEL_PACKET_GET_EXTERNAL_DATA VmbChannelPacketGetExternalData;
PFN_VMB_CHANNEL_PAUSE VmbChannelPause;
PFN_VMB_CHANNEL_SEND_SYNCHRONOUS_REQUEST VmbChannelSendSynchronousRequest;
PFN_VMB_CHANNEL_SET_INCOMING_PROCESSING_AT_PASSIVE VmbChannelSetIncomingProcessingAtPassive;
PFN_VMB_CHANNEL_SET_INTERRUPT_LATENCY VmbChannelSetInterruptLatency;
PFN_VMB_CHANNEL_SET_POINTER VmbChannelSetPointer;
PFN_VMB_CHANNEL_SET_TRANSACTION_QUOTA VmbChannelSetTransactionQuota;
PFN_VMB_CHANNEL_SIZEOF_PACKET VmbChannelSizeofPacket;
PFN_VMB_CHANNEL_START VmbChannelStart;
PFN_VMB_CLIENT_CHANNEL_INIT_SET_RING_BUFFER_PAGE_COUNT VmbClientChannelInitSetRingBufferPageCount;
PFN_VMB_CLIENT_CHANNEL_INIT_SET_TARGET_PNP VmbClientChannelInitSetTargetPnp;
PFN_VMB_PACKET_ALLOCATE VmbPacketAllocate;
PFN_VMB_PACKET_FREE VmbPacketFree;
PFN_VMB_PACKET_GET_CHANNEL VmbPacketGetChannel;
PFN_VMB_PACKET_GET_POINTER VmbPacketGetPointer;
PFN_VMB_PACKET_INITIALIZE VmbPacketInitialize;
PFN_VMB_PACKET_SEND VmbPacketSend;
PFN_VMB_PACKET_SEND_WITH_EXTERNAL_MDL VmbPacketSendWithExternalMdl;
PFN_VMB_PACKET_SEND_WITH_EXTERNAL_PFNS VmbPacketSendWithExternalPfns;
PFN_VMB_PACKET_SET_COMPLETION_ROUTINE VmbPacketSetCompletionRoutine;
PFN_VMB_PACKET_SET_POINTER VmbPacketSetPointer;
} KMCL_CLIENT_INTERFACE_V1, *PKMCL_CLIENT_INTERFACE_V1;
Vererbung
Die KMCL_SERVER_ONLY_METHODS_V5-Struktur implementiert KMCL_SERVER_ONLY_METHODS.
Member
_KMCL_SERVER_ONLY_METHODS_V5
_KMCL_SERVER_ONLY_METHODS_V5.VmbServerChannelInitSetSaveRestorePacketCallbacksEx
C_ASSERT
KMCL_CLIENT_INTERFACE_TYPE
_KMCL_CLIENT_INTERFACE_V1
_KMCL_CLIENT_INTERFACE_V1._KMCL_CLIENT_INTERFACE_V1
_KMCL_CLIENT_INTERFACE_V1._KMCL_CLIENT_INTERFACE_V1.VmbChannelAllocate
Ein Zeiger auf die VmbChannelAllocate-Funktion .
_KMCL_CLIENT_INTERFACE_V1._KMCL_CLIENT_INTERFACE_V1.VmbChannelCleanup
Ein Zeiger auf die VmbChannelCleanup-Funktion .
_KMCL_CLIENT_INTERFACE_V1._KMCL_CLIENT_INTERFACE_V1.VmbChannelCreateGpadlFromBuffer
Ein Zeiger auf die Funktion VmbChannelCreateGpadlFromBuffer .
_KMCL_CLIENT_INTERFACE_V1._KMCL_CLIENT_INTERFACE_V1.VmbChannelCreateGpadlFromMdl
Ein Zeiger auf die Funktion VmbChannelCreateGpadlFromMdl .
_KMCL_CLIENT_INTERFACE_V1._KMCL_CLIENT_INTERFACE_V1.VmbChannelDeleteGpadl
Ein Zeiger auf die Funktion VmbChannelDeleteGpadl .
_KMCL_CLIENT_INTERFACE_V1._KMCL_CLIENT_INTERFACE_V1.VmbChannelDisable
Ein Zeiger auf die VmbChannelDisable-Funktion .
_KMCL_CLIENT_INTERFACE_V1._KMCL_CLIENT_INTERFACE_V1.VmbChannelEnable
Ein Zeiger auf die VmbChannelEnable-Funktion .
_KMCL_CLIENT_INTERFACE_V1._KMCL_CLIENT_INTERFACE_V1.VmbChannelGetInterfaceInstance
Ein Zeiger auf die VmbChannelGetInterfaceInstance-Funktion .
_KMCL_CLIENT_INTERFACE_V1._KMCL_CLIENT_INTERFACE_V1.VmbChannelGetMmioSpace
Ein Zeiger auf die Funktion VmbChannelGetMmioSpace .
_KMCL_CLIENT_INTERFACE_V1._KMCL_CLIENT_INTERFACE_V1.VmbChannelGetPointer
Ein Zeiger auf die VmbChannelGetPointer-Funktion .
_KMCL_CLIENT_INTERFACE_V1._KMCL_CLIENT_INTERFACE_V1.VmbChannelInitSetClientContextSize
Ein Zeiger auf die VmbChannelInitSetClientContextSize-Funktion .
_KMCL_CLIENT_INTERFACE_V1._KMCL_CLIENT_INTERFACE_V1.VmbChannelInitSetFlags
Ein Zeiger auf die VmbChannelInitSetFlags-Funktion .
_KMCL_CLIENT_INTERFACE_V1._KMCL_CLIENT_INTERFACE_V1.VmbChannelInitSetFriendlyName
Ein Zeiger auf die Funktion VmbChannelInitSetFriendlyName .
_KMCL_CLIENT_INTERFACE_V1._KMCL_CLIENT_INTERFACE_V1.VmbChannelInitSetMaximumExternalData
Ein Zeiger auf die Funktion VmbChannelInitSetMaximumExternalData .
_KMCL_CLIENT_INTERFACE_V1._KMCL_CLIENT_INTERFACE_V1.VmbChannelInitSetMaximumPacketSize
Ein Zeiger auf die Funktion VmbChannelInitSetMaximumPacketSize .
_KMCL_CLIENT_INTERFACE_V1._KMCL_CLIENT_INTERFACE_V1.VmbChannelInitSetProcessPacketCallbacks
Ein Zeiger auf die Funktion VmbChannelInitSetProcessPacketCallbacks .
_KMCL_CLIENT_INTERFACE_V1._KMCL_CLIENT_INTERFACE_V1.VmbChannelInitSetStateChangeCallbacks
Ein Zeiger auf die VmbChannelInitSetStateChangeCallbacks-Funktion .
_KMCL_CLIENT_INTERFACE_V1._KMCL_CLIENT_INTERFACE_V1.VmbChannelPacketComplete
Ein Zeiger auf die Funktion VmbChannelPacketComplete .
_KMCL_CLIENT_INTERFACE_V1._KMCL_CLIENT_INTERFACE_V1.VmbChannelPacketDeferToPassive
Ein Zeiger auf die VmbChannelPacketDeferToPassive-Funktion .
_KMCL_CLIENT_INTERFACE_V1._KMCL_CLIENT_INTERFACE_V1.VmbChannelPacketFail
Ein Zeiger auf die VmbChannelPacketFail-Funktion .
_KMCL_CLIENT_INTERFACE_V1._KMCL_CLIENT_INTERFACE_V1.VmbChannelPacketGetExternalData
Ein Zeiger auf die Funktion VmbChannelPacketGetExternalData .
_KMCL_CLIENT_INTERFACE_V1._KMCL_CLIENT_INTERFACE_V1.VmbChannelPause
Ein Zeiger auf die VmbChannelPause-Funktion .
_KMCL_CLIENT_INTERFACE_V1._KMCL_CLIENT_INTERFACE_V1.VmbChannelSendSynchronousRequest
Ein Zeiger auf die VmbChannelPause-Funktion .
_KMCL_CLIENT_INTERFACE_V1._KMCL_CLIENT_INTERFACE_V1.VmbChannelSetIncomingProcessingAtPassive
Ein Zeiger auf die Funktion VmbChannelSetIncomingProcessingAtPassive .
_KMCL_CLIENT_INTERFACE_V1._KMCL_CLIENT_INTERFACE_V1.VmbChannelSetInterruptLatency
Ein Zeiger auf die VmbChannelSetInterruptLatency-Funktion .
_KMCL_CLIENT_INTERFACE_V1._KMCL_CLIENT_INTERFACE_V1.VmbChannelSetPointer
Ein Zeiger auf die VmbChannelSetPointer-Funktion .
_KMCL_CLIENT_INTERFACE_V1._KMCL_CLIENT_INTERFACE_V1.VmbChannelSetTransactionQuota
Ein Zeiger auf die Funktion VmbChannelSetTransactionQuota .
_KMCL_CLIENT_INTERFACE_V1._KMCL_CLIENT_INTERFACE_V1.VmbChannelSizeofPacket
Ein Zeiger auf die VmbChannelSizeofPacket-Funktion .
_KMCL_CLIENT_INTERFACE_V1._KMCL_CLIENT_INTERFACE_V1.VmbChannelStart
Ein Zeiger auf die VmbChannelStart-Funktion .
_KMCL_CLIENT_INTERFACE_V1._KMCL_CLIENT_INTERFACE_V1.VmbClientChannelInitSetRingBufferPageCount
Ein Zeiger auf die Funktion VmbClientChannelInitSetRingBufferPageCount .
_KMCL_CLIENT_INTERFACE_V1._KMCL_CLIENT_INTERFACE_V1.VmbClientChannelInitSetTargetPnp
Ein Zeiger auf die Funktion VmbClientChannelInitSetTargetPnp .
_KMCL_CLIENT_INTERFACE_V1._KMCL_CLIENT_INTERFACE_V1.VmbPacketAllocate
Ein Zeiger auf die VmbPacketAllocate-Funktion .
_KMCL_CLIENT_INTERFACE_V1._KMCL_CLIENT_INTERFACE_V1.VmbPacketFree
Ein Zeiger auf die VmbPacketFree-Funktion .
_KMCL_CLIENT_INTERFACE_V1._KMCL_CLIENT_INTERFACE_V1.VmbPacketGetChannel
Ein Zeiger auf die Funktion VmbPacketGetChannel .
_KMCL_CLIENT_INTERFACE_V1._KMCL_CLIENT_INTERFACE_V1.VmbPacketGetPointer
Ein Zeiger auf die VmbPacketGetPointer-Funktion .
_KMCL_CLIENT_INTERFACE_V1._KMCL_CLIENT_INTERFACE_V1.VmbPacketInitialize
Ein Zeiger auf die VmbPacketInitialize-Funktion .
_KMCL_CLIENT_INTERFACE_V1._KMCL_CLIENT_INTERFACE_V1.VmbPacketSend
Ein Zeiger auf die VmbPacketSend-Funktion .
_KMCL_CLIENT_INTERFACE_V1._KMCL_CLIENT_INTERFACE_V1.VmbPacketSendWithExternalMdl
Ein Zeiger auf die Funktion VmbPacketSendWithExternalMdl .
_KMCL_CLIENT_INTERFACE_V1._KMCL_CLIENT_INTERFACE_V1.VmbPacketSendWithExternalPfns
Ein Zeiger auf die Funktion VmbPacketSendWithExternalPfns .
_KMCL_CLIENT_INTERFACE_V1._KMCL_CLIENT_INTERFACE_V1.VmbPacketSetCompletionRoutine
Ein Zeiger auf die Funktion VmbPacketSetCompletionRoutine .
_KMCL_CLIENT_INTERFACE_V1._KMCL_CLIENT_INTERFACE_V1.VmbPacketSetPointer
Ein Zeiger auf die Funktion VmbPacketSetPointer .
_KMCL_CLIENT_INTERFACE_V1.C_ASSERT
_KMCL_CLIENT_INTERFACE_V1._KMCL_CLIENT_INTERFACE_V2
_KMCL_CLIENT_INTERFACE_V1._KMCL_CLIENT_INTERFACE_V2._KMCL_CLIENT_INTERFACE_V2
_KMCL_CLIENT_INTERFACE_V1._KMCL_CLIENT_INTERFACE_V2._KMCL_CLIENT_INTERFACE_V2.VmbChannelPacketGetClientContext
_KMCL_CLIENT_INTERFACE_V1._KMCL_CLIENT_INTERFACE_V2._KMCL_CLIENT_INTERFACE_V2.VmbChannelGetTargetDeviceObject
_KMCL_CLIENT_INTERFACE_V1._KMCL_CLIENT_INTERFACE_V2._KMCL_CLIENT_INTERFACE_V2.VmbChannelGetParentDeviceObject
_KMCL_CLIENT_INTERFACE_V1._KMCL_CLIENT_INTERFACE_V2.C_ASSERT
_KMCL_CLIENT_INTERFACE_V1._KMCL_CLIENT_INTERFACE_V2._KMCL_CLIENT_INTERFACE_V3
_KMCL_CLIENT_INTERFACE_V1._KMCL_CLIENT_INTERFACE_V2._KMCL_CLIENT_INTERFACE_V3._KMCL_CLIENT_INTERFACE_V3
_KMCL_CLIENT_INTERFACE_V1._KMCL_CLIENT_INTERFACE_V2._KMCL_CLIENT_INTERFACE_V3._KMCL_CLIENT_INTERFACE_V3.VmbChannelInitSetBounceBufferSizes
_KMCL_CLIENT_INTERFACE_V1._KMCL_CLIENT_INTERFACE_V2._KMCL_CLIENT_INTERFACE_V3._KMCL_CLIENT_INTERFACE_V3.VmbChannelAllocateBounceBuffer
_KMCL_CLIENT_INTERFACE_V1._KMCL_CLIENT_INTERFACE_V2._KMCL_CLIENT_INTERFACE_V3.C_ASSERT
_KMCL_CLIENT_INTERFACE_V1._KMCL_CLIENT_INTERFACE_V2._KMCL_CLIENT_INTERFACE_V3._KMCL_CLIENT_INTERFACE_V4
_KMCL_CLIENT_INTERFACE_V1._KMCL_CLIENT_INTERFACE_V2._KMCL_CLIENT_INTERFACE_V3._KMCL_CLIENT_INTERFACE_V4._KMCL_CLIENT_INTERFACE_V4
_KMCL_CLIENT_INTERFACE_V1._KMCL_CLIENT_INTERFACE_V2._KMCL_CLIENT_INTERFACE_V3._KMCL_CLIENT_INTERFACE_V4._KMCL_CLIENT_INTERFACE_V4.VmbChannelInitSetMaximumPacketCount
_KMCL_CLIENT_INTERFACE_V1._KMCL_CLIENT_INTERFACE_V2._KMCL_CLIENT_INTERFACE_V3._KMCL_CLIENT_INTERFACE_V4._KMCL_CLIENT_INTERFACE_V4.VmbChannelCreateGpadlFromPfnList
_KMCL_CLIENT_INTERFACE_V1._KMCL_CLIENT_INTERFACE_V2._KMCL_CLIENT_INTERFACE_V3._KMCL_CLIENT_INTERFACE_V4.C_ASSERT
_KMCL_CLIENT_INTERFACE_V1._KMCL_CLIENT_INTERFACE_V2._KMCL_CLIENT_INTERFACE_V3._KMCL_CLIENT_INTERFACE_V4._KMCL_CLIENT_INTERFACE_V5
_KMCL_CLIENT_INTERFACE_V1._KMCL_CLIENT_INTERFACE_V2._KMCL_CLIENT_INTERFACE_V3._KMCL_CLIENT_INTERFACE_V4._KMCL_CLIENT_INTERFACE_V5._KMCL_CLIENT_INTERFACE_V5
_KMCL_CLIENT_INTERFACE_V1._KMCL_CLIENT_INTERFACE_V2._KMCL_CLIENT_INTERFACE_V3._KMCL_CLIENT_INTERFACE_V4._KMCL_CLIENT_INTERFACE_V5._KMCL_CLIENT_INTERFACE_V5.VmbChannelInitSetPrimaryChannel
_KMCL_CLIENT_INTERFACE_V1._KMCL_CLIENT_INTERFACE_V2._KMCL_CLIENT_INTERFACE_V3._KMCL_CLIENT_INTERFACE_V4._KMCL_CLIENT_INTERFACE_V5._KMCL_CLIENT_INTERFACE_V5.VmbChannelInitialize
_KMCL_CLIENT_INTERFACE_V1._KMCL_CLIENT_INTERFACE_V2._KMCL_CLIENT_INTERFACE_V3._KMCL_CLIENT_INTERFACE_V4._KMCL_CLIENT_INTERFACE_V5._KMCL_CLIENT_INTERFACE_V5.VmbChannelSetAllowableDpcCpuUsage
_KMCL_CLIENT_INTERFACE_V1._KMCL_CLIENT_INTERFACE_V2._KMCL_CLIENT_INTERFACE_V3._KMCL_CLIENT_INTERFACE_V4._KMCL_CLIENT_INTERFACE_V5._KMCL_CLIENT_INTERFACE_V5.VmbClientChannelInitSetTargetProcessorIndex
_KMCL_CLIENT_INTERFACE_V1._KMCL_CLIENT_INTERFACE_V2._KMCL_CLIENT_INTERFACE_V3._KMCL_CLIENT_INTERFACE_V4._KMCL_CLIENT_INTERFACE_V5._KMCL_CLIENT_INTERFACE_V5.VmbSizeofChannel
_KMCL_CLIENT_INTERFACE_V1._KMCL_CLIENT_INTERFACE_V2._KMCL_CLIENT_INTERFACE_V3._KMCL_CLIENT_INTERFACE_V4._KMCL_CLIENT_INTERFACE_V5._KMCL_CLIENT_INTERFACE_V5.VmbChannelInitSetInlinePacketContextSize
_KMCL_CLIENT_INTERFACE_V1._KMCL_CLIENT_INTERFACE_V2._KMCL_CLIENT_INTERFACE_V3._KMCL_CLIENT_INTERFACE_V4._KMCL_CLIENT_INTERFACE_V5._KMCL_CLIENT_INTERFACE_V5.VmbPacketGetInlinePacketContextPointer
_KMCL_CLIENT_INTERFACE_V1._KMCL_CLIENT_INTERFACE_V2._KMCL_CLIENT_INTERFACE_V3._KMCL_CLIENT_INTERFACE_V4._KMCL_CLIENT_INTERFACE_V5._KMCL_CLIENT_INTERFACE_V5.VmbChannelInitSetProcessPacketCallbacksEx
_KMCL_CLIENT_INTERFACE_V1._KMCL_CLIENT_INTERFACE_V2._KMCL_CLIENT_INTERFACE_V3._KMCL_CLIENT_INTERFACE_V4._KMCL_CLIENT_INTERFACE_V5._KMCL_CLIENT_INTERFACE_V5.VmbPacketSetCompletionRoutineEx
_KMCL_CLIENT_INTERFACE_V1._KMCL_CLIENT_INTERFACE_V2._KMCL_CLIENT_INTERFACE_V3._KMCL_CLIENT_INTERFACE_V4._KMCL_CLIENT_INTERFACE_V5.C_ASSERT
_KMCL_CLIENT_INTERFACE_V1._KMCL_CLIENT_INTERFACE_V2._KMCL_CLIENT_INTERFACE_V3._KMCL_CLIENT_INTERFACE_V4._KMCL_CLIENT_INTERFACE_V5.KMCL_SERVER_INTERFACE_TYPE
_KMCL_CLIENT_INTERFACE_V1._KMCL_CLIENT_INTERFACE_V2._KMCL_CLIENT_INTERFACE_V3._KMCL_CLIENT_INTERFACE_V4._KMCL_CLIENT_INTERFACE_V5._KMCL_SERVER_INTERFACE_V1
_KMCL_CLIENT_INTERFACE_V1._KMCL_CLIENT_INTERFACE_V2._KMCL_CLIENT_INTERFACE_V3._KMCL_CLIENT_INTERFACE_V4._KMCL_CLIENT_INTERFACE_V5._KMCL_SERVER_INTERFACE_V1._KMCL_SERVER_INTERFACE_V1
_KMCL_CLIENT_INTERFACE_V1._KMCL_CLIENT_INTERFACE_V2._KMCL_CLIENT_INTERFACE_V3._KMCL_CLIENT_INTERFACE_V4._KMCL_CLIENT_INTERFACE_V5._KMCL_SERVER_INTERFACE_V1.C_ASSERT
_KMCL_CLIENT_INTERFACE_V1._KMCL_CLIENT_INTERFACE_V2._KMCL_CLIENT_INTERFACE_V3._KMCL_CLIENT_INTERFACE_V4._KMCL_CLIENT_INTERFACE_V5._KMCL_SERVER_INTERFACE_V1._KMCL_SERVER_INTERFACE_V5
_KMCL_CLIENT_INTERFACE_V1._KMCL_CLIENT_INTERFACE_V2._KMCL_CLIENT_INTERFACE_V3._KMCL_CLIENT_INTERFACE_V4._KMCL_CLIENT_INTERFACE_V5._KMCL_SERVER_INTERFACE_V1._KMCL_SERVER_INTERFACE_V5._KMCL_SERVER_INTERFACE_V5
_KMCL_CLIENT_INTERFACE_V1._KMCL_CLIENT_INTERFACE_V2._KMCL_CLIENT_INTERFACE_V3._KMCL_CLIENT_INTERFACE_V4._KMCL_CLIENT_INTERFACE_V5._KMCL_SERVER_INTERFACE_V1._KMCL_SERVER_INTERFACE_V5.C_ASSERT
Hinweise
Das erste Element dieser Struktur ist eine INTERFACE-Struktur , die die kmCL-Schnittstelle beschreibt, die vom Vmbuskmcl.sys Bustreiber exportiert wird.
Die Funktionszeiger in KMCL_CLIENT_INTERFACE_V1 werden über die KMCL-Schnittstelle (VMBus Kernel Mode Client Library) aufgerufen, die vom Vmbkmcl.sys Bustreiber bereitgestellt wird. Diese Struktur enthält Funktionszeiger für Clientfunktionen.
Um auf Clientfunktionen der KMCL-Schnittstelle zuzugreifen, ordnen Sie eine KMCL_CLIENT_INTERFACE_V1-Struktur für den Empfang der Schnittstelle zu, und rufen Sie dann WdfFdoQueryForInterface oder WdfIoTargetQueryForInterface mit den folgenden Parametern auf:
- Parameter InterfaceType : KMCL_CLIENT_INTERFACE_TYPE
- Size-Parameter :
sizeof(KMCL_CLIENT_INTERFACE_V1)
- Versionsparameter : KMCL_CLIENT_INTERFACE_VERSION_V1
Wenn die Schnittstellenabfragefunktion erfolgreich ist, enthält die KMCL_CLIENT_INTERFACE_V1-Struktur Funktionszeiger, die Sie zum Aufrufen von VMBus-KMCL-Clientfunktionen verwenden können.
Informationen zu Nur-Server-Methoden finden Sie in der KMCL_SERVER_ONLY_METHODS-Struktur .
Weitere Informationen zu treiberdefinierte Schnittstellen finden Sie unter Verwenden Driver-Defined Schnittstellen.
Anforderungen
Anforderung | Wert |
---|---|
Unterstützte Mindestversion (Client) | Windows 10, Version 1803 |
Kopfzeile | vmbuskernelmodeclientlibapi.h |