Так что я все новое в этом программирования «Socket» и там, кажется, что-то я в корне неправильно поняли ...Не удается связать подключенный сокет
Документация для сервера я использую очень плохо написано , но говорит, что использует «потоковое соединение сокета», которое «основано на событиях» ... сервер находится в локальной сети.
вот мой первый наивный поток программы (не асинхронном или что-нибудь!):
.........
1) Сначала мне нужно гнездо ... нет проблем .. . Я понимаю, что :)
Socket s = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp);
2) Тогда я соединиться с ней ... тоже не проблема :)
s.Connect("10.10.10.36", 6009);
3) Теперь, когда я м у соединения и у меня есть новый локальный EP данного сервером ... что-то вроде «10.10.10.59:56231» ... поэтому я стараюсь Привязать к этому EP:
s.Bind (s.LocalEndPoint);
После того, что мне нужно слушать и начать принимать соединения:
s.Listen (10);
s.Accept();
.........
"s.Bind (s.LocalEndPoint);" выходит из строя (я запустил его без отладчика) с этим:
.........
Unhandled Exception:
System.Net.Sockets.SocketException: Invalid arguments
at System.Net.Sockets.Socket.Bind (System.Net.EndPoint local_end) [0x00065] in /private/tmp/source/bockbuild-xamarin/profiles/mono-mac-xamarin-no-pcl/build-root/mono-3.2.0/mcs/class/System/System.Net.Sockets/Socket.cs:1115
at RFID.MainClass.Main (System.String[] args) [0x0002b] in /Users/jab/Projects/RFID/RFID/Program.cs:17
[ERROR] FATAL UNHANDLED EXCEPTION: System.Net.Sockets.SocketException: Invalid arguments
at System.Net.Sockets.Socket.Bind (System.Net.EndPoint local_end) [0x00065] in /private/tmp/source/bockbuild-xamarin/profiles/mono-mac-xamarin-no-pcl/build-root/mono-3.2.0/mcs/class/System/System.Net.Sockets/Socket.cs:1115
at RFID.MainClass.Main (System.String[] args) [0x0002b] in /Users/jab/Projects/RFID/RFID/Program.cs:17
.........
Теперь я знаю, что это очень примитивный вопрос, но мне нужно указать в правильном направлении :)
TIA.
Вы смешиваете как клиент, так и сервер. Bind используется на стороне сервера, а Connect используется на стороне клиента. –
. Я предлагаю вам использовать msdn [Socket Examples] (http://msdn.microsoft.com/en-us/library/w89fhyex.aspx). Сначала изучите синхронный, затем перейдите к асинхронному. –
Thx all ... Я попробую :) – user1086115