RtlEthernetStringToAddressA-Funktion (ip2string.h)

Die RtlEthernetStringToAddress-Funktion konvertiert eine Zeichenfolgendarstellung einer Ethernet-MAC-Adresse in ein Binärformat der Ethernet-Adresse.

Syntax

NTSYSAPI NTSTATUS RtlEthernetStringToAddressA(
  [in]  PCSTR    S,
  [out] PCSTR    *Terminator,
  [out] DL_EUI48 *Addr
);

Parameter

[in] S

Ein Zeiger auf einen Puffer, der die NULL-beendete Zeichenfolgendarstellung der Ethernet-MAC-Adresse enthält.

[out] Terminator

Ein Parameter, der einen Zeiger auf das Zeichen empfängt, das die konvertierte Zeichenfolge beendet hat. Dies kann vom Aufrufer verwendet werden, um weitere Informationen aus der Zeichenfolge zu extrahieren.

[out] Addr

Ein Zeiger, in dem die binäre Darstellung der Ethernet-MAC-Adresse gespeichert werden soll.

Rückgabewert

Wenn die Funktion erfolgreich ist, wird der Rückgabewert STATUS_SUCCESS.

Wenn die Funktion fehlschlägt, ist der Rückgabewert einer der folgenden Fehlercodes.

Rückgabecode Beschreibung
STATUS_INVALID_PARAMETER
Es wurde ein ungültiger Parameter an die Funktion übergeben. Dieser Fehler wird zurückgegeben, wenn die Zeichenfolge, auf die vom S-Parameter verwiesen wird, keine ordnungsgemäße Zeichenfolgendarstellung einer Ethernet-MAC-Adresse enthält.

Dieser Fehlercode wird in der Headerdatei Ntstatus.h definiert.

Andere
Verwenden Sie FormatMessage , um die Nachrichtenzeichenfolge für den zurückgegebenen Fehler abzurufen.

Hinweise

Die RtlEthernetStringToAddress-Funktion wird verwendet, um eine Zeichenfolgendarstellung einer Ethernet-EUI-48-Datenverbindungsebenenadresse (auch als MAC-Adresse bezeichnet) in das Binärformat der Ethernet-Adresse zu konvertieren. Die Zeichenfolge stellt eine numerische Ethernet-Adresse dar, die in der Nicht-DIX-Standardnotation "-'' ausgedrückt wird. Der zurückgegebene Wert ist eine Zahl, die für die Verwendung als Ethernet-Adresse geeignet ist. Alle Ethernet-Adressen werden in Netzwerkreihenfolge zurückgegeben (Bytes von links nach rechts sortiert).

Die Zeichenfolge, auf die der S-Parameter verweist, muss in der Form für eine Ethernet-MAC-Adresszeichenfolge in der Nicht-DIX-Standardnotation "-" dargestellt werden. Die grundlegende Zeichenfolgendarstellung einer Ethernet-MAC-Adresse besteht aus 6 Paaren hexadezimaler Zahlen, die durch Bindestriche getrennt sind (z. B. F4-CE-46-2D-90-8C).

Bei erfolgreicher Ausführung zeigt der Terminator-Parameter auf das Zeichen, das die konvertierte Zeichenfolge beendet hat. Dadurch kann eine Anwendung eine Zeichenfolge, die eine Ethernet-Adresse sowie zusätzliche Informationen enthält, an die RtlEthernetStringToAddress-Funktion übergeben und dann die restlichen Informationen analysieren.

RtlEthernetStringToAddress ist eine Komfortfunktion, die nicht erfordert, dass die Windows Sockets-DLL geladen werden muss, um auf eine in Windows Sockets bereitgestellte Funktion zuzugreifen, um die Konvertierung von Zeichenfolgen zu Ethernet-Adressen durchzuführen.

Wenn entweder UNICODE oder _UNICODE definiert ist, wird RtlEthernetStringToAddress für "RtlEthernetStringToAddressW", die Unicode-Version dieser Funktion, definiert. Die Parameter S und Terminator werden für den PCWSTR-Datentyp definiert.

Wenn sowohl UNICODE als auch _UNICODE nicht definiert sind, wird RtlEthernetStringToAddress für RtlEthernetStringToAddressA, die ANSI-Version dieser Funktion, definiert. Die Parameter S und Terminator sind für den PCSTR-Datentyp definiert.

Der DL_EUI48 Datentyp ist in der Headerdatei Mstcpip.h definiert.

Hinweis

Der ip2string.h-Header definiert RtlEthernetStringToAddress als Alias, der automatisch die ANSI- oder Unicode-Version dieser Funktion basierend auf der Definition der UNICODE-Präprozessorkonstante auswählt. Das Mischen der Verwendung des codierungsneutralen Alias mit nicht codierungsneutralem Code kann zu Nichtübereinstimmungen führen, die zu Kompilierungs- oder Laufzeitfehlern führen. Weitere Informationen finden Sie unter Konventionen für Funktionsprototypen.

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client) Windows 7 [Desktop-Apps | UWP-Apps]
Unterstützte Mindestversion (Server) Windows Server 2008 R2 [Desktop-Apps | UWP-Apps]
Zielplattform Windows
Kopfzeile ip2string.h (include Mstcpip.h, Ip2string.h)
Bibliothek ntdll.lib
DLL ntdll.dll

Weitere Informationen

RtlEthernetAddressToString