SocketFlags Enumeration
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.
Gibt das Sende- und Empfangsverhalten des Sockets an.
Diese Enumeration unterstützt eine bitweise Kombination ihrer Memberwerte.
public enum class SocketFlags
[System.Flags]
public enum SocketFlags
[<System.Flags>]
type SocketFlags =
Public Enum SocketFlags
- Vererbung
- Attribute
Felder
| Name | Wert | Beschreibung |
|---|---|---|
| None | 0 | Verwenden Sie keine Kennzeichnungen für diesen Anruf. |
| OutOfBand | 1 | Verarbeiten von Out-of-Band-Daten. |
| Peek | 2 | Werfen Sie einen Blick auf die eingehende Nachricht. |
| DontRoute | 4 | Senden, ohne Routingtabellen zu verwenden. |
| MaxIOVectorLength | 16 | Stellt einen Standardwert für die Anzahl der WSABUF-Strukturen bereit, die zum Senden und Empfangen von Daten verwendet werden. Dieser Wert wird für .NET Framework 4.5 nicht verwendet oder unterstützt. |
| Truncated | 256 | Die Nachricht war zu groß, um in den angegebenen Puffer zu passen und wurde abgeschnitten. |
| ControlDataTruncated | 512 | Gibt an, dass die Steuerelementdaten nicht in einen internen 64-KB-Puffer passen und abgeschnitten wurden. |
| Broadcast | 1024 | Gibt ein Übertragungspaket an. |
| Multicast | 2048 | Gibt ein Multicastpaket an. |
| Partial | 32768 | Teilweises Senden oder Empfangen von Nachrichten. |
Beispiele
Im folgenden Beispiel werden Daten gesendet und angegeben SocketFlags.None.
// Displays sending with a connected socket
// using the overload that takes a buffer, message size, and socket flags.
public static int SendReceiveTest3(Socket server)
{
byte[] msg = Encoding.UTF8.GetBytes("This is a test");
byte[] bytes = new byte[256];
try
{
// Blocks until send returns.
int i = server.Send(msg, msg.Length, SocketFlags.None);
Console.WriteLine("Sent {0} bytes.", i);
// Get reply from the server.
int byteCount = server.Receive(bytes, bytes.Length, SocketFlags.None);
if (byteCount > 0)
Console.WriteLine(Encoding.UTF8.GetString(bytes, 0, byteCount));
}
catch (SocketException e)
{
Console.WriteLine("{0} Error code: {1}.", e.Message, e.ErrorCode);
return (e.ErrorCode);
}
return 0;
}
' Displays sending with a connected socket
' using the overload that takes a buffer, message size, and socket flags.
Public Shared Function SendReceiveTest3(ByVal server As Socket) As Integer
Dim msg As Byte() = Encoding.UTF8.GetBytes("This is a test")
Dim bytes(255) As Byte
Try
' Blocks until send returns.
Dim i As Integer = server.Send(msg, msg.Length, SocketFlags.None)
Console.WriteLine("Sent {0} bytes.", i)
' Get reply from the server.
Dim byteCount As Integer = server.Receive(bytes, server.Available, SocketFlags.None)
If byteCount > 0 Then
Console.WriteLine(Encoding.UTF8.GetString(bytes))
End If
Catch e As SocketException
Console.WriteLine("{0} Error code: {1}.", e.Message, e.ErrorCode)
Return e.ErrorCode
End Try
Return 0
End Function 'SendReceiveTest3