准备工作VC6.0 添加w s2_32.lib 到工程,如下图操作: 1.首先添加w insock 库到工程 2.添加lib 库文件 3.添加w s2_32.lib 切记用空格隔开 4.点击OK 即可 源代码: FTP_Client: #pragma comment( lib, "w s2_32.lib" ) #include #include #include #include #include #include #define TRAN_SUCCESS 1 //传输成功 #define SOCK_WSA_ERR (-1) //启动w insock 库失败 #define SOCK_CRSOCK_ERR (-2) //创建套接字失败 #define SOCK_BIND_ERR (-3) //绑定端口失败 #define SOCK_LISTEN_ERR (-4) //监听失败 #define SOCK_ACCEPT_ERR (-5) //等待连接失败 #define SOCK_SEND_ERR (-6) //发送数据失败 #define SOCK_CLOSE_ERR (-7) //关闭 SOCKET 失败 #define SOCK_RECVE_ERR (-8) //接受数据失败 #define SOCK_CONNECT_ERR (-10) #define FILE_ERR (-9) //文件错误 #define Other_ERR (0) //其他不明原因 #define SVR_PORT 6000 //服务器端口 #define SEND_BUFFER_SIZE 4096 //每次发送大小 #define RECV_BUFFER_SIZE 4096 //每次发送大小 struct Fileinfo { char fileName[50]; //文件名 int fileBlock; //文件分块大小 int BlockNum; //文件块数量 unsigned long fileSize; //文件总大小 } ; int RecevData( SOCKET s ); int Client(char* fileName); void PrintReturn(int nRet); int Client( char* strIP) //int Client() //int Client(char* fileName) { int nResult = 0; //1、启动 Winsock:对 Winsock DLL 进行初始化,协商 Winsock 的版本支持并分配必要的资源。(服务器端和客户端) WORD wVersion = MAKEWORD( 2, 0 );//wversion 为 winsock 库的版本,高位字节为副版本,地位字节为主版本 WSADATA wsData; nResult = WSAStartup( wVersion, &wsData );//加载 winsock 库,wsData 参数是指向LPWSADATA 结构的指针 if( nResult !=0 ) { return SOCK_WSA_ERR; } if( LOBYTE( wsData.wVersion ) != 2 || HIBYTE( wsData.wVersion ) != 0 ) { WSACleanup(); // return; exit(0); } //2、创建套接字:(服务器端和客户端) SOCKET s = socket( AF_INE...