共用方式為


KMCL_SERVER_ONLY_METHODS結構 (vmbuskernelmodeclientlibapi.h)

KMCL_SERVER_ONLY_METHODS結構包含 VMBus 核心模式用戶端連結庫 (KMCL) 介面之僅限伺服器函式的函式指標。

如需如何存取 KMCL 介面的詳細資訊,請參閱一節。

語法

typedef struct _KMCL_SERVER_ONLY_METHODS {
  PFN_VMB_CHANNEL_MAP_GPADL                                     VmbChannelMapGpadl;
  PFN_VMB_CHANNEL_RESTORE_FROM_BUFFER                           VmbChannelRestoreFromBuffer;
  PFN_VMB_CHANNEL_SAVE_BEGIN                                    VmbChannelSaveBegin;
  PFN_VMB_CHANNEL_SAVE_CONTINUE                                 VmbChannelSaveContinue;
  PFN_VMB_CHANNEL_SAVE_END                                      VmbChannelSaveEnd;
  PFN_VMB_CHANNEL_UNMAP_GPADL                                   VmbChannelUnmapGpadl;
  PFN_VMB_CONVERT_VMBUS_HANDLE_TO_KERNEL_HANDLE                 VmbConvertVmbusHandleToKernelHandle;
  PFN_VMB_PACKET_RESTORE                                        VmbPacketRestore;
  PFN_VMB_SERVER_CHANNEL_INIT_SET_FLAGS                         VmbServerChannelInitSetFlags;
  PFN_VMB_SERVER_CHANNEL_INIT_SET_MMIO_MEGABYTES                VmbServerChannelInitSetMmioMegabytes;
  PFN_VMB_SERVER_CHANNEL_INIT_SET_SAVE_RESTORE_PACKET_CALLBACKS VmbServerChannelInitSetSaveRestorePacketCallbacks;
  PFN_VMB_SERVER_CHANNEL_INIT_SET_TARGET_INTERFACE_ID           VmbServerChannelInitSetTargetInterfaceId;
  PFN_VMB_SERVER_CHANNEL_INIT_SET_TARGET_VTL                    VmbServerChannelInitSetTargetVtl;
  PFN_VMB_SERVER_CHANNEL_INIT_SET_VMBUS_HANDLE                  VmbServerChannelInitSetVmbusHandle;
} KMCL_SERVER_ONLY_METHODS;

成員

VmbChannelMapGpadl

VmbChannelMapGpadl 函式的指標。

VmbChannelRestoreFromBuffer

VmbChannelRestoreFromBuffer 函式的指標。

VmbChannelSaveBegin

VmbChannelSaveBegin 函式的指標。

VmbChannelSaveContinue

VmbChannelSaveContinue 函式的指標。

VmbChannelSaveEnd

VmbChannelSaveEnd 函式的指標。

VmbChannelUnmapGpadl

VmbChannelUnmapGpadl 函式的指標。

VmbConvertVmbusHandleToKernelHandle

VmbConvertVmbusHandleToKernelHandle 函式的指標。

VmbPacketRestore

VmbPacketRestore 函式的指標。

VmbServerChannelInitSetFlags

VmbServerChannelInitSetFlags 函式的指標。

VmbServerChannelInitSetMmioMegabytes

VmbServerChannelInitSetMmioMegabytes 函式的指標。

VmbServerChannelInitSetSaveRestorePacketCallbacks

VmbServerChannelInitSetSaveRestorePacketCallbacks 函式的指標。

VmbServerChannelInitSetTargetInterfaceId

VmbServerChannelInitSetTargetInterfaceId 函式的指標。

VmbServerChannelInitSetTargetVtl

VmbServerChannelInitSetTargetVtl 函式的指標。

VmbServerChannelInitSetVmbusHandle

VmbServerChannelInitSetVmbusHandle 函式的指標。

備註

KMCL_SERVER_ONLY_METHODS中的函式指標是透過 VMBus 核心模式用戶端連結庫 (KMCL) 介面呼叫,由 Vmbkmcl.sys 總線驅動程式提供。 此結構包含僅限伺服器函式的函式指標。

若要存取 KMCL 介面的用戶端和僅限伺服器函式,請配置KMCL_SERVER_INTERFACE_V1結構來接收介面,然後使用下列參數呼叫 WdfFdoQueryForInterface 或 WdfIoTargetQueryForInterface

  • InterfaceType 參數: KMCL_SERVER_INTERFACE_TYPE
  • 大小 參數: sizeof(KMCL_SERVER_INTERFACE_V1)
  • 版本 參數: KMCL_SERVER_INTERFACE_VERSION_V1

KMCL_SERVER_INTERFACE_V1 結構的定義如下,適用於 C 語言程式代碼:

typedef struct _KMCL_SERVER_INTERFACE_V1 {
    KMCL_CLIENT_INTERFACE_V1;
    KMCL_SERVER_ONLY_METHODS;
} KMCL_SERVER_INTERFACE_V1, *PKMCL_SERVER_INTERFACE_V1;

如果介面查詢函式成功, KMCL_SERVER_INTERFACE_V1 結構會同時包含 KMCL_CLIENT_INTERFACE_V1 結構和 KMCL_SERVER_ONLY_METHODS 結構。 KMCL_SERVER_ONLY_METHODS 結構包含可用來呼叫僅限 VMBus KMCL 伺服器函式的函式指標。

如需 KMCL 用戶端方法,請參閱 KMCL_CLIENT_INTERFACE_V1 結構。

如需驅動程式定義介面的詳細資訊,請參閱 使用 Driver-Defined 介面

規格需求

需求
最低支援的用戶端 Windows 10 版本 1809
標頭 vmbuskernelmodeclientlibapi.h

另請參閱

使用 Driver-Defined 介面

WdfFdoQueryForInterface

WdfIoTargetQueryForInterface

KMCL_CLIENT_INTERFACE_V1