Freigeben über


NdisReadConfiguration-Funktion (ndis.h)

Die NdisReadConfiguration--Funktion gibt den Wert eines benannten Eintrags des angegebenen Typs aus der Registrierung zurück, wenn das Handle zu einem geöffneten Registrierungsschlüssel gegeben ist. Diese Funktion muss in Bezug auf sich selbst und die NdisWriteConfiguration Funktion fortlaufend aufgerufen werden.

Syntax

void NdisReadConfiguration(
  [out] PNDIS_STATUS                  Status,
  [out] PNDIS_CONFIGURATION_PARAMETER *ParameterValue,
  [in]  NDIS_HANDLE                   ConfigurationHandle,
  [in]  PNDIS_STRING                  Keyword,
  [in]  NDIS_PARAMETER_TYPE           ParameterType
);

Parameter

[out] Status

Ein Zeiger auf eine vom Aufrufer bereitgestellte Variable, in der diese Funktion den Status des Aufrufs als einen der folgenden Werte zurückgibt.

Wert Bedeutung
NDIS_STATUS_SUCCESS
Der Puffer bei ParameterValue- enthält die zurückgegebenen Konfigurationsinformationen.
NDIS_STATUS_RESOURCES
NDIS konnte ressourcen, in der Regel genügend Arbeitsspeicher, nicht zuordnen, um die angeforderten Informationen zurückzugeben.
NDIS_STATUS_FAILURE
Die angeforderten Informationen konnten nicht unter dem geöffneten Registrierungsschlüssel gefunden werden, der vom ConfigurationHandle-festgelegt wurde.

[out] ParameterValue

Ein Zeiger auf einen Speicherspeicherort, an dem NDIS einen Zeiger auf einen NDIS_CONFIGURATION_PARAMETER Struktur, wenn der Aufruf von NdisReadConfiguration erfolgreich ist. NDIS weist Speicher für die NDIS_CONFIGURATION_PARAMETER Struktur.

[in] ConfigurationHandle

Das Handle zu einem Registrierungsschlüssel, der von der NdisOpenConfigurationExzurückgegeben wurde, NdisOpenConfigurationKeyByIndexoder NdisOpenConfigurationKeyByName Funktion.

[in] Keyword

Ein Zeiger auf einen vom Aufrufer bereitgestellten NDIS_STRING Typ, der eine gezählte Zeichenfolge beschreibt, im Systemstandardzeichensatz, wobei der Name des Eintrags unter dem geöffneten Registrierungsschlüssel angegeben wird, für den der Wert zurückgegeben werden soll.

Alternativ können Sie auf einen vom Aufrufer bereitgestellten NDIS_STRING_CONSTANT zeigen, der einen der folgenden vordefinierten Eintragsnamen zusammen mit vordefinierten Rückgabewerten angibt:

Vordefinierter Eintragsname Vordefinierte Rückgabewerte
ProcessorType
  • NdisProcessorX86
  • NdisProcessorAmd64
  • NdisProcessorIA64
  • NdisProcessorAlpha
Folgendes ist nur möglich, wenn ein alter (pre-NDIS 6.0)-Treiber:
  • NdisProcessorMips
  • NdisProcessorPpc
NdisVersion 0xMMMMmmmm, wobei MMMM- die Hauptversion ist und mmmm die Nebenversionsnummer ist. Beispielsweise gibt 0x00050000 an, dass die höchste vom System unterstützte NDIS-Version Die Hauptversion 5, Nebenversion 0, ist.

[in] ParameterType

Der Typ des Werteintrags, der als einer der NDIS_PARAMETER_TYPE Enumerationswerte angegeben wird. Dieser Parameter wird in Windows NT und höheren Versionen ignoriert.

Rückgabewert

Nichts

Bemerkungen

In der Konfigurationsregistrierung von Windows 2000 und höheren Versionen ist ein NDIS-Schlüsselwort- ein Synonym für einen Werteintragsnamen. Ein solcher Name ist eine gezählte Sequenz von Unicode-Zeichen, die mit einem NULL-beendet wird.

Jeder NDIS-Treiber kann Konfigurationsinformationen in der Registrierung selbst mithilfe der AddReg--Direktive in der INF-Datei einrichten. Beispielsweise kann ein Protokolltreiber seinen eigenen Namen als Eintrag mit einem vorformatierten Zeichenfolgenwert speichern, der in Aufrufen an die NdisRegisterProtocolDriver Funktion. Weitere Informationen finden Sie unter Add-registry-sections in a Network INF File.

Jeder Miniporttreiber hat auch Werteinträge in der Registrierung zugeordnet. Die Werteinträge für einen bestimmten Miniporttreiber können geräteabhängig sein. Beispielsweise kann ein Miniporttreiber Schlüsselwörter wie *FlowControl, *SpeedDuplex und *InterruptModeration enthalten. Der wert, der einem solchen NDIS-Schlüsselwort zugeordnet ist, kann entweder eine ganze Zahl (ULONG-Typ) oder eine Zeichenfolge (NDIS_STRING-Typ) sein. Beispielsweise kann der Satz möglicher Werte für den bereits erwähnten *FlowControl-Eintrag NdisParameterInteger Werte 0, 1, 2 oder 3 oder die Entsprechungen im Hexadezimalwert als NdisParameterHexInteger Werte sein.

NdisReadConfiguration-Puffer und kopiert die vom Aufrufer bereitgestellte Zeichenfolge bei Schlüsselwort- und gibt den Speicher frei, der für diese Kopie zugewiesen wird, bevor es die Steuerung an den Aufrufer zurückgibt. Der Speicher, den er für die NDIS_CONFIGURATION_PARAMETER Struktur wird freigegeben, wenn der Treiber das ConfigurationHandle mit der NdisCloseConfiguration-Funktion freigibt. Der Aufrufer von NdisReadConfiguration ist dafür verantwortlich, die gepufferte Zeichenfolge bei Schlüsselwort-freizugeben.

Beachten Sie, dass NDIS keine Werte überprüft, die ein Treiber aus der Registrierung liest. Der Aufrufer von NdisReadConfiguration darf daher keine Annahmen zu solchen Werten machen und jeden Wert überprüfen, der aus der Registrierung gelesen wird. Wenn der Aufrufer feststellt, dass ein Wert außerhalb der Grenzen liegt, sollte er stattdessen einen Standardwert verwenden.

Weitere Informationen zu Setup- und Installationsdateien finden Sie unter Device Installation Overview.

Anforderungen

Anforderung Wert
mindestens unterstützte Client- Unterstützt für NDIS 6.0- und NDIS 5.1-Treiber (siehe NdisReadConfiguration (NDIS 5.1)) in Windows Vista. Unterstützt für NDIS 5.1-Treiber (siehe NdisReadConfiguration (NDIS 5.1)) in Windows XP.
Zielplattform- Universal
Header- ndis.h (include Ndis.h)
Library Ndis.lib
IRQL- PASSIVE_LEVEL
DDI-Complianceregeln Irql_Miscellaneous_Function(ndis)

Siehe auch

ANSI_STRING

NDIS_CONFIGURATION_PARAMETER

NDIS_PARAMETER_TYPE

NdisAnsiStringToUnicodeString

NdisCloseConfiguration

NdisFreeString-

NdisInitAnsiString

NdisInitUnicodeString

NdisInitializeString-

NdisOpenConfigurationEx

NdisOpenConfigurationKeyByIndex NdisOpenConfigurationKeyByName

NdisReadNetworkAddress

NdisUnicodeStringToAnsiString

NdisWriteConfiguration

UNICODE_STRING