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した場合は、ネットワーク上でリモートホストに到達できることを示します。リモートホスト上の上位レベルのサービス (Web サーバーなど) の存在は保証されません。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. メソッドSendSendAsyncメソッドは、インターネット制御メッセージプロトコル (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 SendAsync呼び出しが完了するかPingCompleted取り消されたときに発生するイベントに関連付けられたデータを格納します。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.

メソッドSendSendAsyncメソッドは、 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 optionsパラメーターを受け取るSendAsyncまたはオーバーロードを参照してください)。(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. (およびTtlSend パラメーターoptionsSendAsync受け取るまたはのオーバーロードを参照してください)。(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. を呼び出すPingCompletedEventHandler SendAsync前に、イベントにデリゲートを追加する必要があります。You must add a PingCompletedEventHandler delegate to the event before calling SendAsync. デリゲートのメソッドは、 PingCompletedEventArgs SendAsync呼び出しの結果を記述PingReplyするオブジェクトを含むオブジェクトを受け取ります。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完了するまでInvalidOperationException複数回呼び出したときにを呼び出すと、が発生します。SendAsync 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)

指定した IPAddress を持つコンピューターに ICMP (インターネット制御メッセージ プロトコル) エコー メッセージを送信し、そのコンピューターから対応する 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)

指定された IPAddress を持つコンピューターに、指定されたデータ バッファーと共に ICMP (インターネット制御メッセージ プロトコル) エコー メッセージを送信し、そのコンピューターから対応する 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[])

指定された IPAddress を持つコンピューターに、指定されたデータ バッファーと共に ICMP (インターネット制御メッセージ プロトコル) エコー メッセージを送信し、そのコンピューターから対応する 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)

指定された IPAddress を持つコンピューターに、指定されたデータ バッファーと共に ICMP (インターネット制御メッセージ プロトコル) エコー メッセージを送信し、そのコンピューターから対応する 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 エコー メッセージ パケットのフラグメンテーションと有効期間 (TTL: time-to-live) の値を制御できます。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 パケットのフラグメンテーションと有効期間 (TTL: time-to-live) 値を制御できます。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)

指定された IPAddress を持つコンピューターに、指定されたデータ バッファーと共に ICMP (インターネット制御メッセージ プロトコル) エコー メッセージを非同期的に送信し、そのコンピューターから対応する 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)

指定された IPAddress を持つコンピューターに、指定されたデータ バッファーと共に ICMP (インターネット制御メッセージ プロトコル) エコー メッセージを非同期的に送信し、そのコンピューターから対応する 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 エコー メッセージ パケットのフラグメンテーションと有効期間 (TTL: time-to-live) の値を制御できます。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)

指定された IPAddress を持つコンピューターに、非同期的に ICMP (インターネット制御メッセージ プロトコル) エコー メッセージを送信し、そのコンピューターから対応する 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)

指定された IPAddress を持つコンピューターに、非同期的に ICMP (インターネット制御メッセージ プロトコル) エコー メッセージを送信し、そのコンピューターから対応する 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 パケットのフラグメンテーションと有効期間 (TTL: time-to-live) 値を制御できます。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)

非同期操作として、指定された IPAddress を持つコンピューターに、指定されたデータ バッファーと共に ICMP (インターネット制御メッセージ プロトコル) エコー メッセージを送信し、そのコンピューターから対応する 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)

非同期操作として、指定された IPAddress を持つコンピューターに、指定されたデータ バッファーと共に ICMP (インターネット制御メッセージ プロトコル) エコー メッセージを送信し、そのコンピューターから対応する 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[])

非同期操作として、指定された IPAddress を持つコンピューターに、指定されたデータ バッファーと共に ICMP (インターネット制御メッセージ プロトコル) エコー メッセージを送信し、そのコンピューターから対応する 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)

非同期操作として、指定された IPAddress を持つコンピューターに、指定されたデータ バッファーと共に ICMP (インターネット制御メッセージ プロトコル) エコー メッセージを送信し、そのコンピューターから対応する 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 エコー メッセージ パケットのフラグメンテーションと有効期間 (TTL: time-to-live) の値を制御できます。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 エコー メッセージ パケットのフラグメンテーションと有効期間 (TTL: time-to-live) の値を制御できます。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()

Component の名前 (存在する場合) を格納する String を返します。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

ComponentISite を取得または設定します。Gets or sets the ISite of the Component.

(Inherited from Component)

適用対象

こちらもご覧ください