Dieser Artikel wurde maschinell übersetzt. Wenn Sie die englische Version des Artikels anzeigen möchten, aktivieren Sie das Kontrollkästchen Englisch. Sie können den englischen Text auch in einem Popupfenster anzeigen, indem Sie den Mauszeiger über den Text bewegen.
Übersetzung
Englisch

Socket-Klasse

 

Veröffentlicht: Oktober 2016

Implementiert die Berkeley-Sockets-Schnittstelle.

Namespace:   System.Net.Sockets
Assembly:  System (in System.dll)

System.Object
  System.Net.Sockets.Socket

public class Socket : IDisposable

NameBeschreibung
System_CAPS_pubmethodSocket(AddressFamily, SocketType, ProtocolType)

Initialisiert eine neue Instanz der Socket -Klasse unter Verwendung der angegebenen Adressfamilie, Sockettyp und Protokoll.

System_CAPS_pubmethodSocket(SocketInformation)

Initialisiert eine neue Instanz der Socket -Klasse unter Verwendung den angegebenen Rückgabewert DuplicateAndClose.

System_CAPS_pubmethodSocket(SocketType, ProtocolType)

Initialisiert eine neue Instanz der Socket -Klasse mit den angegebenen Sockettyp und im Protokoll.

NameBeschreibung
System_CAPS_pubpropertyAddressFamily

Ruft die Adressfamilie von der Socket.

System_CAPS_pubpropertyAvailable

Ruft die Datenmenge ab, die über das Netzwerk empfangen wurde und gelesen werden kann.

System_CAPS_pubpropertyBlocking

Ruft ab oder legt einen Wert, der angibt, ob die Socket im blockierenden Modus befindet.

System_CAPS_pubpropertyConnected

Ruft einen Wert, der angibt, ob ein Socket besteht eine Verbindung mit einem Remotehost zum Zeitpunkt der letzten Send oder Receive Vorgang.

System_CAPS_pubpropertyDontFragment

Ruft ab oder legt eine Boolean Wert, der angibt, ob die Socket IP (Internet Protocol)-Datagramme fragmentiert werden können.

System_CAPS_pubpropertyDualMode

Ruft einen Boolean-Wert ab, der angibt, ob der Socket ein für IPv4 und IPv6 verwendeter Dualmodussocket ist, oder legt ihn fest.

System_CAPS_pubpropertyEnableBroadcast

Ruft ab oder legt eine Boolean Wert, der angibt, ob die Socket Senden und Empfangen von broadcast-Pakete können.

System_CAPS_pubpropertyExclusiveAddressUse

Ruft ab oder legt eine Boolean Wert, der angibt, ob die Socket kann nur ein Prozess an einen Anschluss gebunden.

System_CAPS_pubpropertyHandle

Ruft das Handle des Betriebssystems für die Socket.

System_CAPS_pubpropertyIsBound

Ruft einen Wert, der angibt, ob die Socket an einen bestimmten lokalen Anschluss gebunden ist.

System_CAPS_pubpropertyLingerState

Ruft ab oder legt einen Wert, der angibt, ob die Socket wird bei einem Versuch, alle ausstehende Daten senden Schließen eines Sockets verzögert.

System_CAPS_pubpropertyLocalEndPoint

Ruft den lokalen Endpunkt ab.

System_CAPS_pubpropertyMulticastLoopback

Ruft ab oder legt einen Wert, der angibt, ob ausgehende Multicastpakete an die sendende Anwendung übermittelt werden.

System_CAPS_pubpropertyNoDelay

Ruft ab oder legt eine Boolean Wert, der angibt, ob der Stream Socket den Nagle-Algorithmus verwendet.

System_CAPS_pubpropertySystem_CAPS_staticOSSupportsIPv4

Gibt an, ob das zugrunde liegende Betriebssystem und die Netzwerkkarten Internet Protocol Version 4 (IPv4 unterstützen).

System_CAPS_pubpropertySystem_CAPS_staticOSSupportsIPv6

Gibt an, ob das zugrunde liegende Betriebssystem und die Netzwerkkarten Internet Protocol Version 6 (IPv6 unterstützen).

System_CAPS_pubpropertyProtocolType

Ruft den Protokolltyp der Socket.

System_CAPS_pubpropertyReceiveBufferSize

Ruft ab oder legt einen Wert, der angibt, die Größe des Empfangspuffers des der Socket.

System_CAPS_pubpropertyReceiveTimeout

Ruft ab oder legt einen Wert, der angibt, die Zeitdauer nach dem synchronen Receive Aufruf läuft.

System_CAPS_pubpropertyRemoteEndPoint

Ruft den Remoteendpunkt ab.

System_CAPS_pubpropertySendBufferSize

Ruft ab oder legt einen Wert, der angibt, die Größe des Sendepuffers für den Socket.

System_CAPS_pubpropertySendTimeout

Ruft ab oder legt einen Wert, der angibt, die Zeitdauer nach dem synchronen Send Aufruf läuft.

System_CAPS_pubpropertySocketType

Ruft den Typ des Socket ab.

System_CAPS_pubpropertySystem_CAPS_staticSupportsIPv4

Veraltet. Ruft einen Wert, der angibt, ob die IPv4-Unterstützung verfügbar und auf dem aktuellen Host aktiviert ist.

System_CAPS_pubpropertySystem_CAPS_staticSupportsIPv6

Veraltet. Ruft einen Wert, der angibt, ob das Framework IPv6 für bestimmte veraltete unterstützt Dns Elemente.

System_CAPS_pubpropertyTtl

Ruft ab oder legt einen Wert, der die Time To Live (TTL) von IP (Internet Protocol) gesendeten Pakete angibt, der Socket.

System_CAPS_pubpropertyUseOnlyOverlappedIO

Gibt an, ob der Socket nur überlappende e/a-Modus verwendet werden sollte.

NameBeschreibung
System_CAPS_pubmethodAccept()

Erstellt ein neues Socket für eine neu erstellte Verbindung.

System_CAPS_pubmethodAcceptAsync(SocketAsyncEventArgs)

Beginnt einen asynchronen Vorgang, um eine eingehende Verbindung anzunehmen.

System_CAPS_pubmethodBeginAccept(AsyncCallback, Object)

Beginnt einen asynchronen Vorgang, um eine eingehende Verbindung anzunehmen.

System_CAPS_pubmethodBeginAccept(Int32, AsyncCallback, Object)

Startet einen asynchronen Vorgang, um eine eingehende Verbindung anzunehmen, und empfängt den ersten Block von Daten, die von der Clientanwendung gesendet.

System_CAPS_pubmethodBeginAccept(Socket, Int32, AsyncCallback, Object)

Startet einen asynchronen Vorgang, um eine eingehende Verbindung von einem angegebenen Socket anzunehmen, und empfängt den ersten Block von Daten, die von der Clientanwendung gesendet.

System_CAPS_pubmethodBeginConnect(EndPoint, AsyncCallback, Object)

Beginnt eine asynchrone Anforderung einer Remotehostverbindung.

System_CAPS_pubmethodBeginConnect(IPAddress, Int32, AsyncCallback, Object)

Beginnt eine asynchrone Anforderung einer Remotehostverbindung. Der Host wird durch eine IPAddress und eine Portnummer angegeben.

System_CAPS_pubmethodBeginConnect(IPAddress[], Int32, AsyncCallback, Object)

Beginnt eine asynchrone Anforderung einer Remotehostverbindung. Der Host wird durch ein IPAddress-Array und eine Portnummer angegeben.

System_CAPS_pubmethodBeginConnect(String, Int32, AsyncCallback, Object)

Beginnt eine asynchrone Anforderung einer Remotehostverbindung. Der Host wird durch einen Hostnamen und eine Portnummer angegeben.

System_CAPS_pubmethodBeginDisconnect(Boolean, AsyncCallback, Object)

Beginnt eine asynchrone Anforderung zum Trennen von eines Remoteendpunkt.

System_CAPS_pubmethodBeginReceive(Byte[], Int32, Int32, SocketFlags, AsyncCallback, Object)

Beginnt den asynchronen Datenempfang aus einem verbundenen Socket.

System_CAPS_pubmethodBeginReceive(Byte[], Int32, Int32, SocketFlags, SocketError, AsyncCallback, Object)

Beginnt den asynchronen Datenempfang aus einem verbundenen Socket.

System_CAPS_pubmethodBeginReceive(IList<ArraySegment<Byte>>, SocketFlags, AsyncCallback, Object)

Beginnt den asynchronen Datenempfang aus einem verbundenen Socket.

System_CAPS_pubmethodBeginReceive(IList<ArraySegment<Byte>>, SocketFlags, SocketError, AsyncCallback, Object)

Beginnt den asynchronen Datenempfang aus einem verbundenen Socket.

System_CAPS_pubmethodBeginReceiveFrom(Byte[], Int32, Int32, SocketFlags, EndPoint, AsyncCallback, Object)

Beginnt den asynchronen Datenempfang aus dem angegebenen Netzwerkgerät.

System_CAPS_pubmethodBeginReceiveMessageFrom(Byte[], Int32, Int32, SocketFlags, EndPoint, AsyncCallback, Object)

Startet die angegebene Anzahl von Datenbytes an der angegebenen Position im Datenpuffer unter Verwendung des angegebenen asynchron empfangen SocketFlags, und speichert die Endpunkt- und Paketinformationen...

System_CAPS_pubmethodBeginSend(Byte[], Int32, Int32, SocketFlags, AsyncCallback, Object)

Sendet Daten asynchron an einen verbundenen Socket.

System_CAPS_pubmethodBeginSend(Byte[], Int32, Int32, SocketFlags, SocketError, AsyncCallback, Object)

Sendet Daten asynchron an einen verbundenen Socket.

System_CAPS_pubmethodBeginSend(IList<ArraySegment<Byte>>, SocketFlags, AsyncCallback, Object)

Sendet Daten asynchron an einen verbundenen Socket.

System_CAPS_pubmethodBeginSend(IList<ArraySegment<Byte>>, SocketFlags, SocketError, AsyncCallback, Object)

Sendet Daten asynchron an einen verbundenen Socket.

System_CAPS_pubmethodBeginSendFile(String, AsyncCallback, Object)

Sendet die Datei fileName an einen verbundenen Socket -Objekt unter Verwendung der UseDefaultWorkerThread Flag.

System_CAPS_pubmethodBeginSendFile(String, Byte[], Byte[], TransmitFileOptions, AsyncCallback, Object)

Sendet eine Datei und Datenpuffer asynchron an einen verbundenen Socket Objekt.

System_CAPS_pubmethodBeginSendTo(Byte[], Int32, Int32, SocketFlags, EndPoint, AsyncCallback, Object)

Sendet Daten asynchron an einen bestimmten Remotehost.

System_CAPS_pubmethodBind(EndPoint)

Ordnet eine Socket mit einem lokalen Endpunkt.

System_CAPS_pubmethodSystem_CAPS_staticCancelConnectAsync(SocketAsyncEventArgs)

Bricht eine asynchrone Anforderung einer Remotehostverbindung.

System_CAPS_pubmethodClose()

Schließt die Socket Verbindung und alle zugeordneten Ressourcen frei.

System_CAPS_pubmethodClose(Int32)

Schließt die Socket-Verbindung und gibt alle zugeordneten Ressourcen mit einem angegebenen Timeout frei, damit in der Warteschlange befindliche Daten gesendet werden können.

System_CAPS_pubmethodConnect(EndPoint)

Stellt eine Verbindung mit einem Remotehost her.

System_CAPS_pubmethodConnect(IPAddress, Int32)

Stellt eine Verbindung mit einem Remotehost her. Der Host wird durch eine IP-Adresse und eine Portnummer angegeben.

System_CAPS_pubmethodConnect(IPAddress[], Int32)

Stellt eine Verbindung mit einem Remotehost her. Der Host wird durch ein Array von IP-Adressen und eine Portnummer angegeben.

System_CAPS_pubmethodConnect(String, Int32)

Stellt eine Verbindung mit einem Remotehost her. Der Host wird durch einen Hostnamen und eine Portnummer angegeben.

System_CAPS_pubmethodConnectAsync(SocketAsyncEventArgs)

Beginnt eine asynchrone Anforderung für eine Verbindung mit einem Remotehost.

System_CAPS_pubmethodSystem_CAPS_staticConnectAsync(SocketType, ProtocolType, SocketAsyncEventArgs)

Beginnt eine asynchrone Anforderung für eine Verbindung mit einem Remotehost.

System_CAPS_pubmethodDisconnect(Boolean)

Schließt die Socketverbindung und ermöglicht die Wiederverwendung des Sockets.

System_CAPS_pubmethodDisconnectAsync(SocketAsyncEventArgs)

Beginnt eine asynchrone Anforderung zum Trennen von eines Remoteendpunkt.

System_CAPS_pubmethodDispose()

Gibt alle von der aktuellen Instanz der Socket-Klasse verwendeten Ressourcen frei.

System_CAPS_protmethodDispose(Boolean)

Gibt die vom Socket verwendeten, nicht verwalteten Ressourcen frei und verwirft optional auch die verwalteten Ressourcen.

System_CAPS_pubmethodDuplicateAndClose(Int32)

Erstellt ein Duplikat den Socketverweis für den Zielprozess und schließt den Socket für diesen Prozess.

System_CAPS_pubmethodEndAccept(Byte[], IAsyncResult)

Nimmt einen eingehenden Verbindungsversuch asynchron an und erstellt ein neues Socket -Objekt zum remote-Host-Kommunikation zu behandeln. Diese Methode gibt einen Puffer, der die ersten übertragenen Daten enthält.

System_CAPS_pubmethodEndAccept(Byte[], Int32, IAsyncResult)

Nimmt einen eingehenden Verbindungsversuch asynchron an und erstellt ein neues Socket -Objekt zum remote-Host-Kommunikation zu behandeln. Diese Methode gibt einen Puffer, der die ersten Daten und die Anzahl der übertragenen Bytes enthält.

System_CAPS_pubmethodEndAccept(IAsyncResult)

Nimmt einen eingehenden Verbindungsversuch asynchron an und erstellt ein neues Socket remote-Host-Kommunikation zu behandeln.

System_CAPS_pubmethodEndConnect(IAsyncResult)

Beendet eine ausstehende asynchrone Verbindung-Anforderung.

System_CAPS_pubmethodEndDisconnect(IAsyncResult)

Beendet eine ausstehende asynchrone Disconnect-Anforderung.

System_CAPS_pubmethodEndReceive(IAsyncResult)

Beendet einen ausstehenden asynchronen Lesevorgang.

System_CAPS_pubmethodEndReceive(IAsyncResult, SocketError)

Beendet einen ausstehenden asynchronen Lesevorgang.

System_CAPS_pubmethodEndReceiveFrom(IAsyncResult, EndPoint)

Beendet einen ausstehenden asynchronen Lesevorgang von einem bestimmten Endpunkt.

System_CAPS_pubmethodEndReceiveMessageFrom(IAsyncResult, SocketFlags, EndPoint, IPPacketInformation)

Beendet einen ausstehenden asynchronen Lesevorgang von einem bestimmten Endpunkt. Diese Methode stellt außerdem mehr Informationen über das Paket als EndReceiveFrom.

System_CAPS_pubmethodEndSend(IAsyncResult)

Beendet einen ausstehenden asynchronen Sendevorgang.

System_CAPS_pubmethodEndSend(IAsyncResult, SocketError)

Beendet einen ausstehenden asynchronen Sendevorgang.

System_CAPS_pubmethodEndSendFile(IAsyncResult)

Beendet einen ausstehenden asynchronen Sendevorgang einer Datei.

System_CAPS_pubmethodEndSendTo(IAsyncResult)

Beendet einen ausstehenden asynchronen Sendevorgang an einem bestimmten Speicherort.

System_CAPS_pubmethodEquals(Object)

Bestimmt, ob das angegebene Objekt mit dem aktuellen Objekt identisch ist.(Geerbt von „Object“.)

System_CAPS_protmethodFinalize()

Gibt von der Socket-Klasse verwendete Ressourcen frei.(Überschreibt Object.Finalize().)

System_CAPS_pubmethodGetHashCode()

Fungiert als die Standardhashfunktion.(Geerbt von „Object“.)

System_CAPS_pubmethodGetSocketOption(SocketOptionLevel, SocketOptionName)

Gibt den Wert eines angegebenen Socket Option, die als Objekt dargestellt.

System_CAPS_pubmethodGetSocketOption(SocketOptionLevel, SocketOptionName, Byte[])

Gibt das angegebene Socket option festlegen, dargestellt als Bytearray.

System_CAPS_pubmethodGetSocketOption(SocketOptionLevel, SocketOptionName, Int32)

Gibt den Wert des angegebenen Socket -Option in ein Array.

System_CAPS_pubmethodGetType()

Ruft den Type der aktuellen Instanz ab.(Geerbt von „Object“.)

System_CAPS_pubmethodIOControl(Int32, Byte[], Byte[])

Legt Betriebsmodi auf niedriger Ebene für die Socket mit numerischen Steuerungscodes.

System_CAPS_pubmethodIOControl(IOControlCode, Byte[], Byte[])

Legt Betriebsmodi auf niedriger Ebene für die Socket mithilfe der IOControlCode Enumeration Steuerungscodes angeben.

System_CAPS_pubmethodListen(Int32)

Stellen eine Socket in einem Wartezustand.

System_CAPS_protmethodMemberwiseClone()

Erstellt eine flache Kopie des aktuellen Object.(Geerbt von „Object“.)

System_CAPS_pubmethodPoll(Int32, SelectMode)

Bestimmt den Status der Socket.

System_CAPS_pubmethodReceive(Byte[])

Empfängt Daten von einem gebundenen Socket in einem Empfangspuffer.

System_CAPS_pubmethodReceive(Byte[], Int32, Int32, SocketFlags)

Empfängt die angegebene Anzahl von Bytes aus einem gebundenen Socket an der angegebenen Offsetposition des Empfangspuffers, mithilfe des angegebenen SocketFlags.

System_CAPS_pubmethodReceive(Byte[], Int32, Int32, SocketFlags, SocketError)

Empfängt Daten von einem gebundenen Socket in einem Empfangspuffer mithilfe des angegebenen SocketFlags.

System_CAPS_pubmethodReceive(Byte[], Int32, SocketFlags)

Empfängt die angegebene Anzahl von Bytes der Daten von einem gebundenen Socket in einem Empfangspuffer mithilfe des angegebenen SocketFlags.

System_CAPS_pubmethodReceive(Byte[], SocketFlags)

Empfängt Daten von einem gebundenen Socket in einem Empfangspuffer mithilfe des angegebenen SocketFlags.

System_CAPS_pubmethodReceive(IList<ArraySegment<Byte>>)

Empfängt Daten von einem gebundenen Socket in der Liste der Empfangspuffer.

System_CAPS_pubmethodReceive(IList<ArraySegment<Byte>>, SocketFlags)

Empfängt Daten von einem gebundenen Socket in der Liste der Empfangspuffer, mithilfe des angegebenen SocketFlags.

System_CAPS_pubmethodReceive(IList<ArraySegment<Byte>>, SocketFlags, SocketError)

Empfängt Daten von einem gebundenen Socket in der Liste der Empfangspuffer, mithilfe des angegebenen SocketFlags.

System_CAPS_pubmethodReceiveAsync(SocketAsyncEventArgs)

Beginnt eine asynchrone Anforderung zum Empfangen von Daten aus einem verbundenen Socket Objekt.

System_CAPS_pubmethodReceiveFrom(Byte[], EndPoint)

Empfängt ein Datagramm im Datenpuffer und speichert den Endpunkt.

System_CAPS_pubmethodReceiveFrom(Byte[], Int32, Int32, SocketFlags, EndPoint)

Empfängt die angegebene Anzahl von Datenbytes an der angegebenen Position im Datenpuffer, verwendet dabei die angegebenen SocketFlags und speichert den Endpunkt.

System_CAPS_pubmethodReceiveFrom(Byte[], Int32, SocketFlags, EndPoint)

Empfängt die angegebene Anzahl von Bytes im Datenpuffer, der mit dem angegebenen SocketFlags, und speichert den Endpunkt.

System_CAPS_pubmethodReceiveFrom(Byte[], SocketFlags, EndPoint)

Empfängt ein Datagramm im Datenpuffer unter Verwendung des angegebenen SocketFlags, und speichert den Endpunkt.

System_CAPS_pubmethodReceiveFromAsync(SocketAsyncEventArgs)

Beginnt den asynchronen Datenempfang aus dem angegebenen Netzwerkgerät.

System_CAPS_pubmethodReceiveMessageFrom(Byte[], Int32, Int32, SocketFlags, EndPoint, IPPacketInformation)

Empfängt die angegebene Anzahl von Datenbytes an der angegebenen Position im Datenpuffer unter Verwendung des angegebenen SocketFlags, und speichert die Endpunkt- und Paketinformationen.

System_CAPS_pubmethodReceiveMessageFromAsync(SocketAsyncEventArgs)

Startet die angegebene Anzahl von Datenbytes an der angegebenen Position im Datenpuffer, unter Verwendung des angegebenen asynchron empfangen SocketAsyncEventArgs.SocketFlags, und speichert die Endpunkt- und Paketinformationen.

System_CAPS_pubmethodSystem_CAPS_staticSelect(IList, IList, IList, Int32)

Bestimmt den Status von einem oder mehreren Sockets.

System_CAPS_pubmethodSend(Byte[])

Sendet Daten an einen verbundenen Socket.

System_CAPS_pubmethodSend(Byte[], Int32, Int32, SocketFlags)

Sendet die angegebene Anzahl von Datenbytes an einen verbundenen Socket, beginnend bei einem angegebenen Offset und unter Verwendung der angegebenen SocketFlags.

System_CAPS_pubmethodSend(Byte[], Int32, Int32, SocketFlags, SocketError)

Sendet die angegebene Anzahl von Datenbytes an einen verbundenen Socket, beginnend beim angegebenen Offset und unter Verwendung des angegebenen SocketFlags

System_CAPS_pubmethodSend(Byte[], Int32, SocketFlags)

Sendet die angegebene Anzahl von Datenbytes an einen verbundenen Socket, unter Verwendung des angegebenen SocketFlags.

System_CAPS_pubmethodSend(Byte[], SocketFlags)

Sendet Daten an einen verbundenen Socket unter Verwendung des angegebenen SocketFlags.

System_CAPS_pubmethodSend(IList<ArraySegment<Byte>>)

Sendet den Satz von Puffern in der Liste an einen verbundenen Socket.

System_CAPS_pubmethodSend(IList<ArraySegment<Byte>>, SocketFlags)

Sendet den Satz von Puffern in der Liste an einen verbundenen Socket, unter Verwendung des angegebenen SocketFlags.

System_CAPS_pubmethodSend(IList<ArraySegment<Byte>>, SocketFlags, SocketError)

Sendet den Satz von Puffern in der Liste an einen verbundenen Socket, unter Verwendung des angegebenen SocketFlags.

System_CAPS_pubmethodSendAsync(SocketAsyncEventArgs)

Sendet Daten asynchron an einen verbundenen Socket Objekt.

System_CAPS_pubmethodSendFile(String)

Sendet die Datei fileName an einen verbundenen Socket -Objekt mit den UseDefaultWorkerThread Flag übertragen.

System_CAPS_pubmethodSendFile(String, Byte[], Byte[], TransmitFileOptions)

Sendet die Datei fileName und puffert Daten mit dem angegebenen TransmitFileOptions-Wert in einem verbundenen Socket-Objekt.

System_CAPS_pubmethodSendPacketsAsync(SocketAsyncEventArgs)

Sendet eine Auflistung von Dateien oder im Arbeitsspeicher Datenpuffer asynchron an einen verbundenen Socket Objekt.

System_CAPS_pubmethodSendTo(Byte[], EndPoint)

Sendet Daten an den angegebenen Endpunkt.

System_CAPS_pubmethodSendTo(Byte[], Int32, Int32, SocketFlags, EndPoint)

Sendet die angegebene Anzahl von Datenbytes an den angegebenen Endpunkt, beginnend mit der angegebenen Position im Puffer und unter Verwendung des angegebenen SocketFlags.

System_CAPS_pubmethodSendTo(Byte[], Int32, SocketFlags, EndPoint)

Sendet die angegebene Anzahl von Datenbytes an den angegebenen Endpunkt unter Verwendung des angegebenen SocketFlags.

System_CAPS_pubmethodSendTo(Byte[], SocketFlags, EndPoint)

Sendet Daten an einen bestimmten Endpunkt unter Verwendung des angegebenen SocketFlags.

System_CAPS_pubmethodSendToAsync(SocketAsyncEventArgs)

Sendet Daten asynchron an einen bestimmten Remotehost.

System_CAPS_pubmethodSetIPProtectionLevel(IPProtectionLevel)

Legen Sie die IP-Schutzebene für einen Socket.

System_CAPS_pubmethodSetSocketOption(SocketOptionLevel, SocketOptionName, Boolean)

Setzt den angegebenen Socket -Option auf den angegebenen Boolean Wert.

System_CAPS_pubmethodSetSocketOption(SocketOptionLevel, SocketOptionName, Byte[])

Setzt den angegebenen Socket Option aus, um den angegebenen Wert als ein Byte-Array dargestellt.

System_CAPS_pubmethodSetSocketOption(SocketOptionLevel, SocketOptionName, Int32)

Setzt den angegebenen Socket Option auf den angegebenen ganzzahligen Wert.

System_CAPS_pubmethodSetSocketOption(SocketOptionLevel, SocketOptionName, Object)

Setzt den angegebenen Socket Option aus, um den angegebenen Wert als Objekt dargestellt.

System_CAPS_pubmethodShutdown(SocketShutdown)

Deaktiviert senden und empfangen auf eine Socket.

System_CAPS_pubmethodToString()

Gibt eine Zeichenfolge zurück, die das aktuelle Objekt darstellt.(Geerbt von „Object“.)

Die Socket Klasse bietet einen umfangreichen Satz von Methoden und Eigenschaften für die Netzwerkkommunikation. Die Socket -Klasse können Sie sowohl synchrone und asynchrone Datenübertragungen mit einem der Kommunikationsprotokolle gemäß der ProtocolType Enumeration.

Die Socket -Klasse folgt das .NET Framework-Benennungsmuster für asynchrone Methoden. Angenommen, die synchrone Receive Methode entspricht, auf den asynchronen BeginReceive und EndReceive Methoden.

Wenn Ihre Anwendung nur ein Thread während der Ausführung erforderlich ist, verwenden Sie die folgenden Methoden, die für den synchronen Betriebsmodus vorgesehen sind.

  • Wenn Sie ein verbindungsorientiertes Protokoll wie TCP verwenden, kann der Server für Verbindungen mit dem Überwachen der Listen Methode. Die Accept Methode Prozesse eine eingehende Verbindung anfordert, und gibt eine Socket die Sie verwenden können, um Daten mit dem Remotehost kommunizieren. Verwenden Sie diese zurückgegebenen Socket aufrufen, die Send oder Receive Methode. Rufen Sie die Bind Methode vor dem Aufruf der Listen Methode, wenn Sie die lokale IP-Adresse und Port-Nummer angeben möchten. Verwenden Sie die Portnummer 0 (null), wenn Sie möchten, dass den zugrunde liegende Dienstanbieter einen freien Anschluss zuweisen. Wenn Sie einem überwachenden Host herstellen möchten, rufen Sie die Connect Methode. Um Daten zu kommunizieren, rufen Sie die Send oder Receive Methode.

  • Wenn Sie z. B. UDP ein verbindungsloses Protokoll verwenden, brauchen Sie überhaupt auf Verbindungen lauschen. Rufen Sie die ReceiveFrom Methode, um eingehende Datagramme zu akzeptieren. Verwenden der SendTo Methode, um Datagramme an einen Remotehost senden.

Um Kommunikation mithilfe von separaten Threads während der Ausführung zu verarbeiten, verwenden Sie die folgenden Methoden, die für den asynchronen Vorgang Modus vorgesehen sind.

Wenn Sie mehrere asynchrone Vorgänge für ein Socket ausführen, sie nicht unbedingt in der Reihenfolge abgeschlossen in denen sie gestartet werden.

Wenn Sie senden und Empfangen von Daten beendet sind, verwenden Sie die Shutdown Methode zum Deaktivieren der Socket. Nach dem Aufruf von Shutdown, rufen Sie die Close Methode, um alle zugeordneten Ressourcen freizugeben der Socket.

Die Socket Klasse können Sie konfigurieren die Socket mithilfe der SetSocketOption Methode. Rufen Sie diese Einstellungen mithilfe der GetSocketOption Methode.

System_CAPS_noteHinweis

Wenn Sie eine relativ einfache Anwendung schreiben und nicht die maximale Leistung benötigen, sollten Sie verwenden TcpClient, TcpListener, und UdpClient. Diese Klassen stellen eine einfachere und benutzerfreundlichere Schnittstelle für Socket Kommunikation.

Im folgenden Codebeispiel wird veranschaulicht wie die Socket Klasse kann verwendet werden, um Daten an einen HTTP-Server senden und Empfangen der Antwort. In diesem Beispiel wird blockiert, bis die gesamte Seite empfangen wird.

using System;
using System.Text;
using System.IO;
using System.Net;
using System.Net.Sockets;

public class GetSocket
{
    private static Socket ConnectSocket(string server, int port)
    {
        Socket s = null;
        IPHostEntry hostEntry = null;

        // Get host related information.
        hostEntry = Dns.GetHostEntry(server);

        // Loop through the AddressList to obtain the supported AddressFamily. This is to avoid
        // an exception that occurs when the host IP Address is not compatible with the address family
        // (typical in the IPv6 case).
        foreach(IPAddress address in hostEntry.AddressList)
        {
            IPEndPoint ipe = new IPEndPoint(address, port);
            Socket tempSocket = 
                new Socket(ipe.AddressFamily, SocketType.Stream, ProtocolType.Tcp);

            tempSocket.Connect(ipe);

            if(tempSocket.Connected)
            {
                s = tempSocket;
                break;
            }
            else
            {
                continue;
            }
        }
        return s;
    }

    // This method requests the home page content for the specified server.
    private static string SocketSendReceive(string server, int port) 
    {
        string request = "GET / HTTP/1.1\r\nHost: " + server + 
            "\r\nConnection: Close\r\n\r\n";
        Byte[] bytesSent = Encoding.ASCII.GetBytes(request);
        Byte[] bytesReceived = new Byte[256];

        // Create a socket connection with the specified server and port.
        Socket s = ConnectSocket(server, port);

        if (s == null)
            return ("Connection failed");

        // Send request to the server.
        s.Send(bytesSent, bytesSent.Length, 0);  

        // Receive the server home page content.
        int bytes = 0;
        string page = "Default HTML page on " + server + ":\r\n";

        // The following will block until te page is transmitted.
        do {
            bytes = s.Receive(bytesReceived, bytesReceived.Length, 0);
            page = page + Encoding.ASCII.GetString(bytesReceived, 0, bytes);
        }
        while (bytes > 0);

        return page;
    }

    public static void Main(string[] args) 
    {
        string host;
        int port = 80;

        if (args.Length == 0)
            // If no server name is passed as argument to this program, 
            // use the current host name as the default.
            host = Dns.GetHostName();
        else
            host = args[0];

        string result = SocketSendReceive(host, port); 
        Console.WriteLine(result);
    }
}

SocketPermission

To establish an outgoing connection or accept an incoming request.

Universelle Windows-Plattform
Verfügbar seit 10
.NET Framework
Verfügbar seit 1.1
Silverlight
Verfügbar seit 2.0
Windows Phone Silverlight
Verfügbar seit 7.1

Instanzen dieser Klasse sind threadsicher.

Zurück zum Anfang
Anzeigen: