MbbDeviceReceiveDeviceServiceSessionData-Funktion (mbbcx.h)

Clienttreiber rufen die MbbDeviceReceiveServiceSessionData-Methode auf, um empfangene Gerätedienstsitzungsdaten über das MBBCx-Framework an eine Anwendung zu übergeben.

Syntax

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

Parameter

Device

Ein Handle für ein Framework-Geräteobjekt, das der Clienttreiber aus einem vorherigen Aufruf von WdfDeviceCreate abgerufen hat.

SessionId

Die ID der Gerätedienstsitzung, die von einem vorherigen Aufruf von MbbAdapterGetSessionId abgerufen wurde.

Data

Ein vom Treiber zugewiesenes WDFMEMORY-Objekt, das die Daten enthält, die an die Anwendung übergeben werden sollen.

Rückgabewert

Keine

Bemerkungen

Weitere Informationen finden Sie unter Behandeln von Gerätedienstsitzungen.

Beispiel

Das folgende Beispiel zeigt, wie ein Clienttreiber empfangene DSS-Daten an den DSS-Empfangshandler des Frameworks übergeben kann.

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);
    }
}

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client) Windows 10, Version 1809
Zielplattform Universell
KMDF-Mindestversion 1,27
Kopfzeile mbbcx.h
Bibliothek mbbcxstub.lib
IRQL PASSIVE_LEVEL