当前位置:  技术问答>linux和unix

请问:为什么自己编的程序不能传输文件成功

    来源: 互联网  发布时间:2016-12-12

    本文导语:  我的机器是XP,上面装IIS,并打开了FTP服务,我的虚拟机是CentOS 5.3的, 我在虚拟机上写了个程序,是模拟FTP的,请看:     skc=socket(AF_INET,SOCK_STREAM,0);      //设置FTP服务器     struct sockaddr_in adds;     struct ...

我的机器是XP,上面装IIS,并打开了FTP服务,我的虚拟机是CentOS 5.3的,
我在虚拟机上写了个程序,是模拟FTP的,请看:

    skc=socket(AF_INET,SOCK_STREAM,0); 
    //设置FTP服务器
    struct sockaddr_in adds;
    struct in_addr inp;
    bzero(&adds,sizeof(struct sockaddr_in));
    inet_aton("192.168.1.6",&inp);  //服务器IP地址
    adds.sin_family=AF_INET;
    adds.sin_addr=inp;
    adds.sin_port=htons(21);       //FTP端口
    //connect to server
    connect(skc,(struct sockaddr*)&adds,sizeof(struct sockaddr));//是成功的

    //发送用户名
    send(skc,user,strlen(user),0);//这里的chae user[]="USER usernamern";
    //发送口令
    send(skc,passwd,strlen(passwd),0);//char passwd[]="PASS passwdn";
    //发送客户端端口号
    send(skc,cport,strlen(cport),0);//char cport[]="PORT 6235n",端口号随便取的
    //设置ASCII模式
    send(skc,typestr,strlen(typestr),0);//char typestr[]="TYPE An";
    //从服务器上获得文件10.c 
    send(skc,cmds,strlen(cmds),0);//char cmds[]="RETR 10.cn";
    //退出
    send(skc,qexit,strlen(qexit),0);//char qexit[]="QUITn";
并且每次发送完,我还用recv(skc,bufrecv,100,0)去取返回信息,每次都是成功的,
没有看到错误提示,可是就是没有取得文件,请问错在哪了?怎么改?

|
这个只是控制连接,用来传输指令
你还有创建数据连接,用来传输数据

|
这个只是控制连接,用来传输指令
你还有创建数据连接,用来传输数据


|
这个只是控制连接,用来传输指令
你还有创建数据连接,用来传输数据

|
晕,队伍好整齐

你还要创建数据连接,用来传输数据
在网是搜一下ftp客户端

    
 
 

您可能感兴趣的文章:

  • 高手啊,请问如何将BufferedImage转换为可以用SOCKET传输的数据
  • 请问 linux与windows两个平台下如何实现高速数据传输?
  • 请问高手,gif/jpeg文件的格式是什么样的,我想用他们来传输数据
  • 请问,如何用程序判断一个用ftp传输的文件已经完成?
  • 请问在Unix下开发ftp传输模块,有没有什么系统函数可以调用。
  • 两台不同城市的服务器之间要进行数据传输,请问具体的该怎么实现(红帽子)
  • =====请问网络编程中怎样传输一个类?=====
  • 请问玩过SOLARIS的高手门,在不正常关机后,就不能启动到windows公用桌面了,只能在命令提示模式下了,请问怎么解决这个问题啊?急~!~!
  • 请问我的linux在启动时突然说不能启动xwindows了,请教原因?
  • 请问那些linux信号是不能捕捉的?
  • 请问javaBean能不能进行非本机的socket连接
  • 请问SCIS硬盘能不能GHOST?
  • 请问怎样编程获得本机的MAC地址?还有能不能设置本机MAC地址?
  • 请问solaris不能telnet远程登陆???,该怎么办???
  • 请问网卡为什么不能激活
  • 请问为何fopen()函数不能正确打开文件。
  • 请问能不能在有windows的机器上安装linux
  • 请问linux系统能不能限制用户的cpu使用上限
  • 请问各位老师fedora 8下不能出声音,怎么解决?
  • 请问在 redhat 8 kde 下面写 shell 文件怎么不能双击运行?
  • 我的系统硬盘有一个block坏了,系统不能正常启动,请问如何能启动设备?
  • 不知为何?使用aclocal不能生成aclocal.m4文件?请问是什么原因?
  • 请问realplayer 怎么不能使?
  • 请问,为什么我的普通用户都不能进行登陆了?
  • 请问不能su到某一用户的问题。
  • 请问为什么我的sourceinsight 不能看.cc的文件?
  • 请问:linux2.4能不能升级到2.6呀
  •  
    本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
    本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • 请问:我知道路由器的telnet密码,但忘记了enable 密码,请问如何是好?
  • 请问那里有SYBASE的jbdb 2.0下载;jspsmartupload可以直接将文件上传到数据库,请问如何使用
  • 请问最新的reahat9.0是基于什么核心的?2.4?2.6?请问那里能下载?
  • 请问:请问哪里有关于linux基本操作命令讲解的资料下载,最好是幻灯片格式的.
  • 请问,我试图用#admintool&图形工具命令来安装sun workshop5.0,为什么进入的却是用户管理界面?请问具体该如何在solaris下安装应用软件
  • 请问在Redhat 9里,我从登录就是图形介面,请问如何在图形介面内进入命令行方式呢,谢谢
  • 请问:我在redhat下装了bochs-2.2.1-1.rpm,.装了后,想设置一下,但找不到bochsrc.fda.bxrc,请问这个文件在哪个曰录下啊。
  • 请问:在配置Qt时,很多文档都说在.profile,.login里加东西,但是我好像没有发现有这两个文件上,请问这些文件在哪个目录下啊
  • 请问:在GCC里的C程序里的变量的声明是不是只能在前面,而且相同类型的变量的声明只能放在一起?如果不是,请问怎么样可以解决这个问题.
  • 请问各位大虾,小弟今天开始学jsp了,这学期我们有java课,所以已经下载了jdk(好象是1.2),请问我的98环境怎么配置jsp环境呀?我的jdk可以运行.java程序,别的我就不知道了....谢谢!
  • 主机是WIN2000,我用的是LUNIX,请问是否可以共享上网? 如果可以请问如何设置? 500分答谢,龟儿食言!
  • 请问linux下GUI开发的问题!
  • 请问出现fstab文件丢失该怎么修复呀?
  • 请问这个方法如何调用?
  • 请问一个奇怪的问题!
  • 请问在网页中打开的新窗口,如何让其居中。
  • 请问我该学什么了
  • 请问安装zhcon,cxterm问题
  • 非常急! 请问daemontools 在red hat 9下的安装问题? 在线等待
  • 请问如何在一台单机上装VMware的网络访问问题?


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3