Socket.Bind(EndPoint) Yöntem
Tanım
Önemli
Bazı bilgiler ürünün ön sürümüyle ilgilidir ve sürüm öncesinde önemli değişiklikler yapılmış olabilir. Burada verilen bilgilerle ilgili olarak Microsoft açık veya zımni hiçbir garanti vermez.
bir Socket öğesini yerel uç noktayla ilişkilendirir.
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)
Parametreler
Özel durumlar
localEP, null'e eşittir.
Yuvaya erişmeye çalışılırken bir hata oluştu.
Kapatılmış Socket .
Çağrı yığınında daha yüksek bir çağıranın istenen işlem için izni yok.
Örnekler
Aşağıdaki kod örneği, belirtilen yerel uç noktayı kullanarak bir Socket bağlar.
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
Açıklamalar
Bind Belirli bir yerel uç nokta kullanmanız gerekiyorsa yöntemini kullanın. yöntemini çağırabilmeniz için önce çağırmalısınız BindListen . Belirli bir yerel uç nokta kullanmanız gerekmediği sürece yöntemini kullanmadan Connect önce çağırmanız Bind gerekmez. yöntemini hem bağlantısız hem de bağlantı odaklı protokollerde kullanabilirsiniz Bind .
çağrısından Bindönce, verileri iletmek istediğiniz yerel IPEndPoint değeri oluşturmanız gerekir. Hangi yerel adresin atandığını umursamıyorsanız, adres parametresi olarak bir IPEndPoint kullanarak IPAddress.Any oluşturabilirsiniz ve temel hizmet sağlayıcısı en uygun ağ adresini atar. Bu, birden çok ağ arabiriminiz varsa uygulamanızı basitleştirmeye yardımcı olabilir. Hangi yerel bağlantı noktasının kullanıldığını umursamıyorsanız, bağlantı noktası numarası için 0 kullanarak oluşturabilirsiniz IPEndPoint . Bu durumda, hizmet sağlayıcısı 1024 ile 5000 arasında kullanılabilir bir bağlantı noktası numarası atar.
Yukarıdaki yaklaşımı kullanırsanız, çağrısı yaparak hangi yerel ağ adresinin ve bağlantı noktası numarasının LocalEndPointatandığını keşfedebilirsiniz. Bağlantı odaklı bir protokol kullanıyorsanız, LocalEndPoint veya EndConnect yöntemine çağrı Connect yapana kadar yerel olarak atanan ağ adresini döndürmez. Bağlantısız bir protokol kullanıyorsanız, gönderme veya alma işlemi tamamlanana kadar bu bilgilere erişiminiz olmaz.
BIR UDP yuvası alınan paketler üzerinde arabirim bilgilerini almak istiyorsa, SetSocketOption yöntemin, yöntemi çağrıldıktan Bind hemen sonra yuva seçeneği ayarlı PacketInformation olarak açıkça çağrılması gerekir.
Uyarı
Çok noktaya yayın veri birimleri almak istiyorsanız, yöntemini çok noktaya yayın bağlantı noktası numarasıyla çağırmanız Bind gerekir.
Uyarı
yöntemini kullanarak ReceiveFrom bağlantısız veri birimleri almak istiyorsanız yöntemini çağırmalısınızBind.
Uyarı
yöntemini çağırırken Bind bir SocketException alırsanız, belirli bir hata kodunu almak için özelliğini kullanınSocketException.ErrorCode. Bu kodu aldıktan sonra, hatanın ayrıntılı açıklaması için Windows Yuvaları sürüm 2 API hata kodu belgelerine bakın.
Uyarı
Bu üye, uygulamanızda ağ izlemeyi etkinleştirdiğinizde izleme bilgilerini döndürür. Daha fazla bilgi için bkz. .NET Framework'te Ağ İzleme.