Socket.EnableBroadcast Propriedade

Definição

Obtém ou define um valor Boolean que especifica se o Socket pode enviar ou receber pacotes de difusão.Gets or sets a Boolean value that specifies whether the Socket can send or receive broadcast packets.

public:
 property bool EnableBroadcast { bool get(); void set(bool value); };
public bool EnableBroadcast { get; set; }
member this.EnableBroadcast : bool with get, set
Public Property EnableBroadcast As Boolean

Valor da propriedade

Boolean

true se o Socket permitir pacotes de difusão; caso contrário, false.true if the Socket allows broadcast packets; otherwise, false. O padrão é false.The default is false.

Exceções

Essa opção é válida apenas para um soquete de datagrama.This option is valid for a datagram socket only.

O Socket foi fechado.The Socket has been closed.

Exemplos

O exemplo de código a seguir demonstra o uso da EnableBroadcast propriedade.The following code example demonstrates the use of the EnableBroadcast property.

static void ConfigureUdpSocket(Socket^ udpSocket)
{

    // Set the Don't Fragment flag.
    udpSocket->DontFragment = true;
     
    // Enable broadcast.
    udpSocket->EnableBroadcast = true;
     
    // Disable multicast loopback.
    udpSocket->MulticastLoopback = false;
    Console::WriteLine("Udp Socket configured:");
    Console::WriteLine("  DontFragment {0}", 
        udpSocket->DontFragment);
    Console::WriteLine("  EnableBroadcast {0}", 
        udpSocket->EnableBroadcast);
    Console::WriteLine("  MulticastLoopback {0}", 
        udpSocket->MulticastLoopback);
}
static void ConfigureUdpSocket(Socket udpSocket)
{
    // set the Don't Fragment flag.
    udpSocket.DontFragment = true;
    // Enable broadcast.
    udpSocket.EnableBroadcast = true;

    // Disable multicast loopback.
    udpSocket.MulticastLoopback = false;

    Console.WriteLine("Udp Socket configured:");
    Console.WriteLine($"  DontFragment {udpSocket.DontFragment}");
    Console.WriteLine($"  EnableBroadcast {udpSocket.EnableBroadcast}");
    Console.WriteLine($"  MulticastLoopback {udpSocket.MulticastLoopback}");
}

Comentários

A difusão é limitada a uma sub-rede específica e deve usar o protocolo UDP (User Datagram Protocol). Para o protocolo IP versão 4, você pode transmitir para sua sub-rede local enviando um pacote para 255.255.255.255; ou você pode usar o endereço de difusão direcionado, que é a parte da rede de um endereço IP (Internet Protocol) com todos os bits definidos na parte do host.Broadcasting is limited to a specific subnet, and must use User Datagram Protocol (UDP.) For Internet Protocol version 4, you can broadcast to your local subnet by sending a packet to 255.255.255.255; or you can use the directed broadcast address, which is the network portion of an Internet Protocol (IP) address with all bits set in the host portion. Por exemplo, se seu endereço IP for 192.168.1.40 (um endereço de classe C, com uma máscara de rede de 255.255.255.0--a parte de Network é os três primeiros octetos e a parte do host for o último octeto), seu endereço de difusão direcionado será 192.168.1.255.For example, if your IP address is 192.168.1.40 (a Class C address, with a netmask of 255.255.255.0 -- the network portion is the first three octets, and the host portion is the last octet), your directed broadcast address is 192.168.1.255.

Definir essa propriedade em um soquete de protocolo TCP não terá nenhum efeito.Setting this property on a Transmission Control Protocol (TCP) socket will have no effect.

Aplica-se a