KMCL_SERVER_ONLY_METHODS_V5 structure (vmbuskernelmodeclientlibapi.h)

La structure KMCL_CLIENT_INTERFACE_V1 contient des pointeurs de fonction pour les fonctions clientes pour l’interface KMCL (Kernel Mode Client Library) VMBus.

Pour plus d’informations sur l’accès à l’interface KMCL, consultez la section Remarques.

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;

Héritage

La structure KMCL_SERVER_ONLY_METHODS_V5 implémente KMCL_SERVER_ONLY_METHODS.

Membres

_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

Pointeur vers la fonction VmbChannelAllocate .

_KMCL_CLIENT_INTERFACE_V1._KMCL_CLIENT_INTERFACE_V1.VmbChannelCleanup

Pointeur vers la fonction VmbChannelCleanup .

_KMCL_CLIENT_INTERFACE_V1._KMCL_CLIENT_INTERFACE_V1.VmbChannelCreateGpadlFromBuffer

Pointeur vers la fonction VmbChannelCreateGpadlFromBuffer .

_KMCL_CLIENT_INTERFACE_V1._KMCL_CLIENT_INTERFACE_V1.VmbChannelCreateGpadlFromMdl

Pointeur vers la fonction VmbChannelCreateGpadlFromMdl .

_KMCL_CLIENT_INTERFACE_V1._KMCL_CLIENT_INTERFACE_V1.VmbChannelDeleteGpadl

Pointeur vers la fonction VmbChannelDeleteGpadl .

_KMCL_CLIENT_INTERFACE_V1._KMCL_CLIENT_INTERFACE_V1.VmbChannelDisable

Pointeur vers la fonction VmbChannelDisable .

_KMCL_CLIENT_INTERFACE_V1._KMCL_CLIENT_INTERFACE_V1.VmbChannelEnable

Pointeur vers la fonction VmbChannelEnable .

_KMCL_CLIENT_INTERFACE_V1._KMCL_CLIENT_INTERFACE_V1.VmbChannelGetInterfaceInstance

Pointeur vers la fonction VmbChannelGetInterfaceInstance .

_KMCL_CLIENT_INTERFACE_V1._KMCL_CLIENT_INTERFACE_V1.VmbChannelGetMmioSpace

Pointeur vers la fonction VmbChannelGetMmioSpace .

_KMCL_CLIENT_INTERFACE_V1._KMCL_CLIENT_INTERFACE_V1.VmbChannelGetPointer

Pointeur vers la fonction VmbChannelGetPointer .

_KMCL_CLIENT_INTERFACE_V1._KMCL_CLIENT_INTERFACE_V1.VmbChannelInitSetClientContextSize

Pointeur vers la fonction VmbChannelInitSetClientContextSize .

_KMCL_CLIENT_INTERFACE_V1._KMCL_CLIENT_INTERFACE_V1.VmbChannelInitSetFlags

Pointeur vers la fonction VmbChannelInitSetFlags .

_KMCL_CLIENT_INTERFACE_V1._KMCL_CLIENT_INTERFACE_V1.VmbChannelInitSetFriendlyName

Pointeur vers la fonction VmbChannelInitSetFriendlyName .

_KMCL_CLIENT_INTERFACE_V1._KMCL_CLIENT_INTERFACE_V1.VmbChannelInitSetMaximumExternalData

Pointeur vers la fonction VmbChannelInitSetMaximumExternalData .

_KMCL_CLIENT_INTERFACE_V1._KMCL_CLIENT_INTERFACE_V1.VmbChannelInitSetMaximumPacketSize

Pointeur vers la fonction VmbChannelInitSetMaximumPacketSize .

_KMCL_CLIENT_INTERFACE_V1._KMCL_CLIENT_INTERFACE_V1.VmbChannelInitSetProcessPacketCallbacks

Pointeur vers la fonction VmbChannelInitSetProcessPacketCallbacks .

_KMCL_CLIENT_INTERFACE_V1._KMCL_CLIENT_INTERFACE_V1.VmbChannelInitSetStateChangeCallbacks

Pointeur vers la fonction VmbChannelInitSetStateChangeCallbacks .

_KMCL_CLIENT_INTERFACE_V1._KMCL_CLIENT_INTERFACE_V1.VmbChannelPacketComplete

Pointeur vers la fonction VmbChannelPacketComplete .

_KMCL_CLIENT_INTERFACE_V1._KMCL_CLIENT_INTERFACE_V1.VmbChannelPacketDeferToPassive

Pointeur vers la fonction VmbChannelPacketDeferToPassive .

_KMCL_CLIENT_INTERFACE_V1._KMCL_CLIENT_INTERFACE_V1.VmbChannelPacketFail

Pointeur vers la fonction VmbChannelPacketFail .

_KMCL_CLIENT_INTERFACE_V1._KMCL_CLIENT_INTERFACE_V1.VmbChannelPacketGetExternalData

Pointeur vers la fonction VmbChannelPacketGetExternalData .

_KMCL_CLIENT_INTERFACE_V1._KMCL_CLIENT_INTERFACE_V1.VmbChannelPause

Pointeur vers la fonction VmbChannelPause .

_KMCL_CLIENT_INTERFACE_V1._KMCL_CLIENT_INTERFACE_V1.VmbChannelSendSynchronousRequest

Pointeur vers la fonction VmbChannelPause .

_KMCL_CLIENT_INTERFACE_V1._KMCL_CLIENT_INTERFACE_V1.VmbChannelSetIncomingProcessingAtPassive

Pointeur vers la fonction VmbChannelSetIncomingProcessingAtPassive .

_KMCL_CLIENT_INTERFACE_V1._KMCL_CLIENT_INTERFACE_V1.VmbChannelSetInterruptLatency

Pointeur vers la fonction VmbChannelSetInterruptLatency .

_KMCL_CLIENT_INTERFACE_V1._KMCL_CLIENT_INTERFACE_V1.VmbChannelSetPointer

Pointeur vers la fonction VmbChannelSetPointer .

_KMCL_CLIENT_INTERFACE_V1._KMCL_CLIENT_INTERFACE_V1.VmbChannelSetTransactionQuota

Pointeur vers la fonction VmbChannelSetTransactionQuota .

_KMCL_CLIENT_INTERFACE_V1._KMCL_CLIENT_INTERFACE_V1.VmbChannelSizeofPacket

Pointeur vers la fonction VmbChannelSizeofPacket .

_KMCL_CLIENT_INTERFACE_V1._KMCL_CLIENT_INTERFACE_V1.VmbChannelStart

Pointeur vers la fonction VmbChannelStart .

_KMCL_CLIENT_INTERFACE_V1._KMCL_CLIENT_INTERFACE_V1.VmbClientChannelInitSetRingBufferPageCount

Pointeur vers la fonction VmbClientChannelInitSetRingBufferPageCount .

_KMCL_CLIENT_INTERFACE_V1._KMCL_CLIENT_INTERFACE_V1.VmbClientChannelInitSetTargetPnp

Pointeur vers la fonction VmbClientChannelInitSetTargetPnp .

_KMCL_CLIENT_INTERFACE_V1._KMCL_CLIENT_INTERFACE_V1.VmbPacketAllocate

Pointeur vers la fonction VmbPacketAllocate .

_KMCL_CLIENT_INTERFACE_V1._KMCL_CLIENT_INTERFACE_V1.VmbPacketFree

Pointeur vers la fonction VmbPacketFree .

_KMCL_CLIENT_INTERFACE_V1._KMCL_CLIENT_INTERFACE_V1.VmbPacketGetChannel

Pointeur vers la fonction VmbPacketGetChannel .

_KMCL_CLIENT_INTERFACE_V1._KMCL_CLIENT_INTERFACE_V1.VmbPacketGetPointer

Pointeur vers la fonction VmbPacketGetPointer .

_KMCL_CLIENT_INTERFACE_V1._KMCL_CLIENT_INTERFACE_V1.VmbPacketInitialize

Pointeur vers la fonction VmbPacketInitialize .

_KMCL_CLIENT_INTERFACE_V1._KMCL_CLIENT_INTERFACE_V1.VmbPacketSend

Pointeur vers la fonction VmbPacketSend .

_KMCL_CLIENT_INTERFACE_V1._KMCL_CLIENT_INTERFACE_V1.VmbPacketSendWithExternalMdl

Pointeur vers la fonction VmbPacketSendWithExternalMdl .

_KMCL_CLIENT_INTERFACE_V1._KMCL_CLIENT_INTERFACE_V1.VmbPacketSendWithExternalPfns

Pointeur vers la fonction VmbPacketSendWithExternalPfns .

_KMCL_CLIENT_INTERFACE_V1._KMCL_CLIENT_INTERFACE_V1.VmbPacketSetCompletionRoutine

Pointeur vers la fonction VmbPacketSetCompletionRoutine .

_KMCL_CLIENT_INTERFACE_V1._KMCL_CLIENT_INTERFACE_V1.VmbPacketSetPointer

Pointeur vers la fonction 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

Remarques

Le premier membre de cette structure est une structure INTERFACE qui décrit l’interface KMCL exportée par le pilote de bus Vmbuskmcl.sys.

Les pointeurs de fonction dans KMCL_CLIENT_INTERFACE_V1 sont appelés via l’interface KMCL (Kernel Mode Client Library) VMBus, fournie par le pilote de bus Vmbkmcl.sys. Cette structure contient des pointeurs de fonction pour les fonctions clientes.

Pour accéder aux fonctions clientes de l’interface KMCL, allouez une structure KMCL_CLIENT_INTERFACE_V1 pour recevoir l’interface, puis appelez WdfFdoQueryForInterface ou WdfIoTargetQueryForInterface avec les paramètres suivants :

  • Paramètre InterfaceType : KMCL_CLIENT_INTERFACE_TYPE
  • Paramètre Size : sizeof(KMCL_CLIENT_INTERFACE_V1)
  • Paramètre de version : KMCL_CLIENT_INTERFACE_VERSION_V1

Si la fonction de requête d’interface réussit, la structure KMCL_CLIENT_INTERFACE_V1 contient des pointeurs de fonction que vous pouvez utiliser pour appeler des fonctions clientes KMCL VMBus.

Pour les méthodes serveur uniquement, consultez la structure KMCL_SERVER_ONLY_METHODS .

Pour plus d’informations sur les interfaces définies par le pilote, consultez Utilisation d’interfaces Driver-Defined.

Configuration requise

Condition requise Valeur
Client minimal pris en charge Windows 10 version 1803
En-tête vmbuskernelmodeclientlibapi.h

Voir aussi

Utilisation d’interfaces Driver-Defined

WdfFdoQueryForInterface

WdfIoTargetQueryForInterface

KMCL_SERVER_ONLY_METHODS