Ping Ping Ping Ping Class

Определение

Позволяет приложению определить, доступен ли удаленный компьютер по сети.Allows an application to determine whether a remote computer is accessible over the network.

public ref class Ping : System::ComponentModel::Component, IDisposable
public class Ping : System.ComponentModel.Component, IDisposable
type Ping = class
    inherit Component
    interface IDisposable
Public Class Ping
Inherits Component
Implements IDisposable
Наследование
Реализации

Примеры

В следующем примере кода показано использование класса Ping в синхронном режиме.The following code example demonstrates using the Ping class synchronously.

#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 в асинхронном режиме.The following code example demonstrates using the Ping class asynchronously.

#using <System.dll>

using namespace System;
using namespace System::Text;
using namespace System::Net;
using namespace System::Net::NetworkInformation;
using namespace System::ComponentModel;
using namespace System::Threading;
void PingCompletedCallback( Object^ sender, PingCompletedEventArgs^ e );
void DisplayReply( PingReply^ reply );
int main()
{
   array<String^>^args = Environment::GetCommandLineArgs();
   if ( args->Length == 1 )
      throw gcnew ArgumentException( "Ping needs a host or IP Address." );

   String^ who = args[ 1 ];
   AutoResetEvent^ waiter = gcnew AutoResetEvent( false );
   
   Ping ^ pingSender = gcnew Ping;
   
   // When the PingCompleted event is raised,
   // the PingCompletedCallback method is called.
   pingSender->PingCompleted += gcnew PingCompletedEventHandler( PingCompletedCallback );
   
   // Create a buffer of 32 bytes of data to be transmitted.
   String^ data = "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa";
   array<Byte>^buffer = Encoding::ASCII->GetBytes( data );
   
   // Wait 12 seconds for a reply.
   int timeout = 12000;
   
   // Set options for transmission:
   // The data can go through 64 gateways or routers
   // before it is destroyed, and the data packet
   // cannot be fragmented.
   PingOptions ^ options = gcnew PingOptions( 64,true );
   Console::WriteLine( "Time to live: {0}", options->Ttl );
   Console::WriteLine( "Don't fragment: {0}", options->DontFragment );
   
   // Send the ping asynchronously.
   // Use the waiter as the user token.
   // When the callback completes, it can wake up this thread.
   pingSender->SendAsync( who, timeout, buffer, options, waiter );
   
   // Prevent this example application from ending.
   // A real application should do something useful
   // when possible.
   waiter->WaitOne();
   Console::WriteLine( "Ping example completed." );
}


void PingCompletedCallback( Object^ /*sender*/, PingCompletedEventArgs^ e )
{
   
   // If the operation was canceled, display a message to the user.
   if ( e->Cancelled )
   {
      Console::WriteLine( "Ping canceled." );
      
      // Let the main thread resume. 
      // UserToken is the AutoResetEvent object that the main thread 
      // is waiting for.
      (dynamic_cast<AutoResetEvent^>(e->UserState))->Set();
   }

   
   // If an error occurred, display the exception to the user.
   if ( e->Error != nullptr )
   {
      Console::WriteLine( "Ping failed:" );
      Console::WriteLine( e->Error->ToString() );
      
      // Let the main thread resume. 
      (dynamic_cast<AutoResetEvent^>(e->UserState))->Set();
   }

   PingReply ^ reply = e->Reply;
   DisplayReply( reply );
   
   // Let the main thread resume.
   (dynamic_cast<AutoResetEvent^>(e->UserState))->Set();
}


void DisplayReply( PingReply ^ reply )
{
   if ( reply == nullptr )
      return;

   Console::WriteLine( "ping status: {0}", reply->Status );
   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.Text;
using System.Net;
using System.Net.NetworkInformation;
using System.ComponentModel;
using System.Threading;

namespace Examples.System.Net.NetworkInformation.PingTest
{
    public class PingExample
    {
        public static void Main (string[] args)
        {
            if (args.Length == 0)
                throw new ArgumentException ("Ping needs a host or IP Address.");

            string who = args[0];
            AutoResetEvent waiter = new AutoResetEvent (false);

            Ping pingSender = new Ping ();

            // When the PingCompleted event is raised,
            // the PingCompletedCallback method is called.
            pingSender.PingCompleted += new PingCompletedEventHandler (PingCompletedCallback);

            // Create a buffer of 32 bytes of data to be transmitted.
            string data = "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa";
            byte[] buffer = Encoding.ASCII.GetBytes (data);

            // Wait 12 seconds for a reply.
            int timeout = 12000;

            // Set options for transmission:
            // The data can go through 64 gateways or routers
            // before it is destroyed, and the data packet
            // cannot be fragmented.
            PingOptions options = new PingOptions (64, true);

            Console.WriteLine ("Time to live: {0}", options.Ttl);
            Console.WriteLine ("Don't fragment: {0}", options.DontFragment);

            // Send the ping asynchronously.
            // Use the waiter as the user token.
            // When the callback completes, it can wake up this thread.
            pingSender.SendAsync(who, timeout, buffer, options, waiter);

            // Prevent this example application from ending.
            // A real application should do something useful
            // when possible.
            waiter.WaitOne ();
            Console.WriteLine ("Ping example completed.");
        }

        private static void PingCompletedCallback (object sender, PingCompletedEventArgs e)
        {
            // If the operation was canceled, display a message to the user.
            if (e.Cancelled)
            {
                Console.WriteLine ("Ping canceled.");

                // Let the main thread resume. 
                // UserToken is the AutoResetEvent object that the main thread 
                // is waiting for.
                ((AutoResetEvent)e.UserState).Set ();
            }

            // If an error occurred, display the exception to the user.
            if (e.Error != null)
            {
                Console.WriteLine ("Ping failed:");
                Console.WriteLine (e.Error.ToString ());

                // Let the main thread resume. 
                ((AutoResetEvent)e.UserState).Set();
            }

            PingReply reply = e.Reply;

            DisplayReply (reply);

            // Let the main thread resume.
            ((AutoResetEvent)e.UserState).Set();
        }

        public static void DisplayReply (PingReply reply)
        {
            if (reply == null)
                return;

            Console.WriteLine ("ping status: {0}", reply.Status);
            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 , чтобы определить, доступен ли удаленный компьютер.Applications use the Ping class to detect whether a remote computer is reachable.

Топология сети может определить Ping , может ли служба успешно связаться с удаленным узлом.Network topology can determine whether Ping can successfully contact a remote host. Присутствие и настройка прокси-серверов, оборудования преобразования сетевых адресов (NAT) или брандмауэров может помешать Ping выполнению.The presence and configuration of proxies, network address translation (NAT) equipment, or firewalls can prevent Ping from succeeding. Успешная Ping проверка означает, что удаленный узел доступен только в сети; наличие служб более высокого уровня (например, веб-сервера) на удаленном узле не гарантируется.A successful Ping indicates only that the remote host can be reached on the network; the presence of higher level services (such as a Web server) on the remote host is not guaranteed.

Этот класс предоставляет функциональные возможности, аналогичные программе командной строки Ping. exe.This class provides functionality similar to the Ping.exe command line tool. Методы Send иSendAsync отправляют на удаленный компьютер сообщение с эхо-запросом протокола ICMP и ожидают ответа ICMP эхо от этого компьютера.The Send and SendAsync methods send an Internet Control Message Protocol (ICMP) echo request message to a remote computer and waits for an ICMP echo reply message from that computer. Подробное описание ICMP-сообщений см. в документе RFC 792, доступном по адресу https://www.ietf.org.For a detailed description of ICMP messages, see RFC 792, available at https://www.ietf.org.

Следующие типы используются с Ping классом и подробно описаны ниже.The following types are used with the Ping class and are described in detail below.

Имя типаType name ОписаниеDescription
IPStatus Определяет коды состояния, описывающие результат сообщения запроса проверки связи ICMP.Defines status codes that describe the outcome of an ICMP echo request message.
PingOptions Позволяет настраивать или извлекать параметры, управляющие количеством перенаправляемых пакетов запросов (Ttl) и возможностью его фрагментации (DontFragment ).Allows you to configure or retrieve the settings that control how many times the request packet can be forwarded (Ttl), and whether it can be fragmented (DontFragment ).
PingReply Содержит результаты запроса проверки связи ICMP.Contains the results of an ICMP echo request.
PingException Возникает при неустранимой ошибке.Thrown if an unrecoverable error occurs.
PingCompletedEventArgs Содержит данные, связанные с PingCompleted событиями, которые вызываются, SendAsync когда вызов завершается или отменяется.Contains the data associated with PingCompleted events, which are raised when a SendAsync call completes or is canceled.
PingCompletedEventHandler Делегат, предоставляющий метод обратного вызова, вызываемый SendAsync при завершении или отмене вызова.The delegate that provides the callback method invoked when a SendAsync call completes or is canceled.

Методы Send и SendAsync возвращаютPingReply ответ в объекте.The Send and SendAsync methods return the reply in a PingReply object. PingReply.Status СвойствоIPStatus возвращает значение, указывающее результат запроса.The PingReply.Status property returns an IPStatus value to indicate the outcome of the request.

При отправке запроса необходимо указать удаленный компьютер.When sending the request, you must specify the remote computer. Это можно сделать, указав строку имени узла, IP-адрес в строковом формате или IPAddress объект.You can do this by providing a host name string, an IP address in string format, or an IPAddress object.

Можно также указать любой из следующих типов сведений:You can also specify any of the following types of information:

  • Данные, сопровождающие запрос.Data to accompany the request. Указание buffer позволяет узнать количество времени, требуемое для передачи пакета определенного размера на удаленный узел и от него до максимальной пересылки сетевого пути.Specifying buffer allows you to learn the amount of time required for a packet of a particular size to travel to and from the remote host and the maximum transmission unit of the network path. (См Send . перегрузкиSendAsync или, которые принимают параметр.)buffer(See the Send or SendAsync overloads that take a buffer parameter.)

  • Можно ли фрагментировать эхо-пакет ICMP при передаче.Whether the ICMP Echo packet can be fragmented in transit. (См DontFragment . свойство Send и SendAsync перегрузки, которые принимают options параметр.)(See the DontFragment property and the Send or SendAsync overloads that take an options parameter.)

  • Сколько раз узлы маршрутизации, такие как маршрутизаторы или шлюзы, могут переслать пакет до того, как он достигнет конечного компьютера или отклоняется.How many times routing nodes, such as routers or gateways, can forward the packet before it either reaches the destination computer or is discarded. (См Ttl ., Send а SendAsync также перегрузки, принимающие options параметр.)(See Ttl and the Send or SendAsync overloads that take an options parameter.)

  • Предельное время, в течение которого должен быть получен ответ.The time limit within which the reply must be received. (См Send . перегрузкиSendAsync или, которые принимают параметр.timeout(See the Send or SendAsync overloads that take a timeout parameter.

Ping Класс предлагает как синхронные, так и асинхронные методы для отправки запроса.The Ping class offers both synchronous and asynchronous methods for sending the request. Если приложение должно блокироваться во время ожидания ответа, используйте Send методы. Эти методы являются синхронными.If your application should block while waiting for a reply, use the Send methods; these methods are synchronous. Если приложение не должно блокироваться, используйте асинхронные SendAsync методы.If your application should not block, use the asynchronous SendAsync methods. Вызов метода SendAsync выполняется в собственном потоке, который автоматически выделяется из пула потоков.A call to SendAsync executes in its own thread that is automatically allocated from the thread pool. По завершении асинхронной операции она вызывает PingCompleted событие.When the asynchronous operation completes, it raises the PingCompleted event. Приложения используют PingCompletedEventHandler делегат, чтобы указать метод, который вызывается для PingCompleted событий.Applications use a PingCompletedEventHandler delegate to specify the method that is called for PingCompleted events. Перед вызовом SendAsyncнеобходимо PingCompletedEventHandler добавить делегат к событию.You must add a PingCompletedEventHandler delegate to the event before calling SendAsync. Метод делегата получает PingCompletedEventArgs объект, PingReply содержащий объект, SendAsync описывающий результат вызова.The delegate's method receives a PingCompletedEventArgs object that contains a PingReply object that describes the result of the SendAsync call.

Нельзя использовать один и тот же экземпляр Ping класса для создания нескольких одновременных эхо-запросов ICMP.You cannot use the same instance of the Ping class to generate multiple simultaneous ICMP Echo requests. Вызов Send SendAsync InvalidOperationExceptionво время выполнения вызоваилинесколькоразпривызовеметодадозавершениявсехпредыдущихвызововприводитквозникновениюисключения.SendAsyncCalling Send while a SendAsync call is in progress or calling SendAsync multiple times before all previous calls have completed causes an InvalidOperationException.

Конструкторы

Ping() Ping() Ping() Ping()

Инициализирует новый экземпляр класса Ping.Initializes a new instance of the Ping class.

Методы

CreateObjRef(Type) CreateObjRef(Type) CreateObjRef(Type) CreateObjRef(Type)

Создает объект, который содержит всю необходимую информацию для создания прокси-сервера, используемого для взаимодействия с удаленным объектом.Creates an object that contains all the relevant information required to generate a proxy used to communicate with a remote object.

(Inherited from MarshalByRefObject)
Dispose() Dispose() Dispose() Dispose()
Dispose(Boolean) Dispose(Boolean) Dispose(Boolean) Dispose(Boolean)

Освобождает неуправляемые ресурсы, используемые объектом Ping, и опционально — управляемые ресурсы.Releases the unmanaged resources used by the Ping object, and optionally disposes of the managed resources.

Equals(Object) Equals(Object) Equals(Object) Equals(Object)

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

(Inherited from Object)
GetHashCode() GetHashCode() GetHashCode() GetHashCode()

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

(Inherited from Object)
GetLifetimeService() GetLifetimeService() GetLifetimeService() GetLifetimeService()

Извлекает объект обслуживания во время существования, который управляет политикой времени существования данного экземпляра.Retrieves the current lifetime service object that controls the lifetime policy for this instance.

(Inherited from MarshalByRefObject)
GetService(Type) GetService(Type) GetService(Type) GetService(Type)

Возвращает объект, представляющий службу, обеспечиваемую компонентом Component или его контейнером Container.Returns an object that represents a service provided by the Component or by its Container.

(Inherited from Component)
GetType() GetType() GetType() GetType()

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

(Inherited from Object)
InitializeLifetimeService() InitializeLifetimeService() InitializeLifetimeService() InitializeLifetimeService()

Получает объект службы времени существования для управления политикой времени существования для этого экземпляра.Obtains a lifetime service object to control the lifetime policy for this instance.

(Inherited from MarshalByRefObject)
MemberwiseClone() MemberwiseClone() MemberwiseClone() MemberwiseClone()

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

(Inherited from Object)
MemberwiseClone(Boolean) MemberwiseClone(Boolean) MemberwiseClone(Boolean) MemberwiseClone(Boolean)

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

(Inherited from MarshalByRefObject)
OnPingCompleted(PingCompletedEventArgs) OnPingCompleted(PingCompletedEventArgs) OnPingCompleted(PingCompletedEventArgs) OnPingCompleted(PingCompletedEventArgs)

Создает событие PingCompleted.Raises the PingCompleted event.

Send(IPAddress) Send(IPAddress) Send(IPAddress) Send(IPAddress)

Предпринимает попытку отправки сообщения запроса проверки связи ICMP на удаленный компьютер с указанным IPAddress и получения от него соответствующего сообщения ответа проверки связи ICMP.Attempts to send an Internet Control Message Protocol (ICMP) echo message to the computer that has the specified IPAddress, and receive a corresponding ICMP echo reply message from that computer.

Send(IPAddress, Int32) Send(IPAddress, Int32) Send(IPAddress, Int32) Send(IPAddress, Int32)

Предпринимает попытку отправки сообщения запроса проверки связи ICMP с заданным буфером данных на удаленный компьютер с указанным IPAddress и получения от него соответствующего сообщения ответа проверки связи ICMP.Attempts to send an Internet Control Message Protocol (ICMP) echo message with the specified data buffer to the computer that has the specified IPAddress, and receive a corresponding ICMP echo reply message from that computer. Этот метод позволяет указать тайм-аут операции.This method allows you to specify a time-out value for the operation.

Send(IPAddress, Int32, Byte[]) Send(IPAddress, Int32, Byte[]) Send(IPAddress, Int32, Byte[]) Send(IPAddress, Int32, Byte[])

Предпринимает попытку отправки сообщения запроса проверки связи ICMP с заданным буфером данных на удаленный компьютер с указанным IPAddress и получения от него соответствующего сообщения ответа проверки связи ICMP.Attempts to send an Internet Control Message Protocol (ICMP) echo message with the specified data buffer to the computer that has the specified IPAddress, and receive a corresponding ICMP echo reply message from that computer. Эта перегруженная версия метода позволяет указать тайм-аут операции.This overload allows you to specify a time-out value for the operation.

Send(IPAddress, Int32, Byte[], PingOptions) Send(IPAddress, Int32, Byte[], PingOptions) Send(IPAddress, Int32, Byte[], PingOptions) Send(IPAddress, Int32, Byte[], PingOptions)

Предпринимает попытку отправки сообщения запроса проверки связи ICMP с заданным буфером данных на удаленный компьютер с указанным IPAddress и получения от него соответствующего сообщения ответа проверки связи ICMP.Attempts to send an Internet Control Message Protocol (ICMP) echo message with the specified data buffer to the computer that has the specified IPAddress and receive a corresponding ICMP echo reply message from that computer. Эта перегруженная версия метода позволяет указать тайм-аут операции и управлять значениями фрагментации и срока жизни пакета сообщения проверки связи ICMP.This overload allows you to specify a time-out value for the operation and control fragmentation and Time-to-Live values for the ICMP echo message packet.

Send(String) Send(String) Send(String) Send(String)

Предпринимает попытку отправки сообщения запроса проверки связи ICMP на указанный компьютер и получения от него соответствующего сообщения ответа проверки связи ICMP.Attempts to send an Internet Control Message Protocol (ICMP) echo message to the specified computer, and receive a corresponding ICMP echo reply message from that computer.

Send(String, Int32) Send(String, Int32) Send(String, Int32) Send(String, Int32)

Предпринимает попытку отправки сообщения запроса проверки связи ICMP на указанный компьютер и получения от него соответствующего сообщения ответа проверки связи ICMP.Attempts to send an Internet Control Message Protocol (ICMP) echo message to the specified computer, and receive a corresponding ICMP echo reply message from that computer. Этот метод позволяет указать тайм-аут операции.This method allows you to specify a time-out value for the operation.

Send(String, Int32, Byte[]) Send(String, Int32, Byte[]) Send(String, Int32, Byte[]) Send(String, Int32, Byte[])

Предпринимает попытку отправки сообщения запроса проверки связи ICMP с заданным буфером данных на указанный компьютер и получения от него соответствующего сообщения ответа проверки связи ICMP.Attempts to send an Internet Control Message Protocol (ICMP) echo message with the specified data buffer to the specified computer, and receive a corresponding ICMP echo reply message from that computer. Эта перегруженная версия метода позволяет указать тайм-аут операции.This overload allows you to specify a time-out value for the operation.

Send(String, Int32, Byte[], PingOptions) Send(String, Int32, Byte[], PingOptions) Send(String, Int32, Byte[], PingOptions) Send(String, Int32, Byte[], PingOptions)

Предпринимает попытку отправки сообщения запроса проверки связи ICMP с заданным буфером данных на указанный компьютер и получения от него соответствующего сообщения ответа проверки связи ICMP.Attempts to send an Internet Control Message Protocol (ICMP) echo message with the specified data buffer to the specified computer, and receive a corresponding ICMP echo reply message from that computer. Эта перегруженная версия метода позволяет указать тайм-аут операции и управлять значениями фрагментации и срока жизни пакета ICMP.This overload allows you to specify a time-out value for the operation and control fragmentation and Time-to-Live values for the ICMP packet.

SendAsync(IPAddress, Int32, Byte[], Object) SendAsync(IPAddress, Int32, Byte[], Object) SendAsync(IPAddress, Int32, Byte[], Object) SendAsync(IPAddress, Int32, Byte[], Object)

Предпринимает попытку асинхронной отправки сообщения запроса проверки связи ICMP с заданным буфером данных на компьютер с указанным IPAddress и получения от него соответствующего сообщения ответа проверки связи ICMP.Asynchronously attempts to send an Internet Control Message Protocol (ICMP) echo message with the specified data buffer to the computer that has the specified IPAddress, and receive a corresponding ICMP echo reply message from that computer. Эта перегруженная версия метода позволяет указать тайм-аут операции.This overload allows you to specify a time-out value for the operation.

SendAsync(IPAddress, Int32, Byte[], PingOptions, Object) SendAsync(IPAddress, Int32, Byte[], PingOptions, Object) SendAsync(IPAddress, Int32, Byte[], PingOptions, Object) SendAsync(IPAddress, Int32, Byte[], PingOptions, Object)

Предпринимает попытку асинхронной отправки сообщения запроса проверки связи ICMP с заданным буфером данных на компьютер с указанным IPAddress и получения от него соответствующего сообщения ответа проверки связи ICMP.Asynchronously attempts to send an Internet Control Message Protocol (ICMP) echo message with the specified data buffer to the computer that has the specified IPAddress, and receive a corresponding ICMP echo reply message from that computer. Эта перегруженная версия метода позволяет указать тайм-аут операции и управлять значениями фрагментации и срока жизни пакета сообщения проверки связи ICMP.This overload allows you to specify a time-out value for the operation and control fragmentation and Time-to-Live values for the ICMP echo message packet.

SendAsync(IPAddress, Int32, Object) SendAsync(IPAddress, Int32, Object) SendAsync(IPAddress, Int32, Object) SendAsync(IPAddress, Int32, Object)

Предпринимает попытку асинхронной отправки сообщения запроса проверки связи ICMP на удаленный компьютер с указанным IPAddress и получения от него соответствующего сообщения ответа проверки связи ICMP.Asynchronously attempts to send an Internet Control Message Protocol (ICMP) echo message to the computer that has the specified IPAddress, and receive a corresponding ICMP echo reply message from that computer. Эта перегруженная версия метода позволяет указать тайм-аут операции.This overload allows you to specify a time-out value for the operation.

SendAsync(IPAddress, Object) SendAsync(IPAddress, Object) SendAsync(IPAddress, Object) SendAsync(IPAddress, Object)

Предпринимает попытку асинхронной отправки сообщения запроса проверки связи ICMP на удаленный компьютер с указанным IPAddress и получения от него соответствующего сообщения ответа проверки связи ICMP.Asynchronously attempts to send an Internet Control Message Protocol (ICMP) echo message to the computer that has the specified IPAddress, and receive a corresponding ICMP echo reply message from that computer.

SendAsync(String, Int32, Byte[], Object) SendAsync(String, Int32, Byte[], Object) SendAsync(String, Int32, Byte[], Object) SendAsync(String, Int32, Byte[], Object)

Предпринимает попытку асинхронной отправки сообщения запроса проверки связи ICMP с заданным буфером данных на указанный компьютер и получения от него соответствующего сообщения ответа проверки связи ICMP.Asynchronously attempts to send an Internet Control Message Protocol (ICMP) echo message with the specified data buffer to the specified computer, and receive a corresponding ICMP echo reply message from that computer. Эта перегруженная версия метода позволяет указать тайм-аут операции.This overload allows you to specify a time-out value for the operation.

SendAsync(String, Int32, Byte[], PingOptions, Object) SendAsync(String, Int32, Byte[], PingOptions, Object) SendAsync(String, Int32, Byte[], PingOptions, Object) SendAsync(String, Int32, Byte[], PingOptions, Object)

Предпринимает попытку асинхронной отправки сообщения запроса проверки связи ICMP с заданным буфером данных на указанный компьютер и получения от него соответствующего сообщения ответа проверки связи ICMP.Asynchronously attempts to send an Internet Control Message Protocol (ICMP) echo message with the specified data buffer to the specified computer, and receive a corresponding ICMP echo reply message from that computer. Эта перегруженная версия метода позволяет указать тайм-аут операции и управлять значениями фрагментации и срока жизни пакета ICMP.This overload allows you to specify a time-out value for the operation and control fragmentation and Time-to-Live values for the ICMP packet.

SendAsync(String, Int32, Object) SendAsync(String, Int32, Object) SendAsync(String, Int32, Object) SendAsync(String, Int32, Object)

Предпринимает попытку асинхронной отправки сообщения запроса проверки связи ICMP на указанный компьютер и получения от него соответствующего сообщения ответа проверки связи ICMP.Asynchronously attempts to send an Internet Control Message Protocol (ICMP) echo message to the specified computer, and receive a corresponding ICMP echo reply message from that computer. Эта перегруженная версия метода позволяет указать тайм-аут операции.This overload allows you to specify a time-out value for the operation.

SendAsync(String, Object) SendAsync(String, Object) SendAsync(String, Object) SendAsync(String, Object)

Предпринимает попытку асинхронной отправки сообщения запроса проверки связи ICMP на указанный компьютер и получения от него соответствующего сообщения ответа проверки связи ICMP.Asynchronously attempts to send an Internet Control Message Protocol (ICMP) echo message to the specified computer, and receive a corresponding ICMP echo reply message from that computer.

SendAsyncCancel() SendAsyncCancel() SendAsyncCancel() SendAsyncCancel()

Отменяет все ожидающие асинхронные запросы на отправку сообщений проверки связи ICMP и получает соответствующее сообщение ответа проверки связи ICMP.Cancels all pending asynchronous requests to send an Internet Control Message Protocol (ICMP) echo message and receives a corresponding ICMP echo reply message.

SendPingAsync(IPAddress) SendPingAsync(IPAddress) SendPingAsync(IPAddress) SendPingAsync(IPAddress)

Отправляет сообщение запроса проверки связи ICMP с заданным буфером данных на компьютер с указанным IPAddress и получает от него соответствующее сообщения ответа проверки связи ICMP как асинхронная операция.Send an Internet Control Message Protocol (ICMP) echo message with the specified data buffer to the computer that has the specified IPAddress, and receives a corresponding ICMP echo reply message from that computer as an asynchronous operation.

SendPingAsync(IPAddress, Int32) SendPingAsync(IPAddress, Int32) SendPingAsync(IPAddress, Int32) SendPingAsync(IPAddress, Int32)

Отправляет сообщение запроса проверки связи ICMP с заданным буфером данных на компьютер с указанным IPAddress и получает от него соответствующее сообщения ответа проверки связи ICMP как асинхронная операция.Send an Internet Control Message Protocol (ICMP) echo message with the specified data buffer to the computer that has the specified IPAddress, and receives a corresponding ICMP echo reply message from that computer as an asynchronous operation. Эта перегруженная версия метода позволяет указать тайм-аут операции.This overload allows you to specify a time-out value for the operation.

SendPingAsync(IPAddress, Int32, Byte[]) SendPingAsync(IPAddress, Int32, Byte[]) SendPingAsync(IPAddress, Int32, Byte[]) SendPingAsync(IPAddress, Int32, Byte[])

Отправляет сообщение запроса проверки связи ICMP с заданным буфером данных на компьютер с указанным IPAddress и получает от него соответствующее сообщения ответа проверки связи ICMP как асинхронная операция.Send an Internet Control Message Protocol (ICMP) echo message with the specified data buffer to the computer that has the specified IPAddress, and receives a corresponding ICMP echo reply message from that computer as an asynchronous operation. Эта перегрузка позволяет указать значение истечения времени ожидания для операции и буфер для использования для отправки и получения.This overload allows you to specify a time-out value for the operation and a buffer to use for send and receive.

SendPingAsync(IPAddress, Int32, Byte[], PingOptions) SendPingAsync(IPAddress, Int32, Byte[], PingOptions) SendPingAsync(IPAddress, Int32, Byte[], PingOptions) SendPingAsync(IPAddress, Int32, Byte[], PingOptions)

Отправляет сообщение запроса проверки связи ICMP с заданным буфером данных на компьютер с указанным IPAddress и получает от него соответствующее сообщение ответа проверки связи ICMP в виде асинхронной операции.Sends an Internet Control Message Protocol (ICMP) echo message with the specified data buffer to the computer that has the specified IPAddress, and receives a corresponding ICMP echo reply message from that computer as an asynchronous operation. Эта перегруженная версия метода позволяет указать тайм-аут операции, буфер для использования для отправки и получения и управлять значениями фрагментации и срока жизни пакета сообщения проверки связи ICMP.This overload allows you to specify a time-out value for the operation, a buffer to use for send and receive, and control fragmentation and Time-to-Live values for the ICMP echo message packet.

SendPingAsync(String) SendPingAsync(String) SendPingAsync(String) SendPingAsync(String)

Отправляет сообщение запроса проверки связи ICMP с заданным буфером данных на указанный компьютер и получает от него соответствующее сообщения ответа проверки связи ICMP как асинхронная операция.Sends an Internet Control Message Protocol (ICMP) echo message with the specified data buffer to the specified computer, and receive a corresponding ICMP echo reply message from that computer as an asynchronous operation.

SendPingAsync(String, Int32) SendPingAsync(String, Int32) SendPingAsync(String, Int32) SendPingAsync(String, Int32)

Отправляет сообщение запроса проверки связи ICMP с заданным буфером данных на указанный компьютер и получает от него соответствующее сообщения ответа проверки связи ICMP как асинхронная операция.Sends an Internet Control Message Protocol (ICMP) echo message with the specified data buffer to the specified computer, and receive a corresponding ICMP echo reply message from that computer as an asynchronous operation. Эта перегруженная версия метода позволяет указать тайм-аут операции.This overload allows you to specify a time-out value for the operation.

SendPingAsync(String, Int32, Byte[]) SendPingAsync(String, Int32, Byte[]) SendPingAsync(String, Int32, Byte[]) SendPingAsync(String, Int32, Byte[])

Отправляет сообщение запроса проверки связи ICMP с заданным буфером данных на указанный компьютер и получает от него соответствующее сообщения ответа проверки связи ICMP как асинхронная операция.Sends an Internet Control Message Protocol (ICMP) echo message with the specified data buffer to the specified computer, and receive a corresponding ICMP echo reply message from that computer as an asynchronous operation. Эта перегрузка позволяет указать значение истечения времени ожидания для операции и буфер для использования для отправки и получения.This overload allows you to specify a time-out value for the operation and a buffer to use for send and receive.

SendPingAsync(String, Int32, Byte[], PingOptions) SendPingAsync(String, Int32, Byte[], PingOptions) SendPingAsync(String, Int32, Byte[], PingOptions) SendPingAsync(String, Int32, Byte[], PingOptions)

Отправляет сообщение запроса проверки связи ICMP с заданным буфером данных на указанный компьютер и получает от него соответствующее сообщения ответа проверки связи ICMP как асинхронная операция.Sends an Internet Control Message Protocol (ICMP) echo message with the specified data buffer to the specified computer, and receive a corresponding ICMP echo reply message from that computer as an asynchronous operation. Эта перегруженная версия метода позволяет указать тайм-аут операции, буфер для использования для отправки и получения и управлять значениями фрагментации и срока жизни пакета сообщения проверки связи ICMP.This overload allows you to specify a time-out value for the operation, a buffer to use for send and receive, and control fragmentation and Time-to-Live values for the ICMP echo message packet.

ToString() ToString() ToString() ToString()

Возвращает объект String, содержащий имя Component, если оно есть.Returns a String containing the name of the Component, if any. Этот метод не следует переопределять.This method should not be overridden.

(Inherited from Component)

События

Disposed Disposed Disposed Disposed

Происходит при удалении компонента вызовом метода Dispose().Occurs when the component is disposed by a call to the Dispose() method.

(Inherited from Component)
PingCompleted PingCompleted PingCompleted PingCompleted

Происходит при завершении или отмене асинхронной операции отправки сообщения проверки связи ICMP и получения соответствующего сообщения ответа проверки связи ICMP.Occurs when an asynchronous operation to send an Internet Control Message Protocol (ICMP) echo message and receive the corresponding ICMP echo reply message completes or is canceled.

Явные реализации интерфейса

IDisposable.Dispose() IDisposable.Dispose() IDisposable.Dispose() IDisposable.Dispose()

Освобождает все ресурсы, используемые экземплярами класса Ping.Releases all resources used by instances of the Ping class.

Свойства

CanRaiseEvents CanRaiseEvents CanRaiseEvents CanRaiseEvents

Возвращает значение, показывающее, может ли компонент вызывать событие.Gets a value indicating whether the component can raise an event.

(Inherited from Component)
Container Container Container Container

Возвращает контейнер IContainer, содержащий компонент Component.Gets the IContainer that contains the Component.

(Inherited from Component)
DesignMode DesignMode DesignMode DesignMode

Возвращает значение, указывающее, находится ли данный компонент Component в режиме конструктора в настоящее время.Gets a value that indicates whether the Component is currently in design mode.

(Inherited from Component)
Events Events Events Events

Возвращает список обработчиков событий, которые прикреплены к этому объекту Component.Gets the list of event handlers that are attached to this Component.

(Inherited from Component)
Site Site Site Site

Возвращает или задает ISite объекта Component.Gets or sets the ISite of the Component.

(Inherited from Component)

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

Дополнительно