vs2008 下 MFC 程序,利用 socket向FTP服务器上传文件的问题,详细如下
会有两个socket,唯一一个发送命令的sockCtrl,发送数据的sockData。sockData传输每个文件时创建,传完就关闭。现在,sockData偶尔会建立失败...
会有两个socket ,唯一一个发送命令的sockCtrl,发送数据的sockData。sockData传输每个文件时创建,传完就关闭。现在,sockData偶尔会建立失败错误代码是10049,之后所有的文件上传都是10049错误。我把程序关掉,再打开就可以正常使用。
展开
1个回答
展开全部
你的socketData是什么类型的变量还是指针,怎么获取的内存?是动态还是静态获取,怎么释放的,malloc动态会有内存碎片可能导致创建错误
更多追问追答
追问
部分代码:
SOCKET sockData=socket(AF_INET,SOCK_STREAM,0); //创建
...//地址
...// 端口号
int iRetData = connect(sockData,(SOCKADDR*)&cDlg->addrSrv,sizeof(SOCKADDR));//连接
是变量,是动态的,每次的sockData都是重新创建的,就是在connect的时候出错
追答
。。。
你这个名字起的。。
这个socketData不应该每次创建,应该是一个全局变量,因为他包含了很多初始化设定的信息,你把它定义在.h的类声明里,每次创建新的连接就直接调用,不要创建
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询