MINIPORT_WDI_TX_DATA_SEND Rückruffunktion (dot11wdi.h)
Wichtig
Dieses Thema ist Teil des in Windows 10 veröffentlichten WDI-Treiber modells. Das WDI-Treibermodell befindet sich im Wartungsmodus und erhält nur Korrekturen mit hoher Priorität. WiFiCx- ist das in Windows 11 veröffentlichte Wi-Fi Treibermodell. Es wird empfohlen, wiFiCx zu verwenden, um die neuesten Features nutzen zu können.
Die MiniportWdiTxDataSend-Handlerfunktion gibt eine RA-TID oder Portwarteschlange an, von der übertragen werden soll. Sie wird im Kontext des TX-Threads aus dem Betriebssystem, der Fortsetzungsanzeige oder einer Arbeitsaufgabe ausgegeben.
Dies ist ein WDI-Miniporthandler innerhalb NDIS_MINIPORT_WDI_DATA_HANDLERS.
Syntax
MINIPORT_WDI_TX_DATA_SEND MiniportWdiTxDataSend;
void MiniportWdiTxDataSend(
[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, der vom IHV miniport in MiniportWdiTalTxRxInitializezurückgegeben wird.
[in] PortId
Die Port-ID.
[in] PeerId
Die Peer-ID.
[in] ExTid
Die erweiterte TID.
[in] NumQueueFrames
Die Länge der Warteschlange in Frames.
[in] NumActiveFrames
Die Gesamtanzahl der Frames in Aktionswarteschlangen (terminierbar).
[in] bRobustnessFlag
Die Robustitätskennzeichnung. Wenn die Stabilitätskennzeichnung auf TRUE festgelegt ist, stellt die NIC eine zuverlässige Lieferung innerhalb einer kleinen Anzahl von Wiederholungen sicher, indem die für den Frame verwendete TX-Datenrate mit CTS und/oder anderen Mechanismen aggressiv verringert wird.
Rückgabewert
Nichts
Bemerkungen
Im Portwarteschlangenmodus werden die WDI_PEER_ID und WDI_EXTENDED_TID auf Wildcards festgelegt. Im Kontext der Sendeanforderung stellt 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 entfernt werden können, gibt die TxEngine NdisWdiTxSendPauseIndication im selben Kontext anstelle von NdisWdiTxDequeueIndicationaus.
Der TxEngine muss eine Übertragung vollständig ausstellen und vollständige Hinweise senden, um den Besitz aller Frames zurückzugeben, die es an TxMgr dequeues. Wenn die Übertragung abgeschlossen einen Fehlercode enthält, darf der TxEngine keinen Sendeabschluss ausstellen.
Beispiele
Um eine MiniportWdiTxDataSend-Funktion zu definieren, müssen Sie zuerst eine Funktionsdeklaration bereitstellen, die den Typ der Funktion identifiziert, die Sie definieren. Windows stellt eine Reihe von Funktionstypen für Treiber bereit. Durch das Deklarieren einer Funktion mithilfe der Funktionstypen können Codeanalyse für Treiber, statische Treiberüberprüfung (SDV) und andere Überprüfungstools Fehler finden, und es ist eine Anforderung zum Schreiben von Treibern für das Windows-Betriebssystem.
Um beispielsweise eine MiniportWdiTxDataSend-Funktion zu definieren, die den Namen "MyTxDataSend" hat, verwenden Sie den MINIPORT_WDI_TX_DATA_SEND Typ, wie in diesem Codebeispiel gezeigt:
MINIPORT_WDI_TX_DATA_SEND MyTxDataSend;
Implementieren Sie dann Ihre Funktion wie folgt:
_Use_decl_annotations_
VOID
MyTxDataSend(
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_DATA_SEND Funktionstyp wird in der Headerdatei dot11wdi.h definiert. Um Fehler genauer zu identifizieren, wenn Sie die Codeanalysetools ausführen, müssen Sie der Funktionsdefinition die Use_decl_annotations Anmerkung hinzufügen. Die Use_decl_annotations Anmerkung stellt sicher, dass die Anmerkungen, die auf den Funktionstyp MINIPORT_WDI_TX_DATA_SEND in der Headerdatei angewendet werden, verwendet 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_annotationsfinden Sie unter Annotating Function Behavior.
Anforderungen
Anforderung | Wert |
---|---|
mindestens unterstützte Client- | Windows 10 |
mindestens unterstützte Server- | Windows Server 2016 |
Zielplattform- | Fenster |
Header- | dot11wdi.h |