Freigeben über


MINIPORT_WDI_TX_TAL_SEND Rückruffunktion (dot11wdi.h)

Wichtig

Dieses Thema ist Teil des WDI-Treibermodells, das in Windows 10 veröffentlicht wurde. Das WDI-Treibermodell befindet sich im Wartungsmodus und erhält nur Korrekturen mit hoher Priorität. WiFiCx ist das Wi-Fi Treibermodell, das in Windows 11 veröffentlicht wurde. Es wird empfohlen, wiFiCx zu verwenden, um die neuesten Features zu nutzen.

Die MiniportWdiTxTalSend-Handlerfunktion gibt eine RA-TID oder Portwarteschlange an, von der übertragen werden soll. TxMgr verwendet diese Anforderung anstelle von MiniportWdiTxDataSend für RA-TID-Warteschlangen mit einer erweiterten TID im reservierten IHV-Bereich. Sie wird im Kontext eines TX-Threads vom Betriebssystem, einer Fortsetzungsanzeige oder eines Arbeitselements ausgegeben.

Dies ist ein WDI-Miniporthandler innerhalb NDIS_MINIPORT_WDI_DATA_HANDLERS.

Hinweis Sie müssen die Funktion mit dem typ MINIPORT_WDI_TX_TAL_SEND deklarieren. Weitere Informationen finden Sie im folgenden Abschnitt Beispiele.
 

Syntax

MINIPORT_WDI_TX_TAL_SEND MiniportWdiTxTalSend;

void MiniportWdiTxTalSend(
  [in] TAL_TXRX_HANDLE MiniportTalTxRxContext,
  [in] WDI_PORT_ID PortId,
  [in] WDI_PEER_ID PeerId,
  [in] WDI_EXTENDED_TID ExTid,
  [in] UINT16 NumQueueFrames,
  [in] UINT32 NumActiveFrames,
  [in] BOOLEAN bRobustnessFlag
)
{...}

Parameter

[in] MiniportTalTxRxContext

TAL-Gerätehandle, das vom IHV-Miniport in MiniportWdiTalTxRxInitialize zurückgegeben wird.

[in] PortId

Die Port-ID.

[in] PeerId

Die Peer-ID.

[in] ExTid

Die erweiterte TID.

[in] NumQueueFrames

Die Warteschlangenlänge in Frames.

[in] NumActiveFrames

Die Gesamtanzahl von Frames in Aktionswarteschlangen (planbar).

[in] bRobustnessFlag

Das Robustitätsflag. Wenn das Robustitätsflag auf TRUE festgelegt ist, sorgt die NIC für eine zuverlässige Übermittlung innerhalb einer kleinen Anzahl von Wiederholungen, indem die für den Frame verwendete TX-Datenrate mithilfe von CTS und/oder anderen Mechanismen aggressiv gesenkt wird.

Rückgabewert

Keine

Bemerkungen

Im Portwarteschlangenmodus sind PeerId und ExTid auf Wildcards festgelegt. Im Kontext der Sendeanforderung gibt die TxEngine NdisWdiTxDequeueIndication aus, um den Besitz einer Reihe von Frames aus der FIFO RA-TID-Warteschlange zu übernehmen und sie an das Ziel zu übertragen. Wenn keine Frames aus der Warteschlange entfernt werden können, gibt die TxEngine NdisWdiTxSendPauseIndication im selben Kontext anstelle von NdisWdiTxDequeueIndication aus.

Die TxEngine muss eine vollständige Übertragung ausgeben und vollständige Hinweise senden, um den Besitz aller Frames zurückzugeben, die sie an TxMgr aus der Warteschlange übergeben. Wenn die Übertragung abgeschlossen einen Fehlercode enthält, darf die TxEngine keinen Sendeabschluss ausgeben.

PeerId wird auf Wildcard festgelegt, wenn der Port als Zugriffspunkt/Wi-Fi Direct Gruppenbesitzer konfiguriert ist und der Frame eine Gruppenadresse als Empfängeradresse aufweist.

Bei einem Fehler schließt die TxEngine die Frameübertragungen an das Ziel mit dem entsprechenden Fehler status ab.

Beispiele

Um eine MiniportWdiTxTalSend-Funktion zu definieren, müssen Sie zunächst eine Funktionsdeklaration bereitstellen, die den Typ der von Ihnen definierten Funktion identifiziert. Windows bietet eine Reihe von Funktionstypen für Treiber. Das Deklarieren einer Funktion mithilfe der Funktionstypen hilft der Codeanalyse für Treiber, der statischen Treiberüberprüfung (Static Driver Verifier , SDV) und anderen Überprüfungstools, Fehler zu finden, und es ist eine Voraussetzung für das Schreiben von Treibern für das Windows-Betriebssystem.

Um beispielsweise eine MiniportWdiTxTalSend-Funktion mit dem Namen "MyTxTalSend" zu definieren, verwenden Sie den typ MINIPORT_WDI_TX_TAL_SEND , wie in diesem Codebeispiel gezeigt:

MINIPORT_WDI_TX_TAL_SEND MyTxTalSend;

Implementieren Sie dann Ihre Funktion wie folgt:

_Use_decl_annotations_
VOID
 MyTxTalSend(
    TAL_TXRX_HANDLE MiniportTalTxRxContext,
    WDI_PORT_ID PortId,
    WDI_PEER_ID PeerId,
    WDI_EXTENDED_TID ExTid,
    UINT16 NumQueueFrames,
    UINT32 NumActiveFrames,
    BOOLEAN bRobustnessFlag
    )
  {...}

Der MINIPORT_WDI_TX_TAL_SEND Funktionstyp ist in der Headerdatei dot11wdi.h definiert. Um Fehler beim Ausführen der Codeanalysetools genauer zu identifizieren, müssen Sie der Funktionsdefinition die anmerkung Use_decl_annotations hinzufügen. Die Use_decl_annotations Anmerkung stellt sicher, dass die Anmerkungen verwendet werden, die auf den MINIPORT_WDI_TX_TAL_SEND Funktionstyp in der Headerdatei angewendet werden. Weitere Informationen zu den Anforderungen für Funktionsdeklarationen finden Sie unter Deklarieren von Funktionen mithilfe von Funktionsrollentypen für NDIS-Treiber.

Informationen zu Use_decl_annotations finden Sie unter Verhalten von Funktionen mit Anmerkungen.

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client) Windows 10
Unterstützte Mindestversion (Server) Windows Server 2016
Zielplattform Windows
Kopfzeile dot11wdi.h

Weitere Informationen

MiniportWdiTxDataSend

NDIS_MINIPORT_WDI_DATA_HANDLERS

NdisWdiTxDequeueIndication

NdisWdiTxSendPauseIndication

TAL_TXRX_HANDLE

WDI TX-Pfad

WDI_EXTENDED_TID

WDI_PEER_ID

WDI_PORT_ID