Freigeben über


NdisReadConfiguration-Funktion (ndis.h)

The NdisReadConfiguration function returns the value of a named entry of the specified type from the registry, given the handle to an open registry key. This function must be invoked serially with respect to itself and the NdisWriteConfiguration function.

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
);

Parameters

[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.

Value Meaning
NDIS_STATUS_SUCCESS
The buffer at ParameterValue contains the returned configuration information.
NDIS_STATUS_RESOURCES
NDIS konnte ressourcen, in der Regel genügend Arbeitsspeicher, nicht zuordnen, um die angeforderten Informationen zurückzugeben.
NDIS_STATUS_FAILURE
The requested information could not be found under the opened registry key designated by the ConfigurationHandle.

[out] ParameterValue

Ein Zeiger auf einen Speicherspeicherort, an dem NDIS einen Zeiger auf einen NDIS_CONFIGURATION_PARAMETER structure if the call to NdisReadConfiguration is successful. NDIS weist Speicher für die NDIS_CONFIGURATION_PARAMETER structure.

[in] ConfigurationHandle

The handle to a registry key that was returned by the NdisOpenConfigurationEx, NdisOpenConfigurationKeyByIndex, or NdisOpenConfigurationKeyByName function.

[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, where MMMM is the major version and mmmm is the minor version number. Beispielsweise gibt 0x00050000 an, dass die höchste vom System unterstützte NDIS-Version Die Hauptversion 5, Nebenversion 0, ist.

[in] ParameterType

The type of the value entry that is specified as one of the NDIS_PARAMETER_TYPE enumeration values. Dieser Parameter wird in Windows NT und höheren Versionen ignoriert.

Return value

None

Remarks

In the configuration registry of Windows 2000 and later versions, an NDIS keyword is a synonym for a value entry name. Such a name is a counted sequence of Unicode characters, terminated with a NULL.

Every NDIS driver can set up configuration information in the registry for itself using the AddReg directive in its INF file. Beispielsweise kann ein Protokolltreiber seinen eigenen Namen als Eintrag mit einem vorformatierten Zeichenfolgenwert speichern, der in Aufrufen an die NdisRegisterProtocolDriver function. 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. For example, the set of possible values for the already mentioned *FlowControl entry might be NdisParameterInteger values 0, 1, 2, or 3, or the equivalents in hexadecimal as NdisParameterHexInteger values.

NdisReadConfiguration buffers and copies the caller-supplied string at Keyword and releases the storage it allocates for this copy before it returns control to the caller. Der Speicher, den er für die NDIS_CONFIGURATION_PARAMETER structure is freed when the driver releases the ConfigurationHandle with the NdisCloseConfiguration function. The caller of NdisReadConfiguration is responsible for releasing the buffered string at Keyword.

Beachten Sie, dass NDIS keine Werte überprüft, die ein Treiber aus der Registrierung liest. The caller of NdisReadConfiguration must therefore not make any assumptions about such values and must validate each value read from the registry. 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.

Requirements

Requirement Value
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.
Target Platform Universal
Header ndis.h (include Ndis.h)
Library Ndis.lib
IRQL PASSIVE_LEVEL
DDI-Complianceregeln Irql_Miscellaneous_Function(ndis)

See also

ANSI_STRING

NDIS_CONFIGURATION_PARAMETER

NDIS_PARAMETER_TYPE

NdisAnsiStringToUnicodeString

NdisCloseConfiguration

NdisFreeString

NdisInitAnsiString

NdisInitUnicodeString

NdisInitializeString

NdisOpenConfigurationEx

NdisOpenConfigurationKeyByIndex NdisOpenConfigurationKeyByName

NdisReadNetworkAddress

NdisUnicodeStringToAnsiString

NdisWriteConfiguration

UNICODE_STRING