2011-11-23 61 views
1

在我的C++應用程序中,我使用網絡連接(TCP)。 當我確定一個網絡連接錯誤我試圖連接到另一個接口。 在重新連接connect函數已經通過沒有錯誤,但在發送函數,它返回一個SOCKET_ERROR和WSGetLastError返回10054.你知道這個錯誤是什麼意思,我該怎麼做才能解決它?C++發送返回SOCKET_ERROR

10X

回答

0

成功connect()後,10054(通過peer重置連接)意味着服務器接受傳入連接,但在此之後它會關閉接收的套接字而不等待傳入信息。解決此問題的唯一方法是檢查服務器應用程序邏輯。

2

10054意味着connection reset by peer - 遠程端點回答與RST包告訴你的是,連接未打開。重新連接connect(),而不是試圖簡單地更改本地端上的接口。

+0

這就是我所做的。我重新連接連接功能,該功能已通過,但在senf功能後,我得到了以上的錯誤 – gln

+0

遠程對端有套接字打開了嗎?你正在嘗試connect()到監聽套接字還是試圖連接到遠程peer上的「connected」套接字? – sarnold