我用delphi写了一个门禁系统,主要的功能是
能够对 门禁机的系统参数进行设定和读取
可以下载门禁规则到门禁机中
可以收集门禁机内的数据
分析数据形成报表
数据库是access 用bde联接
和门禁机的联接方式是串口,参数为115200,n,8,1
门禁机里面的程序用的是c, 也是我写的
和门禁机通讯的部分我是用vc 写了一个控件封装了一下,由delphi来调用程序已经完成,不过现在遇到了一个问题,即下载规则和收集数据的速度很慢,慢得难以接受,差不多每秒5笔数据,每笔数据长度为20个字节左右。
去年我也写进一个考勤系统,用的是vc,通讯的部分也是用的我写的一个控件,串口的参数是9600,n,8,1,数据库也是access, 用dao 联接,速度快多了,差不多每秒50笔,根本不在一个数量级上。请教各位大侠,不知是否因为用了delphi (dephi 高手别扔砖 :) )?
我个人认为可能性不大,可能是因为其它的原因,欢迎高手指点一二,不胜感激!!!
能够对 门禁机的系统参数进行设定和读取
可以下载门禁规则到门禁机中
可以收集门禁机内的数据
分析数据形成报表
数据库是access 用bde联接
和门禁机的联接方式是串口,参数为115200,n,8,1
门禁机里面的程序用的是c, 也是我写的
和门禁机通讯的部分我是用vc 写了一个控件封装了一下,由delphi来调用程序已经完成,不过现在遇到了一个问题,即下载规则和收集数据的速度很慢,慢得难以接受,差不多每秒5笔数据,每笔数据长度为20个字节左右。
去年我也写进一个考勤系统,用的是vc,通讯的部分也是用的我写的一个控件,串口的参数是9600,n,8,1,数据库也是access, 用dao 联接,速度快多了,差不多每秒50笔,根本不在一个数量级上。请教各位大侠,不知是否因为用了delphi (dephi 高手别扔砖 :) )?
我个人认为可能性不大,可能是因为其它的原因,欢迎高手指点一二,不胜感激!!!
在程序开始时我就创建了所有的窗体,这样的话程序占用的内存就比较大,不知和这个有没有关系?
---------------和这个没有关系,这样内存用的多,程序反而会快的
通讯部份用vc实现为什么可能有影响,用vc处理通讯据说比较好呢
ado直接连,而bde需要通过bde桥
用vc处理通讯据说比较好呢
----------Delphi也一样的好
你用VC把通讯的功能封装成控件..光是数据从控件转到Delphi程序里就花不少手续如果用Delphi直接操作串口效率一定会高不少这方便Delphi有许多原生控件可以用,如果闲大,可以自己用Delphi封装自己的处理方法..
而且,用delphi在数据库之间进行操作时,速度很快的。
由此可见,问题可能在控件上或者门禁机硬件的程序上