Ping Sınıf

Tanım

Bir uygulamanın uzak bilgisayarın ağ üzerinden erişilebilir olup olmadığını belirlemesine izin verir.

public ref class Ping : System::ComponentModel::Component
public ref class Ping : IDisposable
public ref class Ping : System::ComponentModel::Component, IDisposable
public class Ping : System.ComponentModel.Component
public class Ping : IDisposable
public class Ping : System.ComponentModel.Component, IDisposable
type Ping = class
    inherit Component
type Ping = class
    interface IDisposable
type Ping = class
    inherit Component
    interface IDisposable
Public Class Ping
Inherits Component
Public Class Ping
Implements IDisposable
Public Class Ping
Inherits Component
Implements IDisposable
Devralma
Devralma
Ping
Uygulamalar

Örnekler

Aşağıdaki kod örneği, sınıfın zaman uyumlu olarak kullanılmasını Ping gösterir.

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

Aşağıdaki kod örneği, sınıfın Ping zaman uyumsuz olarak kullanılmasını gösterir.

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

Açıklamalar

Uygulamalar, uzak bilgisayarın erişilebilir olup olmadığını algılamak için sınıfını kullanır Ping .

Ağ topolojisi, uzak bir konakla başarılı bir şekilde iletişim kurup kuramayacağını Ping belirleyebilir. Ara sunucuların, ağ adresi çevirisi (NAT) ekipmanının veya güvenlik duvarlarının varlığı ve yapılandırması başarılı olmasını engelleyebilir Ping . Başarılı Ping olması yalnızca uzak konağa ağda ulaşılabildiğini gösterir; uzak konakta daha üst düzey hizmetlerin (Web sunucusu gibi) bulunması garanti değildir.

Bu sınıf, Ping.exe komut satırı aracına benzer işlevler sağlar. Send ve SendAsync yöntemleri uzak bir bilgisayara bir İnternet Denetim İletisi Protokolü (ICMP) yankı isteği iletisi gönderir ve bu bilgisayardan bir ICMP yankı yanıtı iletisi bekler. ICMP iletilerinin ayrıntılı açıklaması için bkz. RFC 792, adresinde https://www.ietf.orgbulunabilir.

Aşağıdaki türler sınıfıyla birlikte Ping kullanılır ve aşağıda ayrıntılı olarak açıklanmıştır.

Tür adı Açıklama
IPStatus ICMP yankı isteği iletisinin sonucunu açıklayan durum kodlarını tanımlar.
PingOptions İstek paketinin kaç kez iletilebileceğiniTtl ( ) ve parçalanıp parçalanmayacağını denetleyebilen ayarları yapılandırmanıza veya almanıza olanak tanır.DontFragment
PingReply ICMP yankı isteğinin sonuçlarını içerir.
PingException Kurtarılamaz bir hata oluşursa oluşturulur.
PingCompletedEventArgs Bir çağrı tamamlandığında veya iptal edildiğinde SendAsync tetiklenen olaylarla PingCompleted ilişkili verileri içerir.
PingCompletedEventHandler Bir çağrı tamamlandığında veya iptal edildiğinde SendAsync çağrılan geri çağırma yöntemini sağlayan temsilci.

Send ve SendAsync yöntemleri yanıtı bir PingReply nesnede döndürür. özelliği, PingReply.Status isteğin sonucunu göstermek için bir IPStatus değer döndürür.

İsteği gönderirken uzak bilgisayarı belirtmeniz gerekir. Bunu yapmak için bir ana bilgisayar adı dizesi, dize biçiminde bir IP adresi veya bir IPAddress nesne sağlayabilirsiniz.

Aşağıdaki bilgi türlerinden herhangi birini de belirtebilirsiniz:

  • İsteğe eşlik edecek veriler. Belirtme, buffer belirli bir boyuttaki bir paketin uzak ana bilgisayara ve uzak ana bilgisayardan geçmesi için gereken süreyi ve ağ yolunun en yüksek iletim birimini öğrenmenize olanak tanır. (Parametre alan buffer veya SendAsync aşırı yüklemelerine bakınSend.)

  • ICMP Echo paketinin aktarım sırasında parçalanıp parçalanmadığı. (Parametre alan options özelliğine Send ve veya SendAsync aşırı yüklemelerine bakınDontFragment.)

  • Yönlendiriciler veya ağ geçitleri gibi yönlendirme düğümlerinin paketi hedef bilgisayara ulaşmadan veya atmadan önce kaç kez iletebileceği. (BkzTtl. ve Send parametre options alan veya SendAsync aşırı yüklemeleri.)

  • Yanıtın alınması gereken süre sınırı. (Parametre alan timeout veya SendAsync aşırı yüklemelerine bakınSend.

sınıfı, Ping isteği göndermek için hem zaman uyumlu hem de zaman uyumsuz yöntemler sunar. Uygulamanızın yanıt beklerken engellemesi gerekiyorsa yöntemlerini kullanın Send ; bu yöntemler zaman uyumlu olur. Uygulamanız engellememesi gerekiyorsa, zaman uyumsuz SendAsync yöntemleri kullanın. çağrısı SendAsync , iş parçacığı havuzundan otomatik olarak ayrılan kendi iş parçacığında yürütülür. Zaman uyumsuz işlem tamamlandığında olayı tetikler PingCompleted . Uygulamalar, olaylar için çağrılan yöntemi belirtmek üzere PingCompleted bir PingCompletedEventHandler temsilci kullanır. çağrısı SendAsyncyapmadan önce olaya bir PingCompletedEventHandler temsilci eklemeniz gerekir. Temsilcinin yöntemi, çağrının sonucunu SendAsync açıklayan bir nesne içeren bir PingReply nesnesi alırPingCompletedEventArgs.

Aynı anda birden çok ICMP Echo isteği oluşturmak için sınıfının aynı örneğini Ping kullanamazsınız. Arama Send devam ederken SendAsync veya önceki tüm aramalar tamamlanmadan birden çok kez çağrılması SendAsync bir InvalidOperationExceptionneden olur.

Oluşturucular

Ping()

Ping sınıfının yeni bir örneğini başlatır.

Özellikler

CanRaiseEvents

Bileşenin olay oluşturup oluşturamayacağını belirten bir değer alır.

(Devralındığı yer: Component)
Container

öğesini IContainer içeren öğesini Componentalır.

(Devralındığı yer: Component)
DesignMode

öğesinin şu anda tasarım modunda olup olmadığını Component gösteren bir değer alır.

(Devralındığı yer: Component)
Events

Bu Componentöğesine eklenen olay işleyicilerinin listesini alır.

(Devralındığı yer: Component)
Site

öğesini alır veya ayarlar ISiteComponent.

(Devralındığı yer: Component)

Yöntemler

CreateObjRef(Type)

Uzak bir nesneyle iletişim kurmak için kullanılan bir ara sunucu oluşturmak için gereken tüm ilgili bilgileri içeren bir nesne oluşturur.

(Devralındığı yer: MarshalByRefObject)
Dispose()

Yönetilmeyen kaynakları serbest bırakır ve tarafından Pingkullanılan yönetilen kaynakları atılır.

Dispose()

Component tarafından kullanılan tüm kaynakları serbest bırakır.

(Devralındığı yer: Component)
Dispose(Boolean)

nesnesi tarafından Ping kullanılan yönetilmeyen kaynakları serbest bırakır ve isteğe bağlı olarak yönetilen kaynakları atar.

Dispose(Boolean)

Component tarafından kullanılan yönetilmeyen kaynakları serbest bırakır ve yönetilen kaynakları isteğe bağlı olarak serbest bırakır.

(Devralındığı yer: Component)
Equals(Object)

Belirtilen nesnenin geçerli nesneye eşit olup olmadığını belirler.

(Devralındığı yer: Object)
GetHashCode()

Varsayılan karma işlevi işlevi görür.

(Devralındığı yer: Object)
GetLifetimeService()
Geçersiz.

Bu örnek için yaşam süresi ilkesini denetleen geçerli yaşam süresi hizmet nesnesini alır.

(Devralındığı yer: MarshalByRefObject)
GetService(Type)

veya tarafından ComponentContainersağlanan bir hizmeti temsil eden bir nesnesi döndürür.

(Devralındığı yer: Component)
GetType()

Type Geçerli örneğini alır.

(Devralındığı yer: Object)
InitializeLifetimeService()
Geçersiz.

Bu örneğin yaşam süresi ilkesini denetlemek için bir yaşam süresi hizmet nesnesi alır.

(Devralındığı yer: MarshalByRefObject)
MemberwiseClone()

Geçerli Objectöğesinin sığ bir kopyasını oluşturur.

(Devralındığı yer: Object)
MemberwiseClone(Boolean)

Geçerli MarshalByRefObject nesnenin sığ bir kopyasını oluşturur.

(Devralındığı yer: MarshalByRefObject)
OnPingCompleted(PingCompletedEventArgs)

Olayı tetikler PingCompleted .

Send(IPAddress)

Belirtilen IPAddressdeğerine sahip bilgisayara bir İnternet Denetim İletisi Protokolü (ICMP) yankı iletisi göndermeye çalışır ve bu bilgisayardan karşılık gelen bir ICMP yankı yanıt iletisi alır.

Send(IPAddress, Int32)

Belirtilen veri arabelleğine sahip IPAddressbir İnternet Denetim İletisi Protokolü (ICMP) yankı iletisi göndermeye çalışır ve bu bilgisayardan karşılık gelen bir ICMP yankı yanıtı iletisi alır. Bu yöntem, işlem için bir zaman aşımı değeri belirtmenize olanak tanır.

Send(IPAddress, Int32, Byte[])

Belirtilen veri arabelleğine sahip IPAddressbir İnternet Denetim İletisi Protokolü (ICMP) yankı iletisi göndermeye çalışır ve bu bilgisayardan karşılık gelen bir ICMP yankı yanıtı iletisi alır. Bu aşırı yükleme işlemi için bir zaman aşımı değeri belirtmenize olanak tanır.

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

Belirtilen veri arabelleğine sahip IPAddress bir İnternet Denetim İletisi Protokolü (ICMP) yankı iletisi göndermeye ve bu bilgisayardan karşılık gelen bir ICMP yankı yanıtı iletisi almaya çalışır. Bu aşırı yükleme, işlem için bir zaman aşımı değeri belirtmenize ve ICMP yankı ileti paketi için parçalanma ve Yaşam Süresi değerlerini denetlemenize olanak tanır.

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

Belirtilen IPAddressdeğerine sahip bilgisayara bir İnternet Denetim İletisi Protokolü (ICMP) yankı iletisi göndermeye ve ilgili ICMP yankı yanıt iletisini bu bilgisayardan almaya çalışır.

Send(String)

Belirtilen bilgisayara bir İnternet Denetim İletisi Protokolü (ICMP) yankı iletisi göndermeye çalışır ve bu bilgisayardan karşılık gelen bir ICMP yankı yanıtı iletisi alır.

Send(String, Int32)

Belirtilen bilgisayara bir İnternet Denetim İletisi Protokolü (ICMP) yankı iletisi göndermeye çalışır ve bu bilgisayardan karşılık gelen bir ICMP yankı yanıtı iletisi alır. Bu yöntem, işlem için bir zaman aşımı değeri belirtmenize olanak tanır.

Send(String, Int32, Byte[])

Belirtilen bilgisayara belirtilen veri arabelleğine sahip bir İnternet Denetim İletisi Protokolü (ICMP) yankı iletisi göndermeye çalışır ve bu bilgisayardan karşılık gelen bir ICMP yankı yanıtı iletisi alır. Bu aşırı yükleme işlemi için bir zaman aşımı değeri belirtmenize olanak tanır.

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

Belirtilen bilgisayara belirtilen veri arabelleğine sahip bir İnternet Denetim İletisi Protokolü (ICMP) yankı iletisi göndermeye çalışır ve bu bilgisayardan karşılık gelen bir ICMP yankı yanıtı iletisi alır. Bu aşırı yükleme, işlem için bir zaman aşımı değeri belirtmenize ve ICMP paketi için parçalanma ve Yaşam Süresi değerlerini denetlemenize olanak tanır.

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

Belirtilen bilgisayara bir İnternet Denetim İletisi Protokolü (ICMP) yankı iletisi göndermeye ve bu bilgisayardan karşılık gelen bir ICMP yankı yanıtı iletisi almaya çalışır.

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

Zaman uyumsuz olarak, belirtilen veri arabelleğine sahip IPAddressbir İnternet Denetim İletisi Protokolü (ICMP) yankı iletisi göndermeye çalışır ve ilgili bilgisayardan ilgili ICMP yankı yanıtı iletisini alır. Bu aşırı yükleme işlemi için bir zaman aşımı değeri belirtmenize olanak tanır.

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

Zaman uyumsuz olarak, belirtilen veri arabelleğine sahip IPAddressbir İnternet Denetim İletisi Protokolü (ICMP) yankı iletisi göndermeye çalışır ve ilgili bilgisayardan ilgili ICMP yankı yanıtı iletisini alır. Bu aşırı yükleme, işlem için bir zaman aşımı değeri belirtmenize ve ICMP yankı ileti paketi için parçalanma ve Yaşam Süresi değerlerini denetlemenize olanak tanır.

SendAsync(IPAddress, Int32, Object)

Belirtilen IPAddressdeğerine sahip bilgisayara zaman uyumsuz olarak bir İnternet Denetim İletisi Protokolü (ICMP) yankı iletisi göndermeye çalışır ve bu bilgisayardan karşılık gelen bir ICMP yankı yanıtı iletisi alır. Bu aşırı yükleme işlemi için bir zaman aşımı değeri belirtmenize olanak tanır.

SendAsync(IPAddress, Object)

Belirtilen IPAddressdeğerine sahip bilgisayara zaman uyumsuz olarak bir İnternet Denetim İletisi Protokolü (ICMP) yankı iletisi göndermeye çalışır ve bu bilgisayardan karşılık gelen bir ICMP yankı yanıtı iletisi alır.

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

Zaman uyumsuz olarak belirtilen bilgisayara belirtilen veri arabelleğine sahip bir İnternet Denetim İletisi Protokolü (ICMP) yankı iletisi göndermeye çalışır ve bu bilgisayardan karşılık gelen bir ICMP yankı yanıtı iletisi alır. Bu aşırı yükleme işlemi için bir zaman aşımı değeri belirtmenize olanak tanır.

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

Zaman uyumsuz olarak belirtilen bilgisayara belirtilen veri arabelleğine sahip bir İnternet Denetim İletisi Protokolü (ICMP) yankı iletisi göndermeye çalışır ve bu bilgisayardan karşılık gelen bir ICMP yankı yanıtı iletisi alır. Bu aşırı yükleme, işlem için bir zaman aşımı değeri belirtmenize ve ICMP paketi için parçalanma ve Yaşam Süresi değerlerini denetlemenize olanak tanır.

SendAsync(String, Int32, Object)

Belirtilen bilgisayara zaman uyumsuz olarak bir İnternet Denetim İletisi Protokolü (ICMP) yankı iletisi göndermeye çalışır ve bu bilgisayardan karşılık gelen bir ICMP yankısı yanıt iletisi alır. Bu aşırı yükleme işlemi için bir zaman aşımı değeri belirtmenize olanak tanır.

SendAsync(String, Object)

Belirtilen bilgisayara zaman uyumsuz olarak bir İnternet Denetim İletisi Protokolü (ICMP) yankı iletisi göndermeye çalışır ve bu bilgisayardan karşılık gelen bir ICMP yankısı yanıt iletisi alır.

SendAsyncCancel()

İnternet Denetim İletisi Protokolü (ICMP) yankı iletisi göndermek için bekleyen tüm zaman uyumsuz istekleri iptal eder ve karşılık gelen bir ICMP yankı yanıt iletisi alır.

SendPingAsync(IPAddress)

Belirtilen veri arabelleğine sahip bilgisayara, belirtilen veri arabelleğine sahip IPAddressbir İnternet Denetim İletisi Protokolü (ICMP) yankı iletisi gönderin ve bu bilgisayardan zaman uyumsuz bir işlem olarak karşılık gelen bir ICMP yankı yanıt iletisi alır.

SendPingAsync(IPAddress, Int32)

Belirtilen veri arabelleğine sahip bilgisayara, belirtilen veri arabelleğine sahip IPAddressbir İnternet Denetim İletisi Protokolü (ICMP) yankı iletisi gönderin ve bu bilgisayardan zaman uyumsuz bir işlem olarak karşılık gelen bir ICMP yankı yanıt iletisi alır. Bu aşırı yükleme işlemi için bir zaman aşımı değeri belirtmenize olanak tanır.

SendPingAsync(IPAddress, Int32, Byte[])

Belirtilen veri arabelleğine sahip bilgisayara, belirtilen veri arabelleğine sahip IPAddressbir İnternet Denetim İletisi Protokolü (ICMP) yankı iletisi gönderin ve bu bilgisayardan zaman uyumsuz bir işlem olarak karşılık gelen bir ICMP yankı yanıt iletisi alır. Bu aşırı yükleme, işlem için bir zaman aşımı değeri ve gönderme ve alma için kullanılacak bir arabellek belirtmenize olanak tanır.

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

Belirtilen veri arabelleğine sahip bilgisayara, belirtilen IPAddressveri arabelleğine sahip bir İnternet Denetim İletisi Protokolü (ICMP) yankı iletisi gönderir ve bu bilgisayardan zaman uyumsuz bir işlem olarak karşılık gelen bir ICMP yankı yanıt iletisi alır. Bu aşırı yükleme, işlem için bir zaman aşımı değeri, gönderme ve alma için kullanılacak bir arabellek belirtmenize ve ICMP yankı ileti paketi için parçalanma ve Yaşam Süresi değerlerini denetlemenize olanak tanır.

SendPingAsync(IPAddress, TimeSpan, Byte[], PingOptions, CancellationToken)

Belirtilen veri arabelleğine sahip bilgisayara, belirtilen IPAddressveri arabelleğine sahip bir İnternet Denetim İletisi Protokolü (ICMP) yankı iletisi gönderir ve bu bilgisayardan zaman uyumsuz bir işlem olarak karşılık gelen bir ICMP yankı yanıt iletisi alır. Bu aşırı yükleme işlem için bir zaman aşımı değeri, gönderme ve alma için kullanılacak bir arabellek, parçalanma ve Yaşam Süresi değerlerini denetleme ve ICMP yankı ileti paketi için bir CancellationToken belirtmenize olanak tanır.

SendPingAsync(String)

Belirtilen bilgisayara belirtilen veri arabelleğiyle bir İnternet Denetim İletisi Protokolü (ICMP) yankı iletisi gönderir ve zaman uyumsuz bir işlem olarak bu bilgisayardan karşılık gelen bir ICMP yankı yanıtı iletisi alır.

SendPingAsync(String, Int32)

Belirtilen bilgisayara belirtilen veri arabelleğiyle bir İnternet Denetim İletisi Protokolü (ICMP) yankı iletisi gönderir ve zaman uyumsuz bir işlem olarak bu bilgisayardan karşılık gelen bir ICMP yankı yanıtı iletisi alır. Bu aşırı yükleme işlemi için bir zaman aşımı değeri belirtmenize olanak tanır.

SendPingAsync(String, Int32, Byte[])

Belirtilen bilgisayara belirtilen veri arabelleğiyle bir İnternet Denetim İletisi Protokolü (ICMP) yankı iletisi gönderir ve zaman uyumsuz bir işlem olarak bu bilgisayardan karşılık gelen bir ICMP yankı yanıtı iletisi alır. Bu aşırı yükleme, işlem için bir zaman aşımı değeri ve gönderme ve alma için kullanılacak bir arabellek belirtmenize olanak tanır.

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

Belirtilen bilgisayara belirtilen veri arabelleğiyle bir İnternet Denetim İletisi Protokolü (ICMP) yankı iletisi gönderir ve zaman uyumsuz bir işlem olarak bu bilgisayardan karşılık gelen bir ICMP yankı yanıtı iletisi alır. Bu aşırı yükleme, işlem için bir zaman aşımı değeri, gönderme ve alma için kullanılacak bir arabellek belirtmenize ve ICMP yankı ileti paketi için parçalanma ve Yaşam Süresi değerlerini denetlemenize olanak tanır.

SendPingAsync(String, TimeSpan, Byte[], PingOptions, CancellationToken)

Belirtilen veri arabelleğiyle belirtilen bilgisayara bir İnternet Denetim İletisi Protokolü (ICMP) yankı iletisi gönderir ve bu bilgisayardan zaman uyumsuz bir işlem olarak karşılık gelen bir ICMP yankı yanıtı iletisi alır. Bu aşırı yükleme işlem için bir zaman aşımı değeri, gönderme ve alma için kullanılacak bir arabellek, parçalanma ve Yaşam Süresi değerlerini denetleme ve ICMP yankı ileti paketi için bir CancellationToken belirtmenize olanak tanır.

ToString()

Varsa, adını Componentiçeren bir String döndürür. Bu yöntem geçersiz kılınmamalıdır.

(Devralındığı yer: Component)
ToString()

Geçerli nesneyi temsil eden dizeyi döndürür.

(Devralındığı yer: Object)

Ekinlikler

Disposed

Bileşen yöntemine Dispose() yapılan bir çağrı tarafından atıldığında gerçekleşir.

(Devralındığı yer: Component)
PingCompleted

İnternet Denetim İletisi Protokolü (ICMP) yankı iletisi göndermek ve karşılık gelen ICMP yankı yanıtı iletisini almak için zaman uyumsuz bir işlem tamamlandığında veya iptal edildiğinde gerçekleşir.

Belirtik Arabirim Kullanımları

IDisposable.Dispose()

Sınıfın örnekleri Ping tarafından kullanılan tüm kaynakları serbest bırakır.

Şunlara uygulanır

Ayrıca bkz.