Condividi tramite


Funzione RtlIpv4AddressToStringExW (ip2string.h)

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

Sintassi

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

Parametri

[in] Address

Indirizzo IPv4 nell'ordine dei byte di rete.

[in] Port

Numero di porta nel formato dell'ordine dei byte di rete. Questo parametro è facoltativo e,

[out] AddressString

Puntatore al buffer per ricevere la rappresentazione di stringa con terminazione NULL dell'indirizzo e della porta IPv4. Questo buffer deve essere sufficientemente grande da 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 carattere di terminazione NULL. Nell'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 viene STATUS_SUCCESS.

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

Codice restituito Descrizione
STATUS_INVALID_PARAMETER
Alla funzione è stato passato un parametro non valido. 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 di stringa dell'indirizzo e della porta IPv4.
Altri
Usare FormatMessage per ottenere la stringa del messaggio per l'errore restituito.

Commenti

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

RtlIpv4AddressToStringEx è una funzione utile che non richiede che la DLL di Windows Sockets venga caricata per accedere a una funzione fornita in Windows Sockets per eseguire la conversione dell'indirizzo IP alla stringa.

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

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

Quando unicode e _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 in Microsoft Windows Software Development Kit (Windows SDK) (SDK) rilasciata 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 di 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 (include Mstcpip.h)
Libreria ntdll.lib
DLL ntdll.dll

Vedi anche

GetModuleHandle

GetProcAddress

InetNtop

InetPton

LoadLibrary

RtlIpv4AddressToString

RtlIpv4StringToAddress

RtlIpv4StringToAddressEx

RtlIpv6AddressToString

RtlIpv6AddressToStringEx

RtlIpv6StringToAddress

RtlIpv6StringToAddressEx

inet_addr

inet_ntoa