Funzione DeleteIpForwardEntry2 (netioapi.h)
La funzione DeleteIpForwardEntry2 elimina una voce di route IP nel computer locale.
Sintassi
IPHLPAPI_DLL_LINKAGE _NETIOAPI_SUCCESS_ NETIOAPI_API DeleteIpForwardEntry2(
[in] const MIB_IPFORWARD_ROW2 *Row
);
Parametri
[in] Row
Puntatore a una voce di struttura MIB_IPFORWARD_ROW2 per una voce di route IP. Al termine della restituzione, questa voce verrà eliminata.
Valore restituito
Se la funzione ha esito positivo, il valore restituito è NO_ERROR.
Se la funzione ha esito negativo, il valore restituito è uno dei codici di errore seguenti.
Codice restituito | Descrizione |
---|---|
|
Accesso negato. Questo errore viene restituito in diverse condizioni che includono quanto segue: l'utente non dispone dei privilegi amministrativi necessari nel computer locale o l'applicazione non è in esecuzione in una shell avanzata come amministratore predefinito (amministratore RunAs). |
|
Un parametro non valido è stato passato alla funzione. Questo errore viene restituito se un puntatore NULL viene passato nel parametro Row, il membro DestinationPrefix del MIB_IPFORWARD_ROW2 puntato dal parametro Row non è stato specificato, il membro NextHopdell'MIB_IPFORWARD_ROW2 puntato dal parametro Row non è stato specificato o sia i membri InterfaceLuid o InterfaceIndex del MIB_IPFORWARD_ROW2 puntati dalla riga parametro non specificato. |
|
Impossibile trovare l'interfaccia specificata. Questo errore viene restituito se non è stato possibile trovare l'interfaccia di rete specificata dal membro InterfaceLuid o InterfaceIndex del MIB_IPFORWARD_ROW2 puntato dal parametro Row . |
|
La richiesta non è supportata. Questo errore viene restituito se non si trova alcun stack IPv4 nel computer locale e un indirizzo IPv4 è stato specificato nel membro Address del MIB_IPFORWARD_ROW2 puntato dal parametro Row . Questo errore viene restituito anche se non è presente alcun stack IPv6 nel computer locale e un indirizzo IPv6 è stato specificato nel membro Address . |
|
Usare FormatMessage per ottenere la stringa di messaggio per l'errore restituito. |
Commenti
La funzione DeleteIpForwardEntry2 è definita in Windows Vista e versioni successive.
La funzione DeleteIpForwardEntry2 viene usata per eliminare una voce di struttura MIB_IPFORWARD_ROW2 .
In input, il membro DestinationPrefix nella struttura MIB_IPFORWARD_ROW2 a cui punta il parametro Row deve essere inizializzato in un prefisso di indirizzi IPv4 o IPv6 valido. In input, il membro NextHop nella struttura MIB_IPFORWARD_ROW2 puntato dal parametro Row deve essere inizializzato in un indirizzo IPv4 o IPv6 valido e famiglia. Inoltre, almeno uno dei membri seguenti nella struttura MIB_IPFORWARD_ROW2 punta al parametro Row deve essere inizializzato: InterfaceLuid o InterfaceIndex.
I campi vengono usati nell'ordine elencato sopra. Quindi, se si specifica InterfaceLuid , questo membro viene usato per determinare l'interfaccia. Se non è stato impostato alcun valore per il membro InterfaceLuid (i valori di questo membro è stato impostato su zero), il membro InterfaceIndex viene usato successivamente per determinare l'interfaccia.
Nell'output quando la chiamata ha esito positivo, DeleteIpForwardEntry2 elimina la voce di route IP.
La funzione DeleteIpForwardEntry2 avrà esito negativo se i membri DestinationPrefix e NextHop del MIB_IPFORWARD_ROW2 puntati dal parametro Row non corrispondono a una voce di route IP esistente nell'interfaccia specificata nei membri InterfaceLuid o InterfaceIndex .
La funzione GetIpForwardTable2 può essere chiamata per enumerare le voci di route IP in un computer locale.
La funzione DeleteIpForwardEntry2 può essere chiamata solo da un utente connesso come membro del gruppo Administrators. Se DeleteIpForwardEntry2 viene chiamato da un utente che non è membro del gruppo Administrators, la chiamata alla funzione avrà esito negativo e viene restituita ERROR_ACCESS_DENIED. Questa funzione può anche non riuscire a causa del controllo account utente (UAC) in Windows Vista e versioni successive. Se un'applicazione contenente questa funzione viene eseguita da un utente connesso come membro del gruppo Administrators diverso dall'amministratore predefinito, questa chiamata avrà esito negativo a meno che l'applicazione non sia stata contrassegnata nel file manifesto con un set requestedExecutionLevel per richiedereAdministrator. Se l'applicazione manca di questo file manifesto, un utente ha eseguito l'accesso come membro del gruppo Administrators diverso dall'amministratore predefinito, deve quindi eseguire l'applicazione in una shell avanzata come amministratore predefinito (amministratore RunAs) per la riuscita di questa funzione.
Requisiti
Requisito | Valore |
---|---|
Client minimo supportato | Windows Vista [solo app desktop] |
Server minimo supportato | Windows Server 2008 [solo app desktop] |
Piattaforma di destinazione | Windows |
Intestazione | netioapi.h (includere Iphlpapi.h) |
Libreria | Iphlpapi.lib |
DLL | Iphlpapi.dll |