########网络传输疑难杂症,非高手勿进!#########
有个问题别扭我好长时间了,请诸位仁兄指点!
我用Socket做了一个网络通讯系统,其中有一项功能是网络中的文件传输。对,就是这里有了问题,我的文件可以在Client和Server之间正常传输,但是如果遇到稍微大些的文件就不成了,到不是传输失败,而是也能传输只不过~~~传输的有点夸张,文件大小不能超过20K如果超过了,则传输过来的文件肯定不全(也就十几K或几K不定)。
我知道的网络最大文件传输块为8K上限,所以我特地留意此限制,定义的每次传输1024B不过份吧,可是就是传输不全大于20K的文件。
不才,实在不知该如何是好了,特来此求教。
对了,还有一个小问题:(可能会对上一个问题提供一点分析线索)
我在使用Connect()连接服务器时,总是给我返回一个错误,这个错误却不影响我正常与服务器连接。
错误码为:10035 -- 无法立即完成一个非阻挡性套接字操作。
我于是用netstat /a 来查看,事实上Client与Server已经正常连接了,但是为什么要返回这个错误值呢?
本段片段代码如下:
//连接远程服务器
BOOL bError = m_ClientSocket.Connect(m_strRemoteIP,55555);
if (!bError)
{
DWORD dwErrorCode = GetLastError();
AfxMessageBox("Socket Connect Error!");
m_ClientSocket.Close();
return;
}
以上两个问题,哪位仁兄若能为我解惑,小弟感激不尽,自当高分相赠!