Freigeben über


NDIS_PD_ALLOCATE_QUEUE Rückruffunktion (ndis.h)

Die PacketDirect(PD)-Plattform ruft die NdisPDAllocateQueue-Funktion eines PD-fähigen Miniporttreibers auf, um eine Warteschlange zuzuweisen.

Note You must declare the function by using the NDIS_PD_ALLOCATE_QUEUE type. Weitere Informationen finden Sie im folgenden Abschnitt "Beispiele".

 

Syntax

NDIS_PD_ALLOCATE_QUEUE NdisPdAllocateQueue;

NTSTATUS() NdisPdAllocateQueue(
  [in] NDIS_PD_PROVIDER_HANDLE ProviderHandle,
  [in] const NDIS_PD_QUEUE_PARAMETERS *QueueParameters,
       NDIS_PD_QUEUE **NdisPDQueue
)
{...}

Parameter

[in] ProviderHandle

Ein Anbieterhandle, das das ANBIETERobjekt des PD-fähigen Miniporttreibers identifiziert.

[in] QueueParameters

Alle Parameter, die der Warteschlange zugeordnet sind. Weitere Informationen finden Sie in der NDIS_PD_QUEUE_PARAMETERS Struktur.

NdisPDQueue

Ein Zeiger auf die Warteschlange, die zugewiesen werden soll. Weitere Informationen finden Sie in der NDIS_PD_QUEUE Struktur.

Rückgabewert

Diese Funktion gibt STATUS_SUCCESS zurück, wenn sie erfolgreich abgeschlossen ist, andernfalls wird der entsprechende Fehlercode zurückgegeben.

Bemerkungen

beispiele für

Um eine NdisPDAllocateQueue--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.

Wenn Sie beispielsweise eine NdisPDAllocateQueue-Funktion definieren möchten, die den Namen "MyPDAllocateQueue" hat, verwenden Sie den NDIS_PD_ALLOCATE_QUEUE Typ, wie in diesem Codebeispiel gezeigt:

NDIS_PD_ALLOCATE_QUEUE MyPDAllocateQueue;

Implementieren Sie dann Ihre Funktion wie folgt:

_Use_decl_annotations_
NTSTATUS
 MyPDAllocateQueue(
    NDIS_PD_PROVIDER_HANDLE  ProviderHandle,
    CONST NDIS_PD_QUEUE_PARAMETERS*  QueueParameters,
    NDIS_PD_QUEUE**  NdisPDQueue
    )
  {...}

Der NDIS_PD_ALLOCATE_QUEUE Funktionstyp wird in der Headerdatei "Ntddndis.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 NDIS_PD_ALLOCATE_QUEUE 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- ndis.h
IRQL- PASSIVE_LEVEL