Dieser Artikel wurde maschinell übersetzt. Bewegen Sie den Mauszeiger über die Sätze im Artikel, um den Originaltext anzuzeigen. Weitere Informationen
Übersetzung
Original
2 von 3 fanden dies hilfreich - Dieses Thema bewerten.

TcpClient-Klasse

Stellt Clientverbindungen für TCP-Netzwerkdienste bereit.

System.Object
  System.Net.Sockets.TcpClient

Namespace:  System.Net.Sockets
Assembly:  System (in System.dll)
public class TcpClient : IDisposable

Der TcpClient-Typ macht die folgenden Member verfügbar.

  NameBeschreibung
Öffentliche MethodeTcpClient()Initialisiert eine neue Instanz der TcpClient-Klasse.
Öffentliche MethodeTcpClient(AddressFamily)Initialisiert eine neue Instanz der TcpClient-Klasse mit der angegebenen Familie.
Öffentliche MethodeTcpClient(IPEndPoint)Initialisiert eine neue Instanz der TcpClient-Klasse und bindet sie an den angegebenen lokalen Endpunkt.
Öffentliche MethodeTcpClient(String, Int32)Initialisiert eine neue Instanz der TcpClient-Klasse und stellt eine Verbindung mit dem angegebenen Anschluss am angegebenen Host her.
Zum Seitenanfang
  NameBeschreibung
Geschützte EigenschaftActiveRuft einen Wert ab, der angibt, ob eine Verbindung hergestellt wurde, oder legt diesen fest.
Öffentliche EigenschaftAvailableRuft die Datenmenge ab, die über das Netzwerk empfangen wurde und gelesen werden kann.
Öffentliche EigenschaftClientRuft den zugrunde liegenden Socket ab oder legt diesen fest.
Öffentliche EigenschaftConnectedRuft einen Wert ab, der angibt, ob der zugrunde liegende Socket für einen TcpClient mit einem Remotehost verbunden ist.
Öffentliche EigenschaftExclusiveAddressUseRuft einen Boolean-Wert ab, der angibt, ob der TcpClient nur die Verwendung eines Anschlusses durch einen einzigen Client zulässt, oder legt diesen fest.
Öffentliche EigenschaftLingerStateRuft Informationen zum Nachlaufzustand des zugeordneten Sockets ab oder legt sie fest.
Öffentliche EigenschaftNoDelayRuft einen Wert ab, der eine Verzögerung deaktiviert, wenn Sende- oder Empfangspuffer nicht voll sind, oder legt diesen fest.
Öffentliche EigenschaftReceiveBufferSizeRuft die Größe des Empfangspuffers ab oder legt diese fest.
Öffentliche EigenschaftReceiveTimeoutRuft den Zeitraum ab, den ein TcpClient nach dem Initiieren eines Lesevorgangs auf den Datenempfang wartet, oder legt diesen fest.
Öffentliche EigenschaftSendBufferSizeRuft die Größe des Sendepuffers ab oder legt diese fest.
Öffentliche EigenschaftSendTimeoutRuft die Zeitspanne ab, die ein TcpClient auf den erfolgreichen Abschluss eines Sendevorgangs wartet, oder legt diese fest.
Zum Seitenanfang
  NameBeschreibung
Öffentliche MethodeBeginConnect(IPAddress, Int32, AsyncCallback, Object)Beginnt eine asynchrone Anforderung einer Remotehostverbindung. Der Remotehost wird durch eine IPAddress und eine Anschlussnummer (Int32) angegeben.
Öffentliche MethodeBeginConnect(IPAddress[], Int32, AsyncCallback, Object)Beginnt eine asynchrone Anforderung einer Remotehostverbindung. Der Remotehost wird durch ein IPAddress-Array und eine Anschlussnummer (Int32) angegeben.
Öffentliche MethodeBeginConnect(String, Int32, AsyncCallback, Object)Beginnt eine asynchrone Anforderung einer Remotehostverbindung. Der Remotehost wird durch einen Hostnamen (String) und eine Anschlussnummer (Int32) angegeben.
Öffentliche MethodeCloseGibt diese TcpClient-Instanz frei und fordert an, dass die zugrunde liegende TCP-Verbindung geschlossen wird.
Öffentliche MethodeConnect(IPEndPoint)Verbindet unter Verwendung des angegebenen Endpunkts des Remotenetzwerks den Client mit einem TCP-Remotehost.
Öffentliche MethodeConnect(IPAddress, Int32)Verbindet unter Verwendung der angegebenen IP-Adresse und Anschlussnummer den Client mit einem TCP-Remotehost.
Öffentliche MethodeConnect(IPAddress[], Int32)Verbindet unter Verwendung der angegebenen IP-Adressen und Anschlussnummer den Client mit einem TCP-Remotehost.
Öffentliche MethodeConnect(String, Int32)Verbindet den Client mit dem angegebenen Anschluss auf dem angegebenen Host.
Öffentliche MethodeConnectAsync(IPAddress, Int32)Schließt den Clients an einen Host des Remote TCP an, der die angegebene IP-Adresse verwenden und Anschlussnummer als asynchronen Vorgang.
Öffentliche MethodeConnectAsync(IPAddress[], Int32)Schließt den Clients an einen Host des Remote TCP an, der die angegebenen IP-Adressen verwenden und Anschlussnummer als asynchronen Vorgang.
Öffentliche MethodeConnectAsync(String, Int32)Schließt den Clients an die angegebene TCP-Port auf dem Host angegebenen als asynchroner Vorgang an.
Geschützte MethodeDisposeGibt die von TcpClient verwendeten nicht verwalteten Ressourcen und optional die verwalteten Ressourcen frei.
Öffentliche MethodeEndConnectNimmt einen eingehenden Verbindungsversuch asynchron an.
Öffentliche MethodeEquals(Object)Bestimmt, ob das angegebene Objekt mit dem aktuellen Objekt identisch ist. (Von Object geerbt.)
Geschützte MethodeFinalizeGibt von der TcpClient-Klasse verwendete Ressourcen frei. (Überschreibt Object.Finalize().)
Öffentliche MethodeGetHashCodeFungiert als Hashfunktion für einen bestimmten Typ. (Von Object geerbt.)
Öffentliche MethodeGetStreamGibt den für das Senden und Empfangen von Daten verwendeten NetworkStream zurück.
Öffentliche MethodeGetTypeRuft den Type der aktuellen Instanz ab. (Von Object geerbt.)
Geschützte MethodeMemberwiseCloneErstellt eine flache Kopie des aktuellen Object. (Von Object geerbt.)
Öffentliche MethodeToStringGibt eine Zeichenfolge zurück, die das aktuelle Objekt darstellt. (Von Object geerbt.)
Zum Seitenanfang
  NameBeschreibung
Explizite SchnittstellenimplementierungPrivate MethodeIDisposable.DisposeInfrastruktur. Gibt alle vom TcpClient verwendeten Ressourcen frei.
Zum Seitenanfang

Die TcpClient-Klasse stellt einfache Methoden für die Verbindung, das Senden und Empfangen von Streamdaten in einem Netzwerk im synchronen Blockiermodus bereit.

Damit der TcpClient eine Verbindung herstellen und Daten austauschen kann, muss ein TcpListener oder Socket, der mit dem TCP-ProtocolType erstellt wurde, eingehende Verbindungsanforderungen überwachen. Sie können eine Verbindung mit diesem Listener auf zwei verschiedene Arten herstellen:

  • Erstellen Sie einen TcpClient, und rufen Sie eine der drei verfügbaren Connect-Methoden auf.

  • Erstellen Sie einen TcpClient mit dem Hostnamen und der Anschlussnummer des Remotehosts. Dieser Konstruktor versucht automatisch, eine Verbindung herzustellen.

HinweisHinweis

Verwenden Sie die UdpClient-Klasse, wenn Sie verbindungslose Datagramme im synchronen Blockiermodus senden möchten.

Hinweise zur Vererbung

Rufen Sie zum Senden und Empfangen von Daten einen NetworkStream mithilfe der GetStream-Methode ab. Rufen Sie die Write-Methode und die Read-Methode des NetworkStream auf, um Daten mit dem Remotehost senden und empfangen zu können. Mit der Close-Methode können Sie alle dem TcpClient zugeordneten Ressourcen freigeben.

Im folgenden Codebeispiel wird eine TcpClient-Verbindung hergestellt.


static void Connect(String server, String message) 
{
  try 
  {
    // Create a TcpClient.
    // Note, for this client to work you need to have a TcpServer 
    // connected to the same address as specified by the server, port
    // combination.
    Int32 port = 13000;
    TcpClient client = new TcpClient(server, port);

    // Translate the passed message into ASCII and store it as a Byte array.
    Byte[] data = System.Text.Encoding.ASCII.GetBytes(message);         

    // Get a client stream for reading and writing.
   //  Stream stream = client.GetStream();

    NetworkStream stream = client.GetStream();

    // Send the message to the connected TcpServer. 
    stream.Write(data, 0, data.Length);

    Console.WriteLine("Sent: {0}", message);         

    // Receive the TcpServer.response.

    // Buffer to store the response bytes.
    data = new Byte[256];

    // String to store the response ASCII representation.
    String responseData = String.Empty;

    // Read the first batch of the TcpServer response bytes.
    Int32 bytes = stream.Read(data, 0, data.Length);
    responseData = System.Text.Encoding.ASCII.GetString(data, 0, bytes);
    Console.WriteLine("Received: {0}", responseData);         

    // Close everything.
    stream.Close();         
    client.Close();         
  } 
  catch (ArgumentNullException e) 
  {
    Console.WriteLine("ArgumentNullException: {0}", e);
  } 
  catch (SocketException e) 
  {
    Console.WriteLine("SocketException: {0}", e);
  }

  Console.WriteLine("\n Press Enter to continue...");
  Console.Read();
}


.NET Framework

Unterstützt in: 4.5, 4, 3.5, 3.0, 2.0, 1.1, 1.0

.NET Framework Client Profile

Unterstützt in: 4, 3.5 SP1
  • SocketPermission 

    Berechtigung zum Herstellen einer ausgehenden Verbindung oder Annehmen einer eingehenden Anforderung.

Windows 8, Windows Server 2012, Windows 7, Windows Vista SP2, Windows Server 2008 (Server Core-Rolle wird nicht unterstützt), Windows Server 2008 R2 (Server Core-Rolle wird mit SP1 oder höher unterstützt; Itanium wird nicht unterstützt)

.NET Framework unterstützt nicht alle Versionen sämtlicher Plattformen. Eine Liste der unterstützten Versionen finden Sie unter Systemanforderungen für .NET Framework.
Alle öffentlichen static (Shared in Visual Basic)-Member dieses Typs sind threadsicher. Bei Instanzmembern ist die Threadsicherheit nicht gewährleistet.
Fanden Sie dies hilfreich?
(1500 verbleibende Zeichen)

Community-Beiträge

HINZUFÜGEN
© 2013 Microsoft. Alle Rechte vorbehalten.