文件可能很大(如一张VCD),而且服务器没有服务程序!全靠客户端来完成这项工作的了!最好有源代码!

解决方案 »

  1.   

    在serversocket设置端口及监听服务
    clientsocketonconnect();
    begin
    sentstream();//sendbuf,sendtext,sendstreamthendrop等
    end;
    具体参数参考delphi帮助吧
      

  2.   

    使用TNMFTP控件,具体的文档帮助文件里都有,可以轻松实现ftp的功能
      

  3.   

    TNMFTP是怎么用的呢?说一点详细的吧!
      

  4.   

    服务器没有服务程序是不可能完成此任务的,
    最多是在服务器使用window默认的文件共享服务
      

  5.   

    有没有办法呀?
    我现在有这几个方案,需要大家再讨论一下:一、在服务器上创建一个共享目录,直接用copyfile('a.bmp','\\server\share\a.bmp')来完成,但这样会出现一个问题是,复制的时候会报如下的错“无复制a.bmp,无法更新密码,提供给新密码的值包含密码中不允许的值!”。但我只要把服务器server改为本机的地址的话,就不会出错,我想可能是本机不需要认证吧!
      不知道哪位高手知道如果解决这个问题,我的代码如下:
    Var
      F:TShFileOpStruct;
    begin
      F.wnd:=Application.Handle;
      F.wFunc:=FO_COPY; {操作方式}
      F.pFrom:=PChar('a.bmp'+#0#0);
      F.pTo:=PChar('\\server\share\a.bmp'+#0#0);
      F.fFlags:=FOF_ALLOWUNDO OR FOF_RENAMEONCOLLISION;
      if  ShFileOperation(F)=0 then
        showmessage('copy success!');
    二、采用FTP方式对文件进行传输,但是这样的话,需要在服务器配置FTP服务器!
    三、采用WINDOWS SOCKET文件传输方式,这种方式的话需要用编写一个服务器端程序,对客户端提出的连接进行响应。
    四、采用ASP/PHP的文件传输方式,在DELPHI的程序中内置ASP/php程序,采用WEB方式对文件进行传输!如果哪位高手有兴趣的话,可以分别将这些方法实现过程写出来!我现在采用最后一种方式,等写完了以后就可以贴出来了!