这个问题不能解答,请到:http://www.csdn.net/expert/TopicView.asp?id=81638

http://www.csdn.net/expert/TopicView.asp?id=71917
或http://www.csdn.net/expert/TopicView.asp?id=71908

解决方案 »

  1.   

    最近自己定义了一个文件传输协议,本想偷懒用mscomm32控件,居然碰到此鸟问题,真是?!!
      

  2.   

    大家如果有好的串口文件传输方法、控件或函数,都可以推荐,最好是sendfile(filename)之类的东西,没有的话,我只能自己动手了。在此先谢谢各位!
    其实很多业余编程网友都想得到这样的简单方法,可是问来问去,都是推荐的直接的串口控件或方法,大多没有提供可靠的包含文件协议的sendfile(filename)函数!
    望大家真正解决此问题
      

  3.   

    如果你要直接用串口传送文件,而又不想进行底层开发,那可以用现成的技术。
    在Windows中,串口、并口也被认为是拨号适配器,也就是一块NIC,即网卡。所以,你只要将相关的协议,比如tcip/ip, netbeui之类的绑定到拨号适配器,然后再将高层应用协议比如Microsoft网络等绑定到这些协议就能直接用资源管理器、ftp、Web浏览等方式传送文件。这就像网卡一样用了。
    如果你觉得全用现成的软件不好,那么可以使用比如delphi的ftp或http相关的服务、客户,将这些功能实现到自己的软件中。这样不但快捷,而且软件的通用性还强。
      

  4.   

    其实我自己也写了一个底层的sendfile,自己定的协议,用的是TCOMM32,但总觉得协议没有ymodem、zmodem、TCP/IP等完善,但那些协议又比较冗余。
      

  5.   

    请用过delphi+mscomm32的首先将标题问题解答!
      

  6.   

    我用它做过单片机通讯,下面是接收部分,好久没用了不知道好不好使
    var
    reccomdata:array[0..40] of byte;procedure TMainForm.MSComm1Comm(Sender: TObject);
    var
       v: Variant;
       iHBound: integer;
       i: integer;begin
    case MSComm1.CommEvent of
     comEvReceive:
     begin
                  v:=MsComm1.Input;
                   iHBound:=VarArrayHighBound(v,1);
                   for i:=0 to iHBound do  reccomdata[i]:= v[i];
                  // MSComm1.RThreshold:=8 ;
               end;
    end;
      

  7.   

    按道理是可以的,不知道是我的delphi有问题,还是别的问题,发送没问题,
    但Oncomm事件根本没有触发,可是用vb+mscomm32却是可以的,用delphi+Tcomm32
    也没问题,何故?
      

  8.   

    老万,发至[email protected],谢谢!