Questo articolo è stato tradotto automaticamente. Per visualizzare l'articolo in inglese, selezionare la casella di controllo Inglese. È possibile anche visualizzare il testo inglese in una finestra popup posizionando il puntatore del mouse sopra il testo.
Traduzione
Inglese

Metodo Ping.Send (String, Int32)

 

Data di pubblicazione: ottobre 2016

Tenta di inviare un messaggio di echo messaggio protocollo ICMP (Internet Control) per il computer specificato e ricevere un corrispondente ICMP echo messaggio di risposta da tale computer. Questo metodo consente di specificare un valore di timeout per l'operazione.

Spazio dei nomi:   System.Net.NetworkInformation
Assembly:  System (in System.dll)

public PingReply Send(
	string hostNameOrAddress,
	int timeout
)

Parametri

hostNameOrAddress
Type: System.String

Oggetto String che identifica il computer che rappresenta la destinazione del messaggio echo ICMP. Il valore specificato per questo parametro può essere un nome host o una rappresentazione di stringa di un indirizzo IP.

timeout
Type: System.Int32

Un Int32 valore che specifica il numero massimo di millisecondi (dopo l'invio del messaggio echo) di attesa per il messaggio di risposta echo ICMP.

Valore restituito

Type: System.Net.NetworkInformation.PingReply

Oggetto PingReply oggetto che fornisce informazioni sul messaggio di risposta echo ICMP, se ne è stato ricevuto, o fornisce il motivo dell'errore se è stato ricevuto alcun messaggio.

Exception Condition
ArgumentNullException

hostNameOrAddress è null o è una stringa vuota ("").

ArgumentOutOfRangeException

timeout è minore di zero.

InvalidOperationException

Una chiamata a SendAsync è in corso.

PingException

È stata generata un'eccezione durante l'invio o ricezione dei messaggi ICMP. Vedere l'eccezione interna per l'esatta eccezione generata.

ObjectDisposedException

Questo oggetto è stato eliminato.

Se il messaggio di risposta echo ICMP non viene ricevuto entro il tempo specificato il timeout parametro, l'echo ICMP non riesce e Status è impostata su TimedOut.

System_CAPS_noteNota

Quando si specificano numeri molto piccoli per timeout, la risposta Ping può essere ricevuta anche se timeout millisecondi trascorsi.

Questo overload utilizza impostazioni predefinite per la frammentazione e l'inoltro dei pacchetti. Il pacchetto che contiene il messaggio echo ICMP può essere frammentato in transito se le dimensioni totali del pacchetto supera le dimensioni massime che possono essere trasmesse da uno dei nodi di routing tra il computer locale e remoto. Per evitare la frammentazione, utilizzare uno del Send metodi che accetta un options parametro e impostare il DontFragment proprietà true. Quando DontFragment è true e le dimensioni totali del pacchetto supera le dimensioni massime che possono essere trasmessi tramite uno dei nodi di routing tra il computer locale e remoto, la richiesta echo ICMP non riesce. In questo caso, il Status è impostato su PacketTooBig. Il pacchetto o i frammenti di pacchetto (se frammentato) possono essere inoltrati dai nodi di routing 128 volte prima di essere eliminato. Per modificare questa impostazione, utilizzare un Send overload che accetta un options parametro e impostare il Ttl proprietà sul valore desiderato. Se il pacchetto non raggiunge la destinazione dopo essere stato inoltrato il numero di volte specificato, questo viene scartato e la richiesta echo ICMP non riesce. In questo caso, il Status è impostato su TtlExpired.

Per un esempio in cui viene illustrato come chiamare un Send metodo, vedere il Ping Cenni preliminari sulla classe.

NetworkInformationPermission

To send an ICMP echo message.

Associated enumeration: F:System.Net.NetworkInformation.NetworkInformationAccess.Ping

.NET Framework
Disponibile da 2.0
Torna all'inizio
Mostra: