Freigeben über


NdisMFreePort-Funktion (ndis.h)

Die funktion NdisMFreePort gibt einen NDIS-Port frei, der zuvor der NdisMAllocatePort--Funktion zugeordnet wurde.

Syntax

NDIS_STATUS NdisMFreePort(
       NDIS_HANDLE      NdisMiniportHandle,
  [in] NDIS_PORT_NUMBER PortNumber
);

Parameter

NdisMiniportHandle

Der Miniportadapterziehpunkt, den NDIS an den MiniportAdapterHandle Parameter des Parameters "MiniportAdapterHandle" übergeben hat MiniportInitializeEx Funktion.

[in] PortNumber

Die Nummer des NDIS-Ports, den NDIS freigeben soll. Der PortNumber-wert ist ein NDIS_PORT_NUMBER Wert, der einen ULONG-Datentyp aufweist. NDIS hat die Portnummer im PortNumber Mitglied des NDIS_PORT_CHARACTERISTICS Struktur, wenn der Miniporttreiber die funktion NdisMAllocatePort aufgerufen hat.

Die Portnummer kann eine Zahl zwischen 1 und 0xffffff sein. Sie können PortNumber- nicht auf Null festlegen, was den Standardport angibt.

Rückgabewert

NdisMFreePort- kann einen der folgenden Werte zurückgeben:

Rückgabecode Beschreibung
NDIS_STATUS_SUCCESS
NDIS hat die Ressourcen für den Port erfolgreich freigegeben.
NDIS_STATUS_INVALID_PORT
NDIS konnte die Ressourcen für den Port nicht freigeben, da die Portnummer ungültig war.
NDIS_STATUS_INVALID_PORT_STATE
NDIS konnte die Ressourcen für den Port nicht freigeben, da sich der Port in einem Zustand befindet, in dem der freie Vorgang ungültig ist. Um den Hafen frei zu geben, muss der Hafen in dem zugewiesenen Zustand sein.
NDIS_STATUS_INVALID_DATA
Die Portnummer, die an der PortNumber Parameter angegeben wurde, war ungültig.

Bemerkungen

Wenn ein Miniporttreiber einen Port durch Aufrufen der NdisMAllocatePort Funktion zugewiesen hat, muss der Treiber den Port freigeben, bevor er von seiner MiniportHaltEx--Funktion zurückkehrt. Wenn der Miniporttreiber den Port durch Ausstellen eines NetEventPortActivation Plug and Play (PnP)-Ereignis aktiviert hat, muss der Treiber ein NetEventPortDeactivation PnP-Ereignis für den Port ausgeben, bevor er den Port freigibt.

Wenn ein Miniporttreiber NdisMFreePort aufruft, um einen Port frei zu geben, gibt NDIS auch die Portnummer frei, die dem freigegebenen Port zugewiesen ist, damit NDIS die Portnummer wiederverwenden kann.

Der Miniporttreiber darf nicht versuchen, den Standardport freizulegen.

Anforderungen

Anforderung Wert
mindestens unterstützte Client- Unterstützt in NDIS 6.0 und höher.
Zielplattform- Universal
Header- ndis.h (include Ndis.h)
Library Ndis.lib
IRQL- <= DISPATCH_LEVEL
DDI-Complianceregeln Irql_Miniport_Driver_Function(ndis)

Siehe auch

NDIS-Standardport-

Freigeben eines NDIS-Port-

MiniportHaltEx

MiniportInitializeEx-

NDIS_PORT_CHARACTERISTICS

NdisMAllocatePort