Funzione RtlIpv4AddressToStringExA (ip2string.h)

La funzione RtlIpv4AddressToStringEx converte un indirizzo IPv4 e un numero di porta in una stringa in formato standard Internet.

Sintassi

NTSYSAPI NTSTATUS RtlIpv4AddressToStringExA(
  [in]      const in_addr *Address,
  [in]      USHORT        Port,
  [out]     PSTR          AddressString,
  [in, out] PULONG        AddressStringLength
);

Parametri

[in] Address

Indirizzo IPv4 nell'ordine di byte di rete.

[in] Port

Numero di porta in formato ordine byte di rete. Questo parametro è facoltativo e,

[out] AddressString

Puntatore al buffer per ricevere la rappresentazione della stringa con terminazione NULL dell'indirizzo e della porta IPv4. Questo buffer deve essere abbastanza grande per contenere almeno INET_ADDRSTRLEN caratteri. Il valore INET_ADDRSTRLEN è definito nel file di intestazione Ws2ipdef.h .

[in, out] AddressStringLength

In input, il numero di caratteri che rientrano nel buffer a cui punta il parametro AddressString , incluso il terminatore NULL.

In output, questo parametro contiene il numero di caratteri effettivamente scritti nel buffer a cui punta il parametro AddressString .

Valore restituito

Se la funzione ha esito positivo, il valore restituito è STATUS_SUCCESS.

Se la funzione ha esito negativo, il valore restituito è uno dei codici di errore seguenti.

Codice restituito Descrizione
STATUS_INVALID_PARAMETER
Un parametro non valido è stato passato alla funzione. Questo errore viene restituito se un puntatore NULL viene passato nel parametro AddressString o AddressStringLength. Questo errore viene restituito anche se la lunghezza del buffer a cui punta il parametro AddressString non è sufficiente per ricevere la rappresentazione stringa dell'indirizzo e della porta IPv4.
Altri
Usare FormatMessage per ottenere la stringa di messaggio per l'errore restituito.

Commenti

La funzione RtlIpv4AddressToStringEx viene utilizzata per convertire un indirizzo E un numero di porta IPv4 nella rappresentazione stringa dell'indirizzo IPv4 in formato decimale a Internet seguito da un carattere punti e una rappresentazione stringa della porta.

RtlIpv4AddressToStringEx è una funzione pratico che non richiede che la DLL di Windows Sockets venga caricata per accedere a una funzione fornita in Windows Sockets per eseguire l'indirizzo IP per la conversione di stringhe.

Se la lunghezza del buffer a cui punta il parametro AddressString non è sufficiente per ricevere la rappresentazione stringa dell'indirizzo e della porta IPv4, RtlIpv4AddressToStringEx restituisce ERROR_INVALID_PARAMETER e imposta il parametro AddressStringLength sulla lunghezza del buffer richiesto.

Quando viene definito UNICODE o _UNICODE, RtlIpv4AddressToStringEx viene definito in RtlIpv4AddressToStringExW, la versione Unicode di questa funzione. Il parametro AddressString viene definito nel tipo di dati PWSTR.

Quando sia UNICODE che _UNICODE non sono definiti, RtlIpv4AddressToStringEx viene definito in RtlIpv4AddressToStringExA, la versione ANSI di questa funzione. Il parametro AddressString viene definito nel tipo di dati PSTR.

La struttura IN_ADDR è definita nel file di intestazione Inaddr.h .

Una libreria di importazione contenente la funzione RtlIpv4AddressToStringEx non è inclusa nella versione di Microsoft Windows Software Development Kit (Windows SDK) (SDK) per Windows Vista. La funzione RtlIpv4AddressToStringEx è inclusa nella libreria di importazione Ntdll.lib inclusa in Windows Driver Kit (WDK). Un'applicazione può anche usare le funzioni GetModuleHandle e GetProcAddress per recuperare il puntatore della funzione dal Ntdll.dll e chiamare questa funzione.

Requisiti

Requisito Valore
Client minimo supportato Windows Vista [app desktop | App UWP]
Server minimo supportato Windows Server 2008 [app desktop | App UWP]
Piattaforma di destinazione Windows
Intestazione ip2string.h (includere Mstcpip.h)
DLL Ntdll.dll

Vedi anche

GetModuleHandle
GetProcAddress
InetNtop
InetPton
LoadLibrary
RtlIpv4AddressToString
RtlIpv4StringToAddress
RtlIpv4StringToAddressEx
RtlIpv6AddressToString
RtlIpv6AddressToStringEx
RtlIpv6StringToAddress
RtlIpv6StringToAddressEx
inet_addr
inet_ntoa