Socket.Bind(EndPoint) Metoda
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Přidruží Socket k místnímu koncovému bodu.
public:
void Bind(System::Net::EndPoint ^ localEP);
public void Bind (System.Net.EndPoint localEP);
member this.Bind : System.Net.EndPoint -> unit
Public Sub Bind (localEP As EndPoint)
Parametry
Výjimky
localEP
je null
.
Při pokusu o přístup k soketu došlo k chybě.
Byl Socket zavřený.
Volající výše v zásobníku volání nemá oprávnění k požadované operaci.
Příklady
Následující příklad kódu vytvoří Socket vazbu pomocí zadaného místního koncového bodu.
try
{
aSocket->Bind( anEndPoint );
}
catch ( Exception^ e )
{
Console::WriteLine( "Winsock error: {0}", e );
}
try {
aSocket.Bind(anEndPoint);
}
catch (Exception e) {
Console.WriteLine("Winsock error: " + e.ToString());
}
Try
aSocket.Bind(anEndPoint)
Catch e As Exception
Console.WriteLine("Winsock error: " & e.ToString())
End Try
Poznámky
Bind Pokud potřebujete použít konkrétní místní koncový bod, použijte metodu . Před voláním Listen metody je nutné volatBind. Před použitím Connect metody nemusíte volatBind, pokud nepotřebujete použít konkrétní místní koncový bod. Tuto metodu Bind můžete použít pro protokoly bez připojení i protokoly orientované na připojení.
Před voláním Bindmusíte nejprve vytvořit místní IPEndPoint , ze kterého chcete komunikovat data. Pokud je vám jedno, která místní adresa je přiřazena, můžete jako parametr adresy vytvořit IPEndPoint parametr using IPAddress.Any a poskytovatel základní služby přiřadí nejvhodnější síťovou adresu. To může pomoct zjednodušit aplikaci, pokud máte více síťových rozhraní. Pokud je vám jedno, který místní port se použije, můžete pro číslo portu vytvořit IPEndPoint hodnotu using 0. V takovém případě poskytovatel služeb přiřadí dostupné číslo portu mezi 1024 a 5000.
Pokud použijete výše uvedený přístup, můžete zjistit, jakou místní síťovou adresu a číslo portu bylo přiřazeno voláním LocalEndPoint. Pokud používáte protokol orientovaný na připojení, LocalEndPoint nevrátí místně přiřazenou síťovou adresu, dokud nezavoláte metodu Connect nebo EndConnect . Pokud používáte protokol bez připojení, nebudete mít k tomuto údaji přístup, dokud nedokončite odeslání nebo přijetí.
Pokud soket UDP chce přijímat informace o rozhraní na přijatých paketech, SetSocketOption měla by být metoda explicitně volána s možností soketu nastavenou na PacketInformation okamžitě po volání Bind metody.
Poznámka
Pokud chcete přijímat datagramy vícesměrového vysílání, musíte metodu Bind volat s číslem portu vícesměrového vysílání.
Poznámka
Pokud chcete přijímat datagramy bez připojení pomocí metody, musíte metodu ReceiveFrom volatBind.
Poznámka
Pokud se vám při volání Bind metody zobrazíSocketException, použijte SocketException.ErrorCode vlastnost k získání konkrétního kódu chyby. Jakmile tento kód získáte, projděte si podrobný popis chyby v dokumentaci k rozhraní API windows Sockets verze 2 .
Poznámka
Tento člen poskytuje trasovací informace, když je ve vaší aplikaci povoleno trasování sítě. Další informace najdete v tématu Trasování sítě v rozhraní .NET Framework.