单个串口的编程一般是两个线程一收一发. 
但如果你有这么多的串口, 依然用这样的结构, 效率就很低了. 可以试试依然用一收一发. 
线程进行循检...
用异步方式读取数据. 对你要做的东西很感兴趣. 
你的多串口卡有48个口吗? 有资料吗? 可否给我一份? 谢谢 [email protected]

解决方案 »

  1.   

    是一种扩展串口的外设.可以用读取串口方式,也可以采用socket方式读取数据.现在我的问题是:如何把得到的数据拼装在一起.例如:在串口类中生成一存储类,那么在48个串口对象就会指向48个存储对象.这样不能起到把数据放在一个数据池中进行比较与管理.这是我该如何做呢?
      

  2.   

    定义一个类似的msg类,里面放一个字段为串口的ID即可区分哪个串口的数据... 
    能问一下您开发的是什么产品吗?你的外设是成品吗? 哪买的? 
      

  3.   

    你的48串口是不是个虚拟48串口,也是基于TCP/IP,然后厂家提供API那种?
      

  4.   

    smartghost:
    你说的对.
    klhu():
    能否在说清楚一些.
      

  5.   

    如果不同时接收,可以用查询轮流接收,如果同时接收,用智能多串口卡
    http://roaringwind.best.163.com
      

  6.   

    Result := WriteFile(FHandle, pBuf^, length(Buf), nSent, nil);
    返回错误:错误原因是参数错误(win98下无此错误),好像必须用重叠操作!