PingReply Класс

Определение

Предоставляет сведения о состоянии и о данных, полученных в результате операции Send или SendAsync.Provides information about the status and data resulting from a Send or SendAsync operation.

public ref class PingReply
public class PingReply
type PingReply = class
Public Class PingReply
Наследование
PingReply

Примеры

В следующем примере кода показано использование класса Ping для синхронной отправки запроса проверки связи ICMP и отображения ответа.The following code example demonstrates using Ping class to send an ICMP echo request synchronously and display the response.

#using <System.dll>

using namespace System;
using namespace System::Net;
using namespace System::Net::NetworkInformation;
using namespace System::Text;

// args[1] can be an IPaddress or host name.
int main()
{
   array<String^>^args = Environment::GetCommandLineArgs();
   
   Ping ^ pingSender = gcnew Ping;
   PingOptions ^ options = gcnew 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";
   array<Byte>^buffer = Encoding::ASCII->GetBytes( data );
   int timeout = 120;
   PingReply ^ reply = pingSender->Send( args[ 1 ], 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 );
   }

   
}

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);
            }
        }
    }
}

Комментарии

Класс Ping пытается отправить эхо-запрос протокола ICMP на удаленный компьютер и получать от компьютера информацию, полученную с помощью сообщения ответа проверки связи ICMP.The Ping class attempts to send an Internet Control Message Protocol (ICMP) echo request to a remote computer and receive information back from the computer via an ICMP echo reply message. Класс Ping использует экземпляры класса PingReply для получения сведений об операции, например ее состояние и время, затраченное на отправку запроса и получение ответа.The Ping class uses instances of the PingReply class to return information about the operation, such as its status and the time taken to send the request and receive the reply.

Методы Send возвращают экземпляры класса PingReply напрямую.The Send methods return instances of the PingReply class directly. Методы SendAsync возвращают PingReply в параметре PingCompletedEventArgs метода PingCompletedEventHandler.The SendAsync methods return a PingReply in the PingCompletedEventHandler method's PingCompletedEventArgs parameter. Доступ к PingReply осуществляется через свойство Reply.The PingReply is accessed through the Reply property.

Если значение Status не Success, не следует использовать значения, возвращаемые свойствами RoundtripTime, Options или Buffer.If the value of Status is not Success, you should not use the values returned by the RoundtripTime, Options or Buffer properties. Свойство RoundtripTime возвратит ноль, свойство Buffer вернет пустой массив, а свойство Options возвратит null.The RoundtripTime property will return zero, the Buffer property will return an empty array, and the Options property will return null.

Свойства

Address

Возвращает адрес узла и отправляет ответ проверки связи ICMP.Gets the address of the host that sends the Internet Control Message Protocol (ICMP) echo reply.

Buffer

Возвращает буфер данных, полученных в сообщении ответа проверки связи ICMP.Gets the buffer of data received in an Internet Control Message Protocol (ICMP) echo reply message.

Options

Возвращает параметры, используемые для передачи ответа на запрос проверки связи ICMP.Gets the options used to transmit the reply to an Internet Control Message Protocol (ICMP) echo request.

RoundtripTime

Возвращает число миллисекунд, затраченное на отправку запроса проверки связи по протоколу ICMP и получение соответствующего сообщения с ответом проверки связи по протоколу ICMP.Gets the number of milliseconds taken to send an Internet Control Message Protocol (ICMP) echo request and receive the corresponding ICMP echo reply message.

Status

Возвращает состояние попытки отправки запроса проверки связи ICMP и получения соответствующего сообщения ответа проверки связи ICMP.Gets the status of an attempt to send an Internet Control Message Protocol (ICMP) echo request and receive the corresponding ICMP echo reply message.

Методы

Equals(Object)

Определяет, равен ли указанный объект текущему объекту.Determines whether the specified object is equal to the current object.

(Унаследовано от Object)
GetHashCode()

Служит в качестве хэш-функции по умолчанию.Serves as the default hash function.

(Унаследовано от Object)
GetType()

Возвращает объект Type для текущего экземпляра.Gets the Type of the current instance.

(Унаследовано от Object)
MemberwiseClone()

Создает неполную копию текущего объекта Object.Creates a shallow copy of the current Object.

(Унаследовано от Object)
ToString()

Возвращает строку, представляющую текущий объект.Returns a string that represents the current object.

(Унаследовано от Object)

Применяется к