PingReply Klass
Definition
Viktigt
En del information gäller för förhandsversionen av en produkt och kan komma att ändras avsevärt innan produkten blir allmänt tillgänglig. Microsoft lämnar inga garantier, uttryckliga eller underförstådda, avseende informationen som visas här.
public ref class PingReply
public class PingReply
type PingReply = class
Public Class PingReply
- Arv
-
PingReply
Exempel
I följande kodexempel visas hur du använder Ping klassen för att skicka en ICMP-ekobegäran synkront och visa svaret.
using System;
using System.Net;
using System.Net.NetworkInformation;
using System.Text;
namespace Examples.System.Net.NetworkInformation.PingTest
{
public class PingExample
{
// args[0] can be an IPaddress or host name.
public static void Main (string[] args)
{
Ping pingSender = new Ping ();
PingOptions options = new PingOptions ();
// Use the default Ttl value which is 128,
// but change the fragmentation behavior.
options.DontFragment = true;
// Create a buffer of 32 bytes of data to be transmitted.
string data = "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa";
byte[] buffer = Encoding.ASCII.GetBytes (data);
int timeout = 120;
PingReply reply = pingSender.Send (args[0], timeout, buffer, options);
if (reply.Status == IPStatus.Success)
{
Console.WriteLine ("Address: {0}", reply.Address.ToString ());
Console.WriteLine ("RoundTrip time: {0}", reply.RoundtripTime);
Console.WriteLine ("Time to live: {0}", reply.Options.Ttl);
Console.WriteLine ("Don't fragment: {0}", reply.Options.DontFragment);
Console.WriteLine ("Buffer size: {0}", reply.Buffer.Length);
}
}
}
}
open System.Net.NetworkInformation
open System.Text
// args[0] can be an IPaddress or host name.
[<EntryPoint>]
let main args =
let pingSender = new Ping()
// Use the default Ttl value which is 128,
// but change the fragmentation behavior.
let options = PingOptions()
options.DontFragment <- true
// Create a buffer of 32 bytes of data to be transmitted.
let data = "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa"
let buffer = Encoding.ASCII.GetBytes data
let timeout = 120
let reply: PingReply = pingSender.Send(args.[0], timeout, buffer, options)
match reply.Status with
| IPStatus.Success ->
printfn "Address: %O" reply.Address
printfn "RoundTrip time: %d" reply.RoundtripTime
printfn "Time to live: %d" reply.Options.Ttl
printfn "Don't fragment: %b" reply.Options.DontFragment
printfn "Buffer size: %d" reply.Buffer.Length
0
| _ ->
eprintfn "Error sending ping: %O" reply
eprintfn "Error was: %O" reply.Status
1
Kommentarer
Klassen Ping försöker skicka en ICMP-ekobegäran (Internet Control Message Protocol) till en fjärrdator och ta emot information från datorn via ett ICMP-ekosvarsmeddelande. Klassen Ping använder instanser av PingReply klassen för att returnera information om åtgärden, till exempel dess status och den tid det tar att skicka begäran och ta emot svaret.
Metoderna Send returnerar instanser av PingReply klassen direkt. Metoderna SendAsync returnerar en PingReply i PingCompletedEventHandler metodens PingCompletedEventArgs parameter. PingReply Nås via egenskapen Reply .
Om värdet Status för inte Successär bör du inte använda de värden som returneras av RoundtripTimeegenskaperna , Options eller Buffer . Egenskapen RoundtripTime returnerar noll, egenskapen Buffer returnerar en tom matris och egenskapen Options returnerar null.
Egenskaper
| Name | Description |
|---|---|
| Address |
Hämtar adressen till värden som skickar ekosvaret Internet Control Message Protocol (ICMP). |
| Buffer |
Hämtar bufferten för data som tas emot i ett ICMP-ekosvarsmeddelande (Internet Control Message Protocol). |
| Options |
Hämtar de alternativ som används för att överföra svaret till en ICMP-ekobegäran (Internet Control Message Protocol). |
| RoundtripTime |
Hämtar antalet millisekunder som tagits för att skicka en ICMP-ekobegäran (Internet Control Message Protocol) och ta emot motsvarande ICMP-ekosvarsmeddelande. |
| Status |
Hämtar status för ett försök att skicka en ICMP-ekobegäran (Internet Control Message Protocol) och tar emot motsvarande ICMP-ekosvarsmeddelande. |
Metoder
| Name | Description |
|---|---|
| Equals(Object) |
Avgör om det angivna objektet är lika med det aktuella objektet. (Ärvd från Object) |
| GetHashCode() |
Fungerar som standard-hash-funktion. (Ärvd från Object) |
| GetType() |
Hämtar den aktuella instansen Type . (Ärvd från Object) |
| MemberwiseClone() |
Skapar en ytlig kopia av den aktuella Object. (Ärvd från Object) |
| ToString() |
Returnerar en sträng som representerar det aktuella objektet. (Ärvd från Object) |