Ping Klasse
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Ermöglicht einer Anwendung zu bestimmen, ob über das Netzwerk auf einen Remotecomputer zugegriffen werden kann.
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
- Vererbung
- Vererbung
-
Ping
- Implementiert
Beispiele
Das folgende Codebeispiel veranschaulicht die synchrone Verwendung der Ping Klasse.
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
Das folgende Codebeispiel veranschaulicht die asynchrone Verwendung der Ping Klasse.
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);
}
}
}
}
Hinweise
Anwendungen verwenden die Ping Klasse, um zu erkennen, ob ein Remotecomputer erreichbar ist.
Die Netzwerktopologie kann ermitteln, ob Ping eine Verbindung mit einem Remotehost erfolgreich hergestellt werden kann. Das Vorhandensein und die Konfiguration von Proxys, NAT-Geräten (Network Address Translation) oder Firewalls können verhindern Ping , dass dies erfolgreich ist. Ein erfolgreicher Ping Wert gibt nur an, dass der Remotehost im Netzwerk erreicht werden kann. Das Vorhandensein von Diensten höherer Ebene (z. B. webserver) auf dem Remotehost ist nicht garantiert.
Diese Klasse stellt Funktionen bereit, die dem Ping.exe Befehlszeilentool ähneln. Die Send Methoden SendAsync senden eine ICMP-Echoanforderungsnachricht (Internet Control Message Protocol) an einen Remotecomputer und warten auf eine ICMP-Echoantwortnachricht von diesem Computer. Eine detaillierte Beschreibung der ICMP-Nachrichten finden Sie unter RFC 792, verfügbar unter https://www.ietf.org.
Die folgenden Typen werden mit der Ping Klasse verwendet und werden unten ausführlich beschrieben.
| Typname | Beschreibung |
|---|---|
| IPStatus | Definiert Statuscodes, die das Ergebnis einer ICMP-Echoanforderungsnachricht beschreiben. |
| PingOptions | Ermöglicht es Ihnen, die Einstellungen zu konfigurieren oder abzurufen, die steuern, wie oft das Anforderungspaket weitergeleitet werden kann (Ttl), und ob es fragmentiert werden kann (DontFragment ). |
| PingReply | Enthält die Ergebnisse einer ICMP-Echoanforderung. |
| PingException | Wird ausgelöst, wenn ein nicht behebbarer Fehler auftritt. |
| PingCompletedEventArgs | Enthält die mit PingCompleted Ereignissen verknüpften Daten, die ausgelöst werden, wenn ein SendAsync Aufruf abgeschlossen oder abgebrochen wird. |
| PingCompletedEventHandler | Der Delegat, der die Rückrufmethode bereitstellt, die aufgerufen wird, wenn ein SendAsync Aufruf abgeschlossen oder abgebrochen wird. |
Die Send Und SendAsync Methoden geben die Antwort in einem PingReply Objekt zurück. Die PingReply.Status Eigenschaft gibt einen IPStatus Wert zurück, der das Ergebnis der Anforderung angibt.
Beim Senden der Anforderung müssen Sie den Remotecomputer angeben. Dazu können Sie eine Hostnamenzeichenfolge, eine IP-Adresse im Zeichenfolgenformat oder ein IPAddress Objekt angeben.
Sie können auch eine der folgenden Informationstypen angeben:
Daten, die die Anforderung begleiten sollen. Wenn
bufferSie angeben, können Sie die für ein Paket mit einer bestimmten Größe erforderliche Zeit für den Weg zum und vom Remotehost und der maximalen Übertragungseinheit des Netzwerkpfads erlernen. (Siehe die Send Parameter oder SendAsync Überladungenbuffer.)Gibt an, ob das ICMP Echo-Paket während der Übertragung fragmentiert werden kann. (Siehe die DontFragment Eigenschaft und die Überladungen, die SendSendAsync einen
optionsParameter annehmen.)Wie oft Routingknoten, z. B. Router oder Gateways, das Paket weiterleiten können, bevor es den Zielcomputer erreicht oder verworfen wird. (Siehe Ttl und die ÜberladungenSendAsync, die Send einen
optionsParameter verwenden.)Die Frist, innerhalb der die Antwort empfangen werden muss. (Siehe die Send Parameter oder SendAsync Überladungen
timeout.
Die Ping Klasse bietet synchrone und asynchrone Methoden zum Senden der Anforderung. Wenn Ihre Anwendung beim Warten auf eine Antwort blockieren soll, verwenden Sie die Send Methoden. Diese Methoden sind synchron. Wenn Ihre Anwendung nicht blockieren soll, verwenden Sie die asynchronen SendAsync Methoden. Ein Aufruf, der SendAsync in einem eigenen Thread ausgeführt wird, der automatisch aus dem Threadpool zugewiesen wird. Wenn der asynchrone Vorgang abgeschlossen ist, löst er das PingCompleted Ereignis aus. Anwendungen verwenden einen PingCompletedEventHandler Delegaten, um die Methode anzugeben, die für PingCompleted Ereignisse aufgerufen wird. Sie müssen dem Ereignis vor dem Aufrufen SendAsynceinen PingCompletedEventHandler Delegaten hinzufügen. Die Methode des Delegaten empfängt ein PingCompletedEventArgs Objekt, das ein PingReply Objekt enthält, das das Ergebnis des SendAsync Aufrufs beschreibt.
Sie können nicht dieselbe Instanz der Ping Klasse verwenden, um mehrere gleichzeitige ICMP Echo-Anforderungen zu generieren. Anrufe Send , während ein SendAsync Anruf ausgeführt wird oder mehrere Male anruft SendAsync , bevor alle vorherigen Anrufe abgeschlossen wurden, führt zu einer InvalidOperationException.
Konstruktoren
| Name | Beschreibung |
|---|---|
| Ping() |
Initialisiert eine neue Instanz der Ping-Klasse. |
Eigenschaften
| Name | Beschreibung |
|---|---|
| CanRaiseEvents |
Ruft einen Wert ab, der angibt, ob die Komponente ein Ereignis auslösen kann. (Geerbt von Component) |
| Container |
Ruft das, das IContainer die Component. (Geerbt von Component) |
| DesignMode |
Ruft einen Wert ab, der angibt, ob sich der Component Entwurfsmodus derzeit befindet. (Geerbt von Component) |
| Events |
Ruft die Liste der Ereignishandler ab, die an diese Componentangefügt sind. (Geerbt von Component) |
| Site |
Dient zum ISite Abrufen oder Festlegen des Werts des Component. (Geerbt von Component) |
Methoden
| Name | Beschreibung |
|---|---|
| CreateObjRef(Type) |
Erstellt ein Objekt, das alle relevanten Informationen enthält, die zum Generieren eines Proxys erforderlich sind, der für die Kommunikation mit einem Remoteobjekt verwendet wird. (Geerbt von MarshalByRefObject) |
| Dispose() |
Gibt die nicht verwalteten Ressourcen frei und entsorgt die verwalteten Ressourcen, die von der Ping. |
| Dispose() |
Veröffentlicht alle ressourcen, die von der Component. (Geerbt von Component) |
| Dispose(Boolean) |
Gibt die vom Objekt verwendeten Ping nicht verwalteten Ressourcen frei und entfernt optional die verwalteten Ressourcen. |
| Dispose(Boolean) |
Gibt die nicht verwalteten Ressourcen frei, die von den Component verwalteten Ressourcen verwendet werden, und gibt optional die verwalteten Ressourcen frei. (Geerbt von Component) |
| Equals(Object) |
Bestimmt, ob das angegebene Objekt dem aktuellen Objekt entspricht. (Geerbt von Object) |
| GetHashCode() |
Dient als Standardhashfunktion. (Geerbt von Object) |
| GetLifetimeService() |
Veraltet.
Ruft das aktuelle Lebensdauerdienstobjekt ab, das die Lebensdauerrichtlinie für diese Instanz steuert. (Geerbt von MarshalByRefObject) |
| GetService(Type) |
Gibt ein Objekt zurück, das einen Dienst darstellt, der von der Component oder dem zugehörigen ContainerDienst bereitgestellt wird. (Geerbt von Component) |
| GetType() |
Ruft die Type der aktuellen Instanz ab. (Geerbt von Object) |
| InitializeLifetimeService() |
Veraltet.
Ruft ein Lebensdauerdienstobjekt ab, um die Lebensdauerrichtlinie für diese Instanz zu steuern. (Geerbt von MarshalByRefObject) |
| MemberwiseClone() |
Erstellt eine flache Kopie der aktuellen Object. (Geerbt von Object) |
| MemberwiseClone(Boolean) |
Erstellt eine flache Kopie des aktuellen MarshalByRefObject Objekts. (Geerbt von MarshalByRefObject) |
| OnPingCompleted(PingCompletedEventArgs) |
Löst das PingCompleted-Ereignis aus. |
| Send(IPAddress, Int32, Byte[], PingOptions) |
Versucht, eine ICMP-Echonachricht (Internet Control Message Protocol) mit dem angegebenen Datenpuffer an den Computer zu senden, der die angegebene IPAddress und entsprechende ICMP-Echoantwortnachricht von diesem Computer empfängt. Mit dieser Überladung können Sie einen Timeoutwert für den Vorgang angeben und die Fragmentierung und Time-to-Live-Werte für das ICMP-Echonachrichtenpaket steuern. |
| Send(IPAddress, Int32, Byte[]) |
Versucht, eine ICMP-Echonachricht (Internet Control Message Protocol) mit dem angegebenen Datenpuffer an den Computer zu senden, auf dem der angegebene Datenpuffer angegeben IPAddressist, und empfängt eine entsprechende ICMP-Echoantwortnachricht von diesem Computer. Mit dieser Überladung können Sie einen Timeoutwert für den Vorgang angeben. |
| Send(IPAddress, Int32) |
Versucht, eine ICMP-Echonachricht (Internet Control Message Protocol) mit dem angegebenen Datenpuffer an den Computer zu senden, auf dem der angegebene Datenpuffer angegeben IPAddressist, und empfängt eine entsprechende ICMP-Echoantwortnachricht von diesem Computer. Mit dieser Methode können Sie einen Timeoutwert für den Vorgang angeben. |
| Send(IPAddress, TimeSpan, Byte[], PingOptions) |
Versucht, eine ICMP-Echonachricht (Internet Control Message Protocol) an den Computer zu senden, der das angegebene IPAddressElement aufweist, und eine entsprechende ICMP-Echoantwortnachricht von diesem Computer zu empfangen. |
| Send(IPAddress) |
Versucht, eine ICMP-Echonachricht (Internet Control Message Protocol) an den Computer zu senden, der den angegebenen IPAddressWert aufweist, und empfangen eine entsprechende ICMP-Echoantwortnachricht von diesem Computer. |
| Send(String, Int32, Byte[], PingOptions) |
Versucht, eine ICMP-Echonachricht (Internet Control Message Protocol) mit dem angegebenen Datenpuffer an den angegebenen Computer zu senden und eine entsprechende ICMP-Echoantwortnachricht von diesem Computer zu empfangen. Mit dieser Überladung können Sie einen Timeoutwert für den Vorgang angeben und die Fragmentierung und Time-to-Live-Werte für das ICMP-Paket steuern. |
| Send(String, Int32, Byte[]) |
Versucht, eine ICMP-Echonachricht (Internet Control Message Protocol) mit dem angegebenen Datenpuffer an den angegebenen Computer zu senden und eine entsprechende ICMP-Echoantwortnachricht von diesem Computer zu empfangen. Mit dieser Überladung können Sie einen Timeoutwert für den Vorgang angeben. |
| Send(String, Int32) |
Versucht, eine ICMP-Echonachricht (Internet Control Message Protocol) an den angegebenen Computer zu senden und eine entsprechende ICMP-Echoantwortnachricht von diesem Computer zu empfangen. Mit dieser Methode können Sie einen Timeoutwert für den Vorgang angeben. |
| Send(String, TimeSpan, Byte[], PingOptions) |
Versucht, eine ICMP-Echonachricht (Internet Control Message Protocol) an den angegebenen Computer zu senden und eine entsprechende ICMP-Echoantwortnachricht von diesem Computer zu empfangen. |
| Send(String) |
Versucht, eine ICMP-Echonachricht (Internet Control Message Protocol) an den angegebenen Computer zu senden und eine entsprechende ICMP-Echoantwortnachricht von diesem Computer zu empfangen. |
| SendAsync(IPAddress, Int32, Byte[], Object) |
Versucht asynchron, eine ICMP-Echonachricht (Internet Control Message Protocol) mit dem angegebenen Datenpuffer an den Computer zu senden, auf dem der angegebene Datenpuffer angegeben IPAddressist, und empfängt eine entsprechende ICMP-Echoantwortnachricht von diesem Computer. Mit dieser Überladung können Sie einen Timeoutwert für den Vorgang angeben. |
| SendAsync(IPAddress, Int32, Byte[], PingOptions, Object) |
Versucht asynchron, eine ICMP-Echonachricht (Internet Control Message Protocol) mit dem angegebenen Datenpuffer an den Computer zu senden, auf dem der angegebene Datenpuffer angegeben IPAddressist, und empfängt eine entsprechende ICMP-Echoantwortnachricht von diesem Computer. Mit dieser Überladung können Sie einen Timeoutwert für den Vorgang angeben und die Fragmentierung und Time-to-Live-Werte für das ICMP-Echonachrichtenpaket steuern. |
| SendAsync(IPAddress, Int32, Object) |
Versucht asynchron, eine ICMP-Echonachricht (Internet Control Message Protocol) an den Computer zu senden, auf dem die angegebene Echonachricht angegeben IPAddressist, und empfängt eine entsprechende ICMP-Echoantwortnachricht von diesem Computer. Mit dieser Überladung können Sie einen Timeoutwert für den Vorgang angeben. |
| SendAsync(IPAddress, Object) |
Versucht asynchron, eine ICMP-Echonachricht (Internet Control Message Protocol) an den Computer zu senden, auf dem die angegebene Echonachricht angegeben IPAddressist, und empfängt eine entsprechende ICMP-Echoantwortnachricht von diesem Computer. |
| SendAsync(String, Int32, Byte[], Object) |
Versucht asynchron, eine ICMP-Echonachricht (Internet Control Message Protocol) mit dem angegebenen Datenpuffer an den angegebenen Computer zu senden und eine entsprechende ICMP-Echoantwortnachricht von diesem Computer zu empfangen. Mit dieser Überladung können Sie einen Timeoutwert für den Vorgang angeben. |
| SendAsync(String, Int32, Byte[], PingOptions, Object) |
Versucht asynchron, eine ICMP-Echonachricht (Internet Control Message Protocol) mit dem angegebenen Datenpuffer an den angegebenen Computer zu senden und eine entsprechende ICMP-Echoantwortnachricht von diesem Computer zu empfangen. Mit dieser Überladung können Sie einen Timeoutwert für den Vorgang angeben und die Fragmentierung und Time-to-Live-Werte für das ICMP-Paket steuern. |
| SendAsync(String, Int32, Object) |
Versucht asynchron, eine ICMP-Echonachricht (Internet Control Message Protocol) an den angegebenen Computer zu senden und eine entsprechende ICMP-Echoantwortnachricht von diesem Computer zu empfangen. Mit dieser Überladung können Sie einen Timeoutwert für den Vorgang angeben. |
| SendAsync(String, Object) |
Versucht asynchron, eine ICMP-Echonachricht (Internet Control Message Protocol) an den angegebenen Computer zu senden und eine entsprechende ICMP-Echoantwortnachricht von diesem Computer zu empfangen. |
| SendAsyncCancel() |
Bricht alle ausstehenden asynchronen Anforderungen zum Senden einer ICMP-Echonachricht (Internet Control Message Protocol) ab und empfängt eine entsprechende ICMP-Echoantwortnachricht. |
| SendPingAsync(IPAddress, Int32, Byte[], PingOptions) |
Sendet eine ICMP-Echonachricht (Internet Control Message Protocol) mit dem angegebenen Datenpuffer an den Computer, auf dem der angegebene Datenpuffer angegeben IPAddressist, und empfängt eine entsprechende ICMP-Echoantwortnachricht von diesem Computer als asynchronen Vorgang. Mit dieser Überladung können Sie einen Timeoutwert für den Vorgang, einen Puffer angeben, der zum Senden und Empfangen verwendet werden soll, sowie Fragmentierung und Time-to-Live-Werte für das ICMP-Echonachrichtenpaket steuern. |
| SendPingAsync(IPAddress, Int32, Byte[]) |
Senden Sie eine ICMP-Echonachricht (Internet Control Message Protocol) mit dem angegebenen Datenpuffer an den Computer, auf dem der angegebene Datenpuffer angegeben IPAddressist, und empfängt eine entsprechende ICMP-Echoantwortnachricht von diesem Computer als asynchronen Vorgang. Mit dieser Überladung können Sie einen Timeoutwert für den Vorgang und einen Puffer angeben, der zum Senden und Empfangen verwendet werden soll. |
| SendPingAsync(IPAddress, Int32) |
Senden Sie eine ICMP-Echonachricht (Internet Control Message Protocol) mit dem angegebenen Datenpuffer an den Computer, auf dem der angegebene Datenpuffer angegeben IPAddressist, und empfängt eine entsprechende ICMP-Echoantwortnachricht von diesem Computer als asynchronen Vorgang. Mit dieser Überladung können Sie einen Timeoutwert für den Vorgang angeben. |
| SendPingAsync(IPAddress, TimeSpan, Byte[], PingOptions, CancellationToken) |
Sendet eine ICMP-Echonachricht (Internet Control Message Protocol) mit dem angegebenen Datenpuffer an den Computer, auf dem der angegebene Datenpuffer angegeben IPAddressist, und empfängt eine entsprechende ICMP-Echoantwortnachricht von diesem Computer als asynchronen Vorgang. Mit dieser Überladung können Sie einen Timeoutwert für den Vorgang, einen Puffer angeben, der zum Senden und Empfangen verwendet werden soll, die Fragmentierung und Time-to-Live-Werte sowie ein CancellationToken Für das ICMP-Echonachrichtenpaket. |
| SendPingAsync(IPAddress) |
Senden Sie eine ICMP-Echonachricht (Internet Control Message Protocol) mit dem angegebenen Datenpuffer an den Computer, auf dem der angegebene Datenpuffer angegeben IPAddressist, und empfängt eine entsprechende ICMP-Echoantwortnachricht von diesem Computer als asynchronen Vorgang. |
| SendPingAsync(String, Int32, Byte[], PingOptions) |
Sendet eine ICMP-Echonachricht (Internet Control Message Protocol) mit dem angegebenen Datenpuffer an den angegebenen Computer und empfängt eine entsprechende ICMP-Echoantwortnachricht von diesem Computer als asynchronen Vorgang. Mit dieser Überladung können Sie einen Timeoutwert für den Vorgang, einen Puffer angeben, der zum Senden und Empfangen verwendet werden soll, sowie Fragmentierung und Time-to-Live-Werte für das ICMP-Echonachrichtenpaket steuern. |
| SendPingAsync(String, Int32, Byte[]) |
Sendet eine ICMP-Echonachricht (Internet Control Message Protocol) mit dem angegebenen Datenpuffer an den angegebenen Computer und empfängt eine entsprechende ICMP-Echoantwortnachricht von diesem Computer als asynchronen Vorgang. Mit dieser Überladung können Sie einen Timeoutwert für den Vorgang und einen Puffer angeben, der zum Senden und Empfangen verwendet werden soll. |
| SendPingAsync(String, Int32) |
Sendet eine ICMP-Echonachricht (Internet Control Message Protocol) mit dem angegebenen Datenpuffer an den angegebenen Computer und empfängt eine entsprechende ICMP-Echoantwortnachricht von diesem Computer als asynchronen Vorgang. Mit dieser Überladung können Sie einen Timeoutwert für den Vorgang angeben. |
| SendPingAsync(String, TimeSpan, Byte[], PingOptions, CancellationToken) |
Sendet eine ICMP-Echonachricht (Internet Control Message Protocol) mit dem angegebenen Datenpuffer an den angegebenen Computer und empfängt eine entsprechende ICMP-Echoantwortnachricht von diesem Computer als asynchronen Vorgang. Mit dieser Überladung können Sie einen Timeoutwert für den Vorgang, einen Puffer angeben, der zum Senden und Empfangen verwendet werden soll, die Fragmentierung und Time-to-Live-Werte sowie ein CancellationToken Für das ICMP-Echonachrichtenpaket. |
| SendPingAsync(String) |
Sendet eine ICMP-Echonachricht (Internet Control Message Protocol) mit dem angegebenen Datenpuffer an den angegebenen Computer und empfängt eine entsprechende ICMP-Echoantwortnachricht von diesem Computer als asynchronen Vorgang. |
| ToString() |
Gibt einen String mit dem Namen des Component, falls vorhanden, zurück. Diese Methode sollte nicht außer Kraft gesetzt werden. (Geerbt von Component) |
| ToString() |
Gibt eine Zeichenfolge zurück, die das aktuelle Objekt darstellt. (Geerbt von Object) |
Ereignisse
| Name | Beschreibung |
|---|---|
| Disposed |
Tritt auf, wenn die Komponente durch einen Aufruf der Dispose() Methode verworfen wird. (Geerbt von Component) |
| PingCompleted |
Tritt auf, wenn ein asynchroner Vorgang zum Senden einer ICMP-Echonachricht (Internet Control Message Protocol) und empfangen die entsprechende ICMP-Echoantwortnachricht abgeschlossen oder abgebrochen wird. |
Explizite Schnittstellenimplementierungen
| Name | Beschreibung |
|---|---|
| IDisposable.Dispose() |
Gibt alle Ressourcen frei, die von Instanzen der Ping Klasse verwendet werden. |