Bagikan melalui


Ping.Send Metode

Definisi

Mencoba mengirim pesan gema Protokol Pesan Kontrol Internet (ICMP) ke komputer jarak jauh dan menerima pesan balasan gema ICMP yang sesuai dari komputer jarak jauh.

Overload

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

Mencoba mengirim pesan gema Protokol Pesan Kontrol Internet (ICMP) ke komputer yang ditentukan, dan untuk menerima pesan balasan gema ICMP yang sesuai dari komputer tersebut.

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

Mencoba mengirim pesan gema Internet Control Message Protocol (ICMP) dengan buffer data yang ditentukan ke komputer yang ditentukan, dan menerima pesan balasan gema ICMP yang sesuai dari komputer tersebut. Kelebihan beban ini memungkinkan Anda menentukan nilai waktu habis untuk operasi dan mengontrol fragmentasi dan nilai Time-to-Live untuk paket ICMP.

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

Mencoba mengirim pesan gema Protokol Pesan Kontrol Internet (ICMP) ke komputer yang memiliki IPAddress, dan untuk menerima pesan balasan gema ICMP yang sesuai dari komputer tersebut.

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

Upaya untuk mengirim pesan gema Protokol Pesan Kontrol Internet (ICMP) dengan buffer data yang ditentukan ke komputer yang memiliki pesan balasan gema ICMP yang ditentukan IPAddress dan menerima pesan balasan gema ICMP yang sesuai dari komputer tersebut. Kelebihan beban ini memungkinkan Anda menentukan nilai waktu habis untuk operasi dan mengontrol fragmentasi dan nilai Time-to-Live untuk paket pesan gema ICMP.

Send(String, Int32, Byte[])

Mencoba mengirim pesan gema Internet Control Message Protocol (ICMP) dengan buffer data yang ditentukan ke komputer yang ditentukan, dan menerima pesan balasan gema ICMP yang sesuai dari komputer tersebut. Kelebihan beban ini memungkinkan Anda menentukan nilai waktu habis untuk operasi.

Send(IPAddress, Int32, Byte[])

Mencoba mengirim pesan gema Internet Control Message Protocol (ICMP) dengan buffer data yang ditentukan ke komputer yang memiliki IPAddress, dan menerima pesan balasan gema ICMP yang sesuai dari komputer tersebut. Kelebihan beban ini memungkinkan Anda menentukan nilai waktu habis untuk operasi.

Send(String, Int32)

Mencoba mengirim pesan gema Protokol Pesan Kontrol Internet (ICMP) ke komputer yang ditentukan, dan menerima pesan balasan gema ICMP yang sesuai dari komputer tersebut. Metode ini memungkinkan Anda menentukan nilai waktu habis untuk operasi.

Send(IPAddress, Int32)

Mencoba mengirim pesan gema Internet Control Message Protocol (ICMP) dengan buffer data yang ditentukan ke komputer yang memiliki IPAddress, dan menerima pesan balasan gema ICMP yang sesuai dari komputer tersebut. Metode ini memungkinkan Anda menentukan nilai waktu habis untuk operasi.

Send(String)

Mencoba mengirim pesan gema Protokol Pesan Kontrol Internet (ICMP) ke komputer yang ditentukan, dan menerima pesan balasan gema ICMP yang sesuai dari komputer tersebut.

Send(IPAddress)

Upaya untuk mengirim pesan gema Protokol Pesan Kontrol Internet (ICMP) ke komputer yang memiliki IPAddress, dan menerima pesan balasan gema ICMP yang sesuai dari komputer tersebut.

Keterangan

Alamat IP yang dikembalikan oleh salah Send satu kelebihan beban dapat berasal dari komputer jarak jauh yang berbahaya. Jangan sambungkan ke komputer jarak jauh dengan menggunakan ini. Gunakan DNS untuk menentukan alamat IP komputer yang ingin Anda sambungkan.

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

Sumber:
Ping.cs
Sumber:
Ping.cs
Sumber:
Ping.cs

Mencoba mengirim pesan gema Protokol Pesan Kontrol Internet (ICMP) ke komputer yang ditentukan, dan untuk menerima pesan balasan gema ICMP yang sesuai dari komputer tersebut.

public:
 System::Net::NetworkInformation::PingReply ^ Send(System::String ^ hostNameOrAddress, TimeSpan timeout, cli::array <System::Byte> ^ buffer, System::Net::NetworkInformation::PingOptions ^ options);
public System.Net.NetworkInformation.PingReply Send (string hostNameOrAddress, TimeSpan timeout, byte[]? buffer, System.Net.NetworkInformation.PingOptions? options);
member this.Send : string * TimeSpan * byte[] * System.Net.NetworkInformation.PingOptions -> System.Net.NetworkInformation.PingReply
Public Function Send (hostNameOrAddress As String, timeout As TimeSpan, buffer As Byte(), options As PingOptions) As PingReply

Parameter

hostNameOrAddress
String

String Yang mengidentifikasi komputer yang merupakan tujuan untuk pesan gema ICMP. Nilai yang ditentukan untuk parameter ini dapat menjadi nama host atau representasi string dari alamat IP.

timeout
TimeSpan

Nilai yang menentukan jumlah waktu maksimum (setelah mengirim pesan gema) untuk menunggu pesan balasan gema ICMP.

buffer
Byte[]

Array Byte yang berisi data yang akan dikirim dengan pesan gema ICMP dan dikembalikan dalam pesan balasan gema ICMP. Array tidak boleh berisi lebih dari 65.500 byte.

options
PingOptions

Objek yang PingOptions digunakan untuk mengontrol fragmentasi dan nilai Time-to-Live untuk paket pesan gema ICMP.

Mengembalikan

Informasi tentang pesan balasan gema ICMP, jika diterima, atau alasan kegagalan, jika tidak ada pesan yang diterima.

Pengecualian

buffer atau hostNameOrAddress adalah null atau hostNameOrAddress adalah string kosong ("").

timeout mewakili waktu kurang dari nol milidetik atau lebih besar dari MaxValue milidetik.

Ukurannya bufferlebih besar dari 65.500 byte.

Panggilan ke SendAsync sedang berlangsung.

Pengecualian dilemparkan saat mengirim atau menerima pesan ICMP. Lihat pengecualian dalam untuk pengecualian yang tepat yang dilemparkan.

Obyek ini telah dibuang.

Berlaku untuk

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

Sumber:
Ping.cs
Sumber:
Ping.cs
Sumber:
Ping.cs

Mencoba mengirim pesan gema Internet Control Message Protocol (ICMP) dengan buffer data yang ditentukan ke komputer yang ditentukan, dan menerima pesan balasan gema ICMP yang sesuai dari komputer tersebut. Kelebihan beban ini memungkinkan Anda menentukan nilai waktu habis untuk operasi dan mengontrol fragmentasi dan nilai Time-to-Live untuk paket ICMP.

public:
 System::Net::NetworkInformation::PingReply ^ Send(System::String ^ hostNameOrAddress, int timeout, cli::array <System::Byte> ^ buffer, System::Net::NetworkInformation::PingOptions ^ options);
public System.Net.NetworkInformation.PingReply Send (string hostNameOrAddress, int timeout, byte[] buffer, System.Net.NetworkInformation.PingOptions? options);
public System.Net.NetworkInformation.PingReply Send (string hostNameOrAddress, int timeout, byte[] buffer, System.Net.NetworkInformation.PingOptions options);
member this.Send : string * int * byte[] * System.Net.NetworkInformation.PingOptions -> System.Net.NetworkInformation.PingReply
Public Function Send (hostNameOrAddress As String, timeout As Integer, buffer As Byte(), options As PingOptions) As PingReply

Parameter

hostNameOrAddress
String

String Yang mengidentifikasi komputer yang merupakan tujuan untuk pesan gema ICMP. Nilai yang ditentukan untuk parameter ini dapat menjadi nama host atau representasi string dari alamat IP.

timeout
Int32

Int32 Nilai yang menentukan jumlah maksimum milidetik (setelah mengirim pesan gema) untuk menunggu pesan balasan gema ICMP.

buffer
Byte[]

Array Byte yang berisi data yang akan dikirim dengan pesan gema ICMP dan dikembalikan dalam pesan balasan gema ICMP. Array tidak boleh berisi lebih dari 65.500 byte.

options
PingOptions

Objek yang PingOptions digunakan untuk mengontrol fragmentasi dan nilai Time-to-Live untuk paket pesan gema ICMP.

Mengembalikan

Objek PingReply yang memberikan informasi tentang pesan balasan gema ICMP jika diterima, atau memberikan alasan kegagalan jika tidak ada pesan yang diterima.

Pengecualian

Ukuran buffer melebihi 65500 byte.

hostNameOrAddress adalah null atau adalah string panjang nol.

-atau-

bufferadalah null.

timeout kurang dari nol.

Panggilan ke SendAsync sedang berlangsung.

Pengecualian dilemparkan saat mengirim atau menerima pesan ICMP. Lihat pengecualian dalam untuk pengecualian yang tepat yang dilemparkan.

Obyek ini telah dibuang.

.NET 7 dan versi yang lebih baru hanya di Linux: Prosesnya tidak diistimewakan, dan buffer tidak kosong.

Contoh

Contoh kode berikut menunjukkan cara memanggil metode ini.

void ComplexPing()
{
   Ping ^ pingSender = gcnew Ping;
   
   // Create a buffer of 32 bytes of data to be transmitted.
   String^ data = "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa";
   array<Byte>^buffer = Encoding::ASCII->GetBytes( data );
   
   // Wait 10 seconds for a reply.
   int timeout = 10000;
   
   // 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 );
   
   // Send the request.
   PingReply ^ reply = pingSender->Send( "www.contoso.com", 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 );
   }
   else
   {
      Console::WriteLine( reply->Status );
   }
}
public static void ComplexPing ()
{
    Ping pingSender = new Ping ();

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

    // Wait 10 seconds for a reply.
    int timeout = 10000;

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

    // Send the request.
    PingReply reply = pingSender.Send ("www.contoso.com", 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);
    }
    else
    {
        Console.WriteLine (reply.Status);
    }
}

Keterangan

Jika pesan balasan gema ICMP tidak diterima dalam waktu yang ditentukan oleh timeout parameter, gema ICMP gagal, dan Status properti diatur ke TimedOut.

Catatan

Ketika menentukan angka yang sangat kecil untuk timeout, balasan Ping dapat diterima meskipun timeout milidetik telah berlalu.

DontFragment Jika properti adalah true dan ukuran paket total melebihi ukuran paket maksimum yang dapat ditransmisikan oleh salah satu simpul perutean antara komputer lokal dan jarak jauh, permintaan gema ICMP gagal. Ketika ini terjadi, Status diatur ke PacketTooBig.

Ttl Gunakan properti untuk menentukan berapa kali pesan gema ICMP dapat diteruskan sebelum mencapai tujuannya. Jika paket tidak mencapai tujuannya setelah diteruskan berapa kali yang ditentukan, paket dibuang dan permintaan gema ICMP gagal. Ketika ini terjadi, Status diatur ke TtlExpired.

Berlaku untuk

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

Sumber:
Ping.cs
Sumber:
Ping.cs
Sumber:
Ping.cs

Mencoba mengirim pesan gema Protokol Pesan Kontrol Internet (ICMP) ke komputer yang memiliki IPAddress, dan untuk menerima pesan balasan gema ICMP yang sesuai dari komputer tersebut.

public:
 System::Net::NetworkInformation::PingReply ^ Send(System::Net::IPAddress ^ address, TimeSpan timeout, cli::array <System::Byte> ^ buffer, System::Net::NetworkInformation::PingOptions ^ options);
public System.Net.NetworkInformation.PingReply Send (System.Net.IPAddress address, TimeSpan timeout, byte[]? buffer, System.Net.NetworkInformation.PingOptions? options);
member this.Send : System.Net.IPAddress * TimeSpan * byte[] * System.Net.NetworkInformation.PingOptions -> System.Net.NetworkInformation.PingReply
Public Function Send (address As IPAddress, timeout As TimeSpan, buffer As Byte(), options As PingOptions) As PingReply

Parameter

address
IPAddress

Yang IPAddress mengidentifikasi komputer yang merupakan tujuan untuk pesan gema ICMP.

timeout
TimeSpan

Nilai yang menentukan jumlah waktu maksimum (setelah mengirim pesan gema) untuk menunggu pesan balasan gema ICMP.

buffer
Byte[]

Array Byte yang berisi data yang akan dikirim dengan pesan gema ICMP dan dikembalikan dalam pesan balasan gema ICMP. Array tidak boleh berisi lebih dari 65.500 byte.

options
PingOptions

Objek yang PingOptions digunakan untuk mengontrol fragmentasi dan nilai Time-to-Live untuk paket pesan gema ICMP.

Mengembalikan

Informasi tentang pesan balasan gema ICMP, jika diterima, atau alasan kegagalan, jika tidak ada pesan yang diterima.

Pengecualian

address atau buffer adalah null.

timeout mewakili waktu kurang dari nol milidetik atau lebih besar dari MaxValue milidetik.

Ukurannya bufferlebih besar dari 65.500 byte.

Panggilan ke SendAsync sedang berlangsung.

Pengecualian dilemparkan saat mengirim atau menerima pesan ICMP. Lihat pengecualian dalam untuk pengecualian yang tepat yang dilemparkan.

Obyek ini telah dibuang.

Berlaku untuk

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

Sumber:
Ping.cs
Sumber:
Ping.cs
Sumber:
Ping.cs

Upaya untuk mengirim pesan gema Protokol Pesan Kontrol Internet (ICMP) dengan buffer data yang ditentukan ke komputer yang memiliki pesan balasan gema ICMP yang ditentukan IPAddress dan menerima pesan balasan gema ICMP yang sesuai dari komputer tersebut. Kelebihan beban ini memungkinkan Anda menentukan nilai waktu habis untuk operasi dan mengontrol fragmentasi dan nilai Time-to-Live untuk paket pesan gema ICMP.

public:
 System::Net::NetworkInformation::PingReply ^ Send(System::Net::IPAddress ^ address, int timeout, cli::array <System::Byte> ^ buffer, System::Net::NetworkInformation::PingOptions ^ options);
public System.Net.NetworkInformation.PingReply Send (System.Net.IPAddress address, int timeout, byte[] buffer, System.Net.NetworkInformation.PingOptions? options);
public System.Net.NetworkInformation.PingReply Send (System.Net.IPAddress address, int timeout, byte[] buffer, System.Net.NetworkInformation.PingOptions options);
member this.Send : System.Net.IPAddress * int * byte[] * System.Net.NetworkInformation.PingOptions -> System.Net.NetworkInformation.PingReply
Public Function Send (address As IPAddress, timeout As Integer, buffer As Byte(), options As PingOptions) As PingReply

Parameter

address
IPAddress

Yang IPAddress mengidentifikasi komputer yang merupakan tujuan untuk pesan gema ICMP.

timeout
Int32

Int32 Nilai yang menentukan jumlah maksimum milidetik (setelah mengirim pesan gema) untuk menunggu pesan balasan gema ICMP.

buffer
Byte[]

Array Byte yang berisi data yang akan dikirim dengan pesan gema ICMP dan dikembalikan dalam pesan balasan gema ICMP. Array tidak boleh berisi lebih dari 65.500 byte.

options
PingOptions

Objek yang PingOptions digunakan untuk mengontrol nilai fragmentasi dan Time-to-Live untuk paket pesan gema ICMP.

Mengembalikan

Objek PingReply yang menyediakan informasi tentang pesan balasan gema ICMP, jika diterima, atau memberikan alasan kegagalan, jika tidak ada pesan yang diterima. Metode akan kembali PacketTooBig jika paket melebihi Unit Transmisi Maksimum (MTU).

Pengecualian

Ukuran buffer melebihi 65500 byte.

address atau buffer adalah null.

timeout kurang dari nol.

Panggilan ke SendAsync sedang berlangsung.

Pengecualian dilemparkan saat mengirim atau menerima pesan ICMP. Lihat pengecualian dalam untuk pengecualian yang tepat yang dilemparkan.

Objek ini telah dibuang.

.NET 7 dan versi yang lebih baru hanya di Linux: Prosesnya tidak istimewa, dan buffer tidak kosong.

Contoh

Contoh kode berikut menunjukkan cara memanggil metode ini.

void ComplexLocalPing()
{
   
   // Ping's the local machine.
   Ping ^ pingSender = gcnew Ping;
   IPAddress^ address = IPAddress::Loopback;
   
   // Create a buffer of 32 bytes of data to be transmitted.
   String^ data = "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa";
   array<Byte>^buffer = Encoding::ASCII->GetBytes( data );
   
   // Wait 10 seconds for a reply.
   int timeout = 10000;
   
   // 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 );
   PingReply ^ reply = pingSender->Send( address, 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 );
   }
   else
   {
      Console::WriteLine( reply->Status );
   }
}
public static void ComplexLocalPing ()
{
    // Ping's the local machine.
    Ping pingSender = new Ping ();
    IPAddress address = IPAddress.Loopback;

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

    // Wait 10 seconds for a reply.
    int timeout = 10000;

    // 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);
    PingReply reply = pingSender.Send (address, 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);
    }
    else
    {
        Console.WriteLine (reply.Status);
    }
}

Keterangan

Jika pesan balasan gema ICMP tidak diterima dalam waktu yang ditentukan oleh timeout parameter, gema ICMP gagal, dan Status properti diatur ke TimedOut.

Catatan

Ketika menentukan angka yang sangat kecil untuk timeout, balasan Ping dapat diterima meskipun timeout milidetik telah berlalu.

DontFragment Jika properti adalah true dan ukuran paket total melebihi ukuran paket maksimum yang dapat ditransmisikan oleh salah satu simpul perutean antara komputer lokal dan jarak jauh, permintaan gema ICMP gagal. Ketika ini terjadi, Status diatur ke PacketTooBig.

Ttl Gunakan properti untuk menentukan berapa kali pesan gema ICMP dapat diteruskan sebelum mencapai tujuannya. Jika paket tidak mencapai tujuannya setelah diteruskan beberapa kali, paket dibuang dan permintaan ICMP echo gagal. Ketika ini terjadi, Status diatur ke TtlExpired.

Berlaku untuk

Send(String, Int32, Byte[])

Sumber:
Ping.cs
Sumber:
Ping.cs
Sumber:
Ping.cs

Mencoba mengirim pesan gema Internet Control Message Protocol (ICMP) dengan buffer data yang ditentukan ke komputer yang ditentukan, dan menerima pesan balasan gema ICMP yang sesuai dari komputer tersebut. Kelebihan beban ini memungkinkan Anda menentukan nilai waktu habis untuk operasi.

public:
 System::Net::NetworkInformation::PingReply ^ Send(System::String ^ hostNameOrAddress, int timeout, cli::array <System::Byte> ^ buffer);
public System.Net.NetworkInformation.PingReply Send (string hostNameOrAddress, int timeout, byte[] buffer);
member this.Send : string * int * byte[] -> System.Net.NetworkInformation.PingReply
Public Function Send (hostNameOrAddress As String, timeout As Integer, buffer As Byte()) As PingReply

Parameter

hostNameOrAddress
String

String Yang mengidentifikasi komputer yang merupakan tujuan untuk pesan gema ICMP. Nilai yang ditentukan untuk parameter ini dapat berupa nama host atau representasi string alamat IP.

timeout
Int32

Int32 Nilai yang menentukan jumlah maksimum milidetik (setelah mengirim pesan gema) untuk menunggu pesan balasan gema ICMP.

buffer
Byte[]

Array Byte yang berisi data yang akan dikirim dengan pesan gema ICMP dan dikembalikan dalam pesan balasan gema ICMP. Array tidak boleh berisi lebih dari 65.500 byte.

Mengembalikan

Objek PingReply yang menyediakan informasi tentang pesan balasan gema ICMP jika diterima, atau memberikan alasan kegagalan jika tidak ada pesan yang diterima.

Pengecualian

Ukuran buffer melebihi 65500 byte.

hostNameOrAddress adalah null atau adalah string kosong ("").

-atau-

bufferadalah null.

timeout kurang dari nol.

Panggilan ke SendAsync sedang berlangsung.

Pengecualian dilemparkan saat mengirim atau menerima pesan ICMP. Lihat pengecualian dalam untuk pengecualian yang tepat yang dilemparkan.

Objek ini telah dibuang.

.NET 7 dan versi yang lebih baru hanya di Linux: Prosesnya tidak istimewa, dan buffer tidak kosong.

Contoh

Untuk contoh yang menunjukkan cara memanggil Send kelebihan beban, lihat Ping gambaran umum kelas.

Keterangan

Jika pesan balasan gema ICMP tidak diterima dalam waktu yang ditentukan dalam timeout parameter, gema ICMP gagal, dan Status properti diatur ke TimedOut.

Catatan

Ketika menentukan angka yang sangat kecil untuk timeout, balasan Ping dapat diterima meskipun timeout milidetik telah berlalu.

Kelebihan beban ini menggunakan pengaturan default untuk fragmentasi paket dan penerusan paket. Paket yang berisi pesan echo ICMP dapat difragmentasi saat transit jika ukuran paket total melebihi ukuran paket maksimum yang dapat ditransmisikan oleh salah satu node perutean antara komputer lokal dan jarak jauh. Untuk mencegah fragmentasi, gunakan salah Send satu metode yang mengambil options parameter, dan atur DontFragment properti ke true. Kapan DontFragment adalah true dan ukuran paket total melebihi ukuran paket maksimum yang dapat ditransmisikan oleh salah satu simpul perutean antara komputer lokal dan jarak jauh, permintaan echo ICMP gagal. Ketika ini terjadi, Status diatur ke PacketTooBig.

Fragmen paket atau paket dapat diteruskan dengan simpul perutean 128 kali sebelum dibuang. Untuk mengubah pengaturan ini, gunakan Send kelebihan beban yang mengambil options parameter, dan atur Ttl properti ke nilai yang diinginkan. Jika paket tidak mencapai tujuannya setelah diteruskan beberapa kali, paket dibuang dan permintaan ICMP echo gagal. Ketika ini terjadi, Status diatur ke TtlExpired.

Berlaku untuk

Send(IPAddress, Int32, Byte[])

Sumber:
Ping.cs
Sumber:
Ping.cs
Sumber:
Ping.cs

Upaya untuk mengirim pesan gema Protokol Pesan Kontrol Internet (ICMP) dengan buffer data yang ditentukan ke komputer yang memiliki IPAddress, dan menerima pesan balasan gema ICMP yang sesuai dari komputer tersebut. Kelebihan beban ini memungkinkan Anda menentukan nilai waktu habis untuk operasi.

public:
 System::Net::NetworkInformation::PingReply ^ Send(System::Net::IPAddress ^ address, int timeout, cli::array <System::Byte> ^ buffer);
public System.Net.NetworkInformation.PingReply Send (System.Net.IPAddress address, int timeout, byte[] buffer);
member this.Send : System.Net.IPAddress * int * byte[] -> System.Net.NetworkInformation.PingReply
Public Function Send (address As IPAddress, timeout As Integer, buffer As Byte()) As PingReply

Parameter

address
IPAddress

Yang IPAddress mengidentifikasi komputer yang merupakan tujuan untuk pesan gema ICMP.

timeout
Int32

Int32 Nilai yang menentukan jumlah maksimum milidetik (setelah mengirim pesan gema) untuk menunggu pesan balasan gema ICMP.

buffer
Byte[]

Array Byte yang berisi data yang akan dikirim dengan pesan gema ICMP dan dikembalikan dalam pesan balasan gema ICMP. Array tidak boleh berisi lebih dari 65.500 byte.

Mengembalikan

Objek PingReply yang menyediakan informasi tentang pesan balasan gema ICMP, jika diterima, atau memberikan alasan kegagalan, jika tidak ada pesan yang diterima. Metode akan kembali PacketTooBig jika paket melebihi Unit Transmisi Maksimum (MTU).

Pengecualian

Ukuran buffer melebihi 65500 byte.

address atau buffer adalah null.

timeout kurang dari nol.

Panggilan ke SendAsync sedang berlangsung.

Pengecualian dilemparkan saat mengirim atau menerima pesan ICMP. Lihat pengecualian dalam untuk pengecualian yang tepat yang dilemparkan.

Objek ini telah dibuang.

.NET 7 dan versi yang lebih baru hanya di Linux: Prosesnya tidak istimewa, dan buffer tidak kosong.

Contoh

Contoh kode berikut menunjukkan cara memanggil metode ini.

void LocalPingTimeout()
{
   
   // Ping's the local machine.
   Ping ^ pingSender = gcnew Ping;
   IPAddress^ address = IPAddress::Loopback;
   
   // Create a buffer of 32 bytes of data to be transmitted.
   String^ data = "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa";
   array<Byte>^buffer = Encoding::ASCII->GetBytes( data );
   
   // Wait 10 seconds for a reply.
   int timeout = 10000;
   PingReply ^ reply = pingSender->Send( address, timeout, buffer);
   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 );
   }
   else
   {
      Console::WriteLine( reply->Status );
   }
}
public static void LocalPingTimeout ()
{
    // Ping's the local machine.
    Ping pingSender = new Ping ();
    IPAddress address = IPAddress.Loopback;

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

    // Wait 10 seconds for a reply.
    int timeout = 10000;
    PingReply reply = pingSender.Send (address, timeout, buffer);

    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);
    }
    else
    {
        Console.WriteLine (reply.Status);
    }
}

Keterangan

Jika pesan balasan gema ICMP tidak diterima dalam waktu yang ditentukan dalam timeout parameter, gema ICMP gagal, dan Status properti diatur ke TimedOut.

Catatan

Ketika menentukan angka yang sangat kecil untuk timeout, balasan Ping dapat diterima meskipun timeout milidetik telah berlalu.

Kelebihan beban ini menggunakan pengaturan default untuk fragmentasi paket dan penerusan paket. Paket yang berisi pesan echo ICMP dapat difragmentasi saat transit jika ukuran paket total melebihi ukuran paket maksimum yang dapat ditransmisikan oleh salah satu node perutean antara komputer lokal dan jarak jauh. Untuk mencegah fragmentasi, gunakan salah Send satu metode yang mengambil options parameter, dan atur DontFragment properti ke true. Kapan DontFragment adalah true dan ukuran paket total melebihi ukuran paket maksimum yang dapat ditransmisikan oleh salah satu simpul perutean antara komputer lokal dan jarak jauh, permintaan echo ICMP gagal. Ketika ini terjadi, Status diatur ke PacketTooBig.

Fragmen paket atau paket dapat diteruskan dengan simpul perutean 128 kali sebelum dibuang. Untuk mengubah pengaturan ini, gunakan Send kelebihan beban yang mengambil options parameter, dan atur Ttl properti ke nilai yang diinginkan. Jika paket tidak mencapai tujuannya setelah diteruskan beberapa kali, paket dibuang dan permintaan ICMP echo gagal. Ketika ini terjadi, Status diatur ke TtlExpired.

Berlaku untuk

Send(String, Int32)

Sumber:
Ping.cs
Sumber:
Ping.cs
Sumber:
Ping.cs

Mencoba mengirim pesan gema Protokol Pesan Kontrol Internet (ICMP) ke komputer yang ditentukan, dan menerima pesan balasan gema ICMP yang sesuai dari komputer tersebut. Metode ini memungkinkan Anda menentukan nilai waktu habis untuk operasi.

public:
 System::Net::NetworkInformation::PingReply ^ Send(System::String ^ hostNameOrAddress, int timeout);
public System.Net.NetworkInformation.PingReply Send (string hostNameOrAddress, int timeout);
member this.Send : string * int -> System.Net.NetworkInformation.PingReply
Public Function Send (hostNameOrAddress As String, timeout As Integer) As PingReply

Parameter

hostNameOrAddress
String

String Yang mengidentifikasi komputer yang merupakan tujuan untuk pesan gema ICMP. Nilai yang ditentukan untuk parameter ini dapat berupa nama host atau representasi string alamat IP.

timeout
Int32

Int32 Nilai yang menentukan jumlah maksimum milidetik (setelah mengirim pesan gema) untuk menunggu pesan balasan gema ICMP.

Mengembalikan

Objek PingReply yang menyediakan informasi tentang pesan balasan gema ICMP jika diterima, atau memberikan alasan kegagalan jika tidak ada pesan yang diterima.

Pengecualian

hostNameOrAddress adalah null atau adalah string kosong ("").

timeout kurang dari nol.

Panggilan ke SendAsync sedang berlangsung.

Pengecualian dilemparkan saat mengirim atau menerima pesan ICMP. Lihat pengecualian dalam untuk pengecualian yang tepat yang dilemparkan.

Objek ini telah dibuang.

Contoh

Untuk contoh yang menunjukkan pemanggilan Send metode, lihat Ping gambaran umum kelas.

Keterangan

Jika pesan balasan gema ICMP tidak diterima dalam waktu yang ditentukan dalam timeout parameter, gema ICMP gagal, dan Status properti diatur ke TimedOut.

Catatan

Ketika menentukan angka yang sangat kecil untuk timeout, balasan Ping dapat diterima meskipun timeout milidetik telah berlalu.

Kelebihan beban ini menggunakan pengaturan default untuk fragmentasi paket dan penerusan paket. Paket yang berisi pesan echo ICMP dapat difragmentasi saat transit jika ukuran paket total melebihi ukuran paket maksimum yang dapat ditransmisikan oleh salah satu node perutean antara komputer lokal dan jarak jauh. Untuk mencegah fragmentasi, gunakan salah Send satu metode yang mengambil options parameter, dan atur DontFragment properti ke true. Kapan DontFragment adalah true dan ukuran paket total melebihi ukuran paket maksimum yang dapat ditransmisikan oleh salah satu simpul perutean antara komputer lokal dan jarak jauh, permintaan echo ICMP gagal. Ketika ini terjadi, Status diatur ke PacketTooBig. Fragmen paket atau paket (jika terfragmentasi) dapat diteruskan dengan merutekan simpul 128 kali sebelum dibuang. Untuk mengubah pengaturan ini, gunakan Send kelebihan beban yang mengambil options parameter, dan atur Ttl properti ke nilai yang diinginkan. Jika paket tidak mencapai tujuannya setelah diteruskan beberapa kali, paket dibuang dan permintaan ICMP echo gagal. Ketika ini terjadi, Status diatur ke TtlExpired.

Berlaku untuk

Send(IPAddress, Int32)

Sumber:
Ping.cs
Sumber:
Ping.cs
Sumber:
Ping.cs

Upaya untuk mengirim pesan gema Protokol Pesan Kontrol Internet (ICMP) dengan buffer data yang ditentukan ke komputer yang memiliki IPAddress, dan menerima pesan balasan gema ICMP yang sesuai dari komputer tersebut. Metode ini memungkinkan Anda menentukan nilai waktu habis untuk operasi.

public:
 System::Net::NetworkInformation::PingReply ^ Send(System::Net::IPAddress ^ address, int timeout);
public System.Net.NetworkInformation.PingReply Send (System.Net.IPAddress address, int timeout);
member this.Send : System.Net.IPAddress * int -> System.Net.NetworkInformation.PingReply
Public Function Send (address As IPAddress, timeout As Integer) As PingReply

Parameter

address
IPAddress

Yang IPAddress mengidentifikasi komputer yang merupakan tujuan untuk pesan gema ICMP.

timeout
Int32

Int32 Nilai yang menentukan jumlah maksimum milidetik (setelah mengirim pesan gema) untuk menunggu pesan balasan gema ICMP.

Mengembalikan

Objek PingReply yang menyediakan informasi tentang pesan balasan gema ICMP jika diterima, atau memberikan alasan kegagalan jika tidak ada pesan yang diterima.

Pengecualian

addressadalah null.

timeout kurang dari nol.

Panggilan ke SendAsync sedang berlangsung.

Pengecualian dilemparkan saat mengirim atau menerima pesan ICMP. Lihat pengecualian dalam untuk pengecualian yang tepat yang dilemparkan.

Objek ini telah dibuang.

Contoh

Untuk contoh yang menunjukkan pemanggilan Send metode, lihat Ping gambaran umum kelas.

Keterangan

Jika pesan balasan gema ICMP tidak diterima dalam waktu yang ditentukan dalam timeout parameter, gema ICMP gagal, dan Status properti diatur ke TimedOut.

Catatan

Ketika menentukan angka yang sangat kecil untuk timeout, balasan Ping dapat diterima meskipun timeout milidetik telah berlalu.

Kelebihan beban ini menggunakan pengaturan default untuk fragmentasi paket dan penerusan paket. Paket yang berisi pesan echo ICMP dapat difragmentasi saat transit jika ukuran paket total melebihi ukuran paket maksimum yang dapat ditransmisikan oleh salah satu node perutean antara komputer lokal dan jarak jauh. Untuk mencegah fragmentasi, gunakan salah Send satu metode yang mengambil options parameter, dan atur DontFragment properti ke true. Kapan DontFragment adalah true dan ukuran paket total melebihi ukuran paket maksimum yang dapat ditransmisikan oleh salah satu simpul perutean antara komputer lokal dan jarak jauh, permintaan echo ICMP gagal. Ketika ini terjadi, Status diatur ke PacketTooBig.

Fragmen paket atau paket dapat diteruskan dengan simpul perutean 128 kali sebelum dibuang. Untuk mengubah pengaturan ini, gunakan Send kelebihan beban yang mengambil options parameter, dan atur Ttl properti ke nilai yang diinginkan. Jika paket tidak mencapai tujuannya setelah diteruskan beberapa kali, paket dibuang dan permintaan ICMP echo gagal. Ketika ini terjadi, Status diatur ke TtlExpired.

Berlaku untuk

Send(String)

Sumber:
Ping.cs
Sumber:
Ping.cs
Sumber:
Ping.cs

Mencoba mengirim pesan gema Protokol Pesan Kontrol Internet (ICMP) ke komputer yang ditentukan, dan menerima pesan balasan gema ICMP yang sesuai dari komputer tersebut.

public:
 System::Net::NetworkInformation::PingReply ^ Send(System::String ^ hostNameOrAddress);
public System.Net.NetworkInformation.PingReply Send (string hostNameOrAddress);
member this.Send : string -> System.Net.NetworkInformation.PingReply
Public Function Send (hostNameOrAddress As String) As PingReply

Parameter

hostNameOrAddress
String

String Yang mengidentifikasi komputer yang merupakan tujuan untuk pesan gema ICMP. Nilai yang ditentukan untuk parameter ini dapat berupa nama host atau representasi string alamat IP.

Mengembalikan

Objek PingReply yang menyediakan informasi tentang pesan balasan gema ICMP, jika diterima, atau memberikan alasan kegagalan, jika tidak ada pesan yang diterima.

Pengecualian

hostNameOrAddress adalah null atau adalah string kosong ("").

Panggilan ke SendAsync sedang berlangsung.

Pengecualian dilemparkan saat mengirim atau menerima pesan ICMP. Lihat pengecualian dalam untuk pengecualian yang tepat yang dilemparkan.

Objek ini telah dibuang.

Contoh

Contoh kode berikut menunjukkan panggilan metode ini.

void SimplePing()
{
   Ping ^ pingSender = gcnew Ping;
   PingReply ^ reply = pingSender->Send( "www.contoso.com" );
   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 );
   }
   else
   {
      Console::WriteLine( reply->Status );
   }
}
public static void SimplePing ()
{
    Ping pingSender = new Ping ();
    PingReply reply = pingSender.Send ("www.contoso.com");

    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);
    }
    else
    {
        Console.WriteLine (reply.Status);
    }
}

Keterangan

Metode ini mengirim buffer data 32 Byte dengan pesan gema ICMP. Metode menunggu lima detik untuk pesan balasan gema ICMP. Jika tidak menerima balasan dalam waktu tersebut, metode akan kembali dan Status properti diatur ke TimedOut.

Kelebihan beban ini menggunakan pengaturan default untuk fragmentasi paket dan penerusan paket. Paket yang berisi pesan echo ICMP dapat difragmentasi saat transit jika ukuran paket total melebihi ukuran paket maksimum yang dapat ditransmisikan oleh salah satu node perutean antara komputer lokal dan jarak jauh. Untuk mencegah fragmentasi, gunakan salah Send satu metode yang mengambil options parameter, dan atur DontFragment properti ke true. Kapan DontFragment adalah true dan ukuran paket total melebihi ukuran paket maksimum yang dapat ditransmisikan oleh salah satu simpul perutean antara komputer lokal dan jarak jauh, permintaan echo ICMP gagal. Ketika ini terjadi, Status diatur ke PacketTooBig. Fragmen paket atau paket (jika terfragmentasi) dapat diteruskan dengan merutekan simpul 128 kali sebelum dibuang. Untuk mengubah pengaturan ini, gunakan Send kelebihan beban yang mengambil options parameter, dan atur Ttl properti ke nilai yang diinginkan. Jika paket tidak mencapai tujuannya setelah diteruskan beberapa kali, paket dibuang dan permintaan ICMP echo gagal. Ketika ini terjadi, Status diatur ke TtlExpired.

Berlaku untuk

Send(IPAddress)

Sumber:
Ping.cs
Sumber:
Ping.cs
Sumber:
Ping.cs

Mencoba mengirim pesan gema Protokol Pesan Kontrol Internet (ICMP) ke komputer yang memiliki IPAddress, dan menerima pesan balasan gema ICMP yang sesuai dari komputer tersebut.

public:
 System::Net::NetworkInformation::PingReply ^ Send(System::Net::IPAddress ^ address);
public System.Net.NetworkInformation.PingReply Send (System.Net.IPAddress address);
member this.Send : System.Net.IPAddress -> System.Net.NetworkInformation.PingReply
Public Function Send (address As IPAddress) As PingReply

Parameter

address
IPAddress

Yang IPAddress mengidentifikasi komputer yang merupakan tujuan untuk pesan gema ICMP.

Mengembalikan

Objek PingReply yang menyediakan informasi tentang pesan balasan gema ICMP, jika diterima, atau menjelaskan alasan kegagalan jika tidak ada pesan yang diterima.

Pengecualian

addressadalah null.

Panggilan ke SendAsync sedang berlangsung.

Pengecualian dilemparkan saat mengirim atau menerima pesan ICMP. Lihat pengecualian dalam untuk pengecualian yang tepat yang dilemparkan.

Objek ini telah dibuang.

Contoh

Contoh kode berikut menunjukkan panggilan metode ini.

void LocalPing()
{
   
   // Ping's the local machine.
   Ping ^ pingSender = gcnew Ping;
   IPAddress^ address = IPAddress::Loopback;
   PingReply ^ reply = pingSender->Send( address );
   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 );
   }
   else
   {
      Console::WriteLine( reply->Status );
   }
}
public static void LocalPing ()
{
    // Ping's the local machine.
    Ping pingSender = new Ping ();
    IPAddress address = IPAddress.Loopback;
    PingReply reply = pingSender.Send (address);

    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);
    }
    else
    {
        Console.WriteLine (reply.Status);
    }
}

Keterangan

Metode ini dikirim ke host yang ditentukan oleh address buffer data 32 Byte dengan pesan gema ICMP. Metode menunggu lima detik untuk pesan balasan gema ICMP. Jika tidak menerima balasan dalam waktu tersebut, metode akan kembali dan Status properti diatur ke TimedOut.

Kelebihan beban ini menggunakan pengaturan default untuk fragmentasi paket dan penerusan paket. Paket yang berisi pesan echo ICMP dapat difragmentasi saat transit jika ukuran paket total melebihi ukuran paket maksimum yang dapat ditransmisikan oleh salah satu node perutean antara komputer lokal dan jarak jauh. Untuk mencegah fragmentasi, gunakan salah Send satu metode yang mengambil options parameter, dan atur DontFragment properti ke true. Kapan DontFragment adalah true dan ukuran paket total melebihi ukuran paket maksimum yang dapat ditransmisikan oleh salah satu simpul perutean antara komputer lokal dan jarak jauh, permintaan echo ICMP gagal. Ketika ini terjadi, Status diatur ke PacketTooBig. Fragmen paket atau paket (jika terfragmentasi) dapat diteruskan dengan merutekan simpul 128 kali sebelum dibuang. Untuk mengubah pengaturan ini, gunakan Send kelebihan beban yang mengambil options parameter, dan atur Ttl properti ke nilai yang diinginkan. Jika paket tidak mencapai tujuannya setelah diteruskan beberapa kali, paket dibuang dan permintaan ICMP echo gagal. Ketika ini terjadi, Status diatur ke TtlExpired.

Berlaku untuk