0
我想創建一個簡單的應用程序,它在兩臺遠程計算機之間交換消息。 「127.0.0.1」ip工作正常,等待客戶端確認並連接到客戶端,但如果我嘗試使用同一端口的本地「192.168.0.15」或全局IP,服務器立即連接到無需等待客戶。C++ winsock服務器端客戶端遠程連接
這裏是我的服務器代碼的一部分:
char ip[20] = "127.0.0.1"; int port = 19385;
SOCKET sockListen, sockConnect;
SOCKADDR_IN address;
sockConnect = socket (AF_INET, SOCK_STREAM, NULL);
address.sin_addr.s_addr = inet_addr (ip);
address.sin_family = AF_INET;
address.sin_port = htons (port);
sockListen = socket (AF_INET, SOCK_STREAM, NULL);
bind (sockListen, (SOCKADDR*)&address, AddressSize);
listen (sockListen, SOMAXCONN);
sockConnect = accept (sockListen, (SOCKADDR*)&address, &AddressSize);
...
請建議如何解決這個問題。 thx
你爲什麼不嘗試使用boost.Asio。你會爲自己節省很多頭痛。 – Caesar 2012-08-08 15:54:44
不應該'sockConnect = socket(AF_INET,SOCK_STREAM,NULL);'初始化'sockListen'而不是'sockClient'? – Jaywalker 2012-08-08 16:14:08
sockListen也在下面初始化。訂單沒關係 – user1585185 2012-08-08 16:23:19