所以我所有的新綁定到這個「插座」的編程和似乎有東西,我從根本上誤解了......無法連接的插座
爲我用寫很差服務器的文檔,但表示它使用「流式套接字連接」,即「基於事件」...服務器位於本地網絡上。
這裏是我的第一天真的程序流程(沒有異步或任何東西!):
.........
1)首先,我需要一個Socket ......沒問題..我拿到:)
Socket s = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp);
2)然後,我用它連接...也沒問題:)
s.Connect("10.10.10.36", 6009);
3)現在,我有m個Y接我有由服務器提供的新的本地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。
你在混淆客戶端和服務器。綁定用於服務器端,連接用於客戶端 –
我建議你使用msdn [Socket Examples](http://msdn.microsoft.com/en-us/library/w89fhyex.aspx)。首先學習同步然後跳轉到異步。 –
Thx all ...我會試試:) – user1086115