WdfDmaTransactionSetMaximumLength-Funktion (wdfdmatransaction.h)
[Gilt nur für KMDF]
Die WdfDmaTransactionSetMaximumLength Methode legt die maximale Länge für die DMA-Übertragungen fest, die einer angegebenen DMA-Transaktion zugeordnet sind.
Syntax
void WdfDmaTransactionSetMaximumLength(
[in] WDFDMATRANSACTION DmaTransaction,
[in] size_t MaximumLength
);
Die Parameter
[in] DmaTransaction
Ein Handle für ein DMA-Transaktionsobjekt, das der Treiber aus einem vorherigen Aufruf von WdfDmaTransactionCreateabgerufen hat.
[in] MaximumLength
Die maximale Größe in Bytes, die das Gerät in einem einzigen DMA-Übertragungsvorgang verarbeiten kann. Wenn Ihr Treiber auf Versionen von Microsoft Windows-Betriebssystemen ausgeführt werden muss, die maximal 16 Kartenregisterunterstützen, muss MaximumLength- kleiner als 65536 sein.
Der MaximumLength Wert gilt nur für die angegebene DMA-Transaktion, wie folgt:
- Wenn der angegebene Wert kleiner als der Standardwert ist, den der in der WDF_DMA_ENABLER_CONFIG-Struktur angegebene Treiber hat, überschreibt der angegebene Wert den Standardwert.
- Wenn der angegebene Wert größer als der Standardwert ist, wird der angegebene Wert ignoriert.
Rückgabewert
Nichts
Bemerkungen
Wenn der Treiber ein ungültiges Objekthandle bereitstellt, tritt eine Fehlerüberprüfung auf.
Ihr Treiber muss die DMA-Transaktion initialisieren, bevor WdfDmaTransactionSetMaximumLengthaufgerufen wird.
Informationen zum Initialisieren einer DMA-Transaktion finden Sie unter Erstellen und Initialisieren einer DMA-Transaktion.
Beispiele
Im folgenden Codebeispiel wird die maximale Übertragungslänge auf einen treiberdefinierten Wert für eine angegebene DMA-Transaktion festgelegt.
WdfDmaTransactionSetMaximumLength(
dmaTransaction,
MAX_TRANSFER_LENGTH/2,
);
Anforderungen
Anforderung | Wert |
---|---|
Zielplattform | universell |
Minimale KMDF-Version | 1.0 |
Kopfzeile | wdfdmatransaction.h (include Wdf.h) |
Bibliothek | Wdf01000.sys (siehe Framework-Bibliotheksversionsverwaltung.) |
IRQL | <=DISPATCH_LEVEL |
DDI-Complianceregeln | DriverCreate(kmdf) |