我用delphi写了一个门禁系统,主要的功能是
    能够对 门禁机的系统参数进行设定和读取
    可以下载门禁规则到门禁机中
    可以收集门禁机内的数据
    分析数据形成报表
    数据库是access 用bde联接
和门禁机的联接方式是串口,参数为115200,n,8,1
门禁机里面的程序用的是c, 也是我写的
和门禁机通讯的部分我是用vc 写了一个控件封装了一下,由delphi来调用程序已经完成,不过现在遇到了一个问题,即下载规则和收集数据的速度很慢,慢得难以接受,差不多每秒5笔数据,每笔数据长度为20个字节左右。
去年我也写进一个考勤系统,用的是vc,通讯的部分也是用的我写的一个控件,串口的参数是9600,n,8,1,数据库也是access, 用dao 联接,速度快多了,差不多每秒50笔,根本不在一个数量级上。请教各位大侠,不知是否因为用了delphi (dephi 高手别扔砖 :) )?
我个人认为可能性不大,可能是因为其它的原因,欢迎高手指点一二,不胜感激!!!

解决方案 »

  1.   

    自己先顶一下我自己认为可能是因为bde的原因
      

  2.   

    我想问题不是在于Delphi~
      

  3.   

    BDE+Access 这是什么组合?(这里可能有影响)还有就是通讯部分不能用Delphi实现吗?(这里可能有影响)---------
    在程序开始时我就创建了所有的窗体,这样的话程序占用的内存就比较大,不知和这个有没有关系?
    ---------------和这个没有关系,这样内存用的多,程序反而会快的
      

  4.   

    是不是应该用ado+access
    通讯部份用vc实现为什么可能有影响,用vc处理通讯据说比较好呢
      

  5.   

    我总觉得用bde不是很爽,安装制做起来不是很方便,速度感觉也不快,不知大家有没有同感
      

  6.   

    我个人认为bde本来就很慢ado肯定要快的多,应为连接原理就不太一样
    ado直接连,而bde需要通过bde桥
      

  7.   

    BDE+Paradox 速度要比 ADO+Access快具以前人说 BDE 也要比 ODBC 快... 但毕竟BDE好多年没有发展了 用它来操作最新的Access也许.... 一家之言 hehe^^--------------
    用vc处理通讯据说比较好呢
    ----------Delphi也一样的好
    你用VC把通讯的功能封装成控件..光是数据从控件转到Delphi程序里就花不少手续如果用Delphi直接操作串口效率一定会高不少这方便Delphi有许多原生控件可以用,如果闲大,可以自己用Delphi封装自己的处理方法..
      

  8.   

    我用vc写了一个数据接收的测试程序,结果一样慢,看来不是delphi的问题。
    而且,用delphi在数据库之间进行操作时,速度很快的。
    由此可见,问题可能在控件上或者门禁机硬件的程序上
      

  9.   

    我用过bde+access,比起ado+access慢多了。所以建议使用ADO