Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Die NdisReadNetworkAddress Funktion gibt die softwarekonfigurierbare Netzwerkadresse zurück, die in der Registrierung für eine NIC gespeichert wurde, als sie auf dem Computer installiert wurde.
Syntax
void NdisReadNetworkAddress(
[out] PNDIS_STATUS Status,
[out] PVOID *NetworkAddress,
[out] PUINT NetworkAddressLength,
[in] NDIS_HANDLE ConfigurationHandle
);
Parameter
[out] Status
Ein Zeiger auf eine vom Aufrufer bereitgestellte Variable, in der diese Funktion den Status des Aufrufs als einer der folgenden Zurückgibt:
NDIS_STATUS_SUCCESS
Der Anrufer kann die adresse verwenden, die an NetworkAddress für die NIC zurückgegeben wird.
NDIS_STATUS_FAILURE
Es sind keine NIC-Adressinformationen in der Registrierung des Aufrufers verfügbar Parameter Schlüssel oder der gespeicherte Wert war keine Zeichenfolge.
[out] NetworkAddress
Ein Zeiger auf eine vom Aufrufer bereitgestellte Variable, in der diese Funktion einen Zeiger auf einen Puffer zurückgibt, der die Netzwerkadresse (in der Regel die MAC-Adresse) enthält, die als Sequenz von Byte-Ganzzahlen gespeichert ist, wenn der Aufruf erfolgreich ist.
[out] NetworkAddressLength
Ein Zeiger auf eine vom Aufrufer bereitgestellte Variable, in der diese Funktion die Anzahl der Bytes zurückgibt, die an NetworkAddresszurückgegeben werden.
[in] ConfigurationHandle
Der vom Konfigurationshandle zurückgegebene Konfigurationshandle NdisOpenConfigurationEx--Funktion.
Rückgabewert
Nichts
Bemerkungen
NdisReadNetworkAddress durchsucht die Registrierung Parameters Schlüssel, der durch den angegebenen ConfigurationHandle- für das Schlüsselwort NetworkAddressfestgelegt wird, konvertiert den Wert dieses Zeichenfolgentypeintrags in eine Folge von Bytezahlen und speichert die angeforderten Informationen intern. Der Speicher, den NDIS für eine solche Adresse zuweist, bleibt gültig, bis der Miniporttreiber die NdisCloseConfiguration Funktion aufruft, die den Speicher freigibt.
Der Aufrufer kann die Variable bei NetworkAddress nicht als Zeiger verwenden, es sei denn, NdisReadNetworkAddress gibt NDIS_STATUS_SUCCESS an Statuszurück.
Das Installationsprogramm für eine NIC, die softwarekonfigurierbare Netzwerkadressierung unterstützt, sollte einen Werteintrag mit dem schlüsselwort NetworkAddress im HKLM\System\CurrentControlSet\Control\Class{4d36e972...} speichern.\00xx Schlüssel der Registrierung.
Ein NIC-Installationsprogramm speichert in der Regel den Wert eines NetworkAddress- Eintrags in der Registrierung als Zeichenfolge von Hexadezimalziffern. Optional kann ein Installationsprogramm eine solche Adresse als eine Zeichenfolge mit gekoppelten Ziffern speichern, wobei jedes Paar durch einen Bindestrich vom nächsten getrennt ist. NdisReadNetworkAddress Bindestriche verwirft und jedes solche Paar in ein einzelnes Byte konvertiert.
In beiden Formularen konvertiert NdisReadNetworkAddress die als Zeichenfolge angegebene Adresse , jeweils ein Zeichen, in die entsprechende ganze Zahl, bis die Zeichenfolge erschöpft ist.
In der Registrierung von Windows 2000 und höheren Versionen enthält eine solche installierte Adresszeichenfolge Unicode-Zeichen.
Beachten Sie, dass NDIS den Wert bei NetworkAddress-nicht überprüft. NDIS garantiert nicht, dass dieser Wert eine gültige Adresse ist, dass der Wert die richtige Länge hat oder sogar, dass der Wert eine Netzwerkadresse ist. Der Aufrufer von NdisReadNetworkAddress darf daher keine Annahmen zu diesem Wert treffen und den Wert selbst überprüfen. Wenn der Aufrufer feststellt, dass der Wert außerhalb der Grenzen liegt, sollte er den Wert nicht verwenden. Stattdessen sollte sie die permanente Mac-Adresse (Medium Access Control) oder eine Standardadresse verwenden.
Anforderungen
Anforderung | Wert |
---|---|
mindestens unterstützte Client- | Unterstützt für NDIS 6.0 und höhere Treiber in Windows Vista und höher. Unterstützt für NDIS 5.1-Treiber (siehe NdisReadNetworkAddress (NDIS 5.1)) in Windows XP und höher. |
Zielplattform- | Universal |
Header- | ndis.h (include Ndis.h) |
Library | Ndis.lib |
IRQL- | PASSIVE_LEVEL |
DDI-Complianceregeln | Irql_Miscellaneous_Function(ndis) |