討論串[問題] winsock網路程式
共 5 篇文章
首頁
上一頁
1
下一頁
尾頁

推噓0(0推 0噓 0→)留言0則,0人參與, 最新作者ankasc (初夏。)時間18年前 (2006/10/31 22:29), 編輯資訊
0
0
0
內容預覽:
引述《jinming.bbs@bbs.wretch.cc (人生=無盡的任務)》之銘言:. 原po程式寫法的問題就在於上面所述,. 因為你認為你傳給recv的buffer size(指sizeof(pak))是固定的,. 所以底層應該也pass給你那個長度,否則就會傳SOCKET_ERROR,.
(還有515個字)

推噓0(0推 0噓 0→)留言0則,0人參與, 最新作者jinming.時間18年前 (2006/10/31 02:01), 編輯資訊
0
0
0
內容預覽:
recv() 會回傳收到資訊的大小值,如有錯誤,會回傳負數值. 我以前都是寫. char buffer[32767]; // 大小自訂. len=recv(socket, buffer, sizeof(buffer), 0 ). if (len>0). {. //讀取封包內容,注意長度為 len.
(還有1356個字)

推噓0(0推 0噓 0→)留言0則,0人參與, 最新作者MLP2007 (NEW)時間18年前 (2006/10/30 22:36), 編輯資訊
0
0
0
內容預覽:
引述《Devil.bbs@bbs.csie.ncku.edu.tw (璉璉)》之銘言:. 我的想法:. 把socket設為block mode. 若Data還沒收全 則程式會block在recv中. 如果recv回傳為SOCKET_ERROR代表有錯誤. 否則即代表buffer已經填好資料可以讀
(還有473個字)

推噓0(0推 0噓 0→)留言0則,0人參與, 最新作者Devil.時間18年前 (2006/10/30 02:01), 編輯資訊
0
0
2
內容預覽:
引述《MLP2007.bbs@ptt.cc (NEW)》之銘言:. > 發現recv接收到的packet內容常常是錯誤的. > 也就是和發送端丟出的內容不一致. > 導致程式錯誤. > 後來想說在send之前用Sleep來作delay. > 情況改善很多. > 而且delay的時間越長 收到錯誤
(還有434個字)

推噓0(0推 0噓 0→)留言0則,0人參與, 最新作者MLP2007 (NEW)時間18年前 (2006/10/29 16:22), 編輯資訊
0
0
0
內容預覽:
最近用winsock模擬P2P檔案傳輸的功能. socket用block模式. 發送端開thread. 作fread 然後send. 接收端也開thread. 作recv 然後fwrite. 發現recv接收到的packet內容常常是錯誤的. 也就是和發送端丟出的內容不一致. 導致程式錯誤. 後來想
(還有127個字)
首頁
上一頁
1
下一頁
尾頁