共用方式為


MbbDeviceReceiveDeviceServiceSessionData 函式 (mbbcx.h)

用戶端驅動程式會呼叫 MbbDeviceReceiveServiceSessionData 方法,透過 MBBCx 架構將接收的裝置服務會話數據傳遞至應用程式。

語法

void MbbDeviceReceiveDeviceServiceSessionData(
  WDFDEVICE      Device,
  DSS_SESSION_ID SessionId,
  WDFMEMORY      Data
);

參數

Device

用戶端驅動程式從先前呼叫 WdfDeviceCreate 取得的架構裝置物件的句柄。

SessionId

從先前呼叫 MbbAdapterGetSessionId 取得的裝置服務會話標識碼。

Data

驅動程式配置的 WDFMEMORY 物件,其中包含要傳遞至應用程式的數據。

傳回值

備註

如需詳細資訊,請參閱 處理裝置服務會話

範例

下列範例顯示客戶端驅動程式如何將接收的 DSS 數據傳遞至架構的 DSS 接收處理程式。

VOID
MyReceiveDssData(
    _In_ PMY_DEVICE_CONTEXT DeviceContext,
    _In_ ULONG SessionId,
    _In_ PUCHAR InBuffer,
    _In_ ULONG InBufferSize
)
{
    NTSTATUS status = STATUS_SUCCESS;
    WDFMEMORY data;

    // Allocate the WDFMEMORY object from the received data buffer
    status = WdfMemoryAllocatePreallocated(WDF_NO_OBJECT_ATTRIBUTES,
                                            InBuffer,
                                            InBufferSize,
                                            &data);

    // Pass the received data to the framework
    if(NT_SUCCESS(status))
    {
        DeviceContext->DSSPacketsReceivedCount++;

        MbbDeviceReceiveServiceSessionData(DeviceContext->WdfDevice,
                                            SessionId,
                                            data);
        WdfObjectDelete(data);
    }
}

規格需求

需求
最低支援的用戶端 Windows 10 版本 1809
目標平台 Universal
最小 KMDF 版本 1.27
標頭 mbbcx.h
程式庫 mbbcxstub.lib
IRQL PASSIVE_LEVEL