程序运行一段时间后自动退出。寻求原因
我编写了一个IC卡地磅称重的软件,其中有一个单独的服务是在称的仪表中取数和检测是否有卡在刷。
我通过一个定时器来不断的对仪表传统送过来的数据进行分析。并显示在窗体上,
然后我又弄了一个定时器。每隔一秒钟检测一下有没有刷卡。如果有卡在刷,那就执行刷卡的操作。
上面的功能我都通过定时器来实现了。数据也很准确。但是程序在运行一段时间后就会自动退出。
后来我分析了一下内存。原来内存在不段的增长,当长到一定的程序时程序就会自动的退出了。
请问我应该怎么样改呢。才能让内存不再这样增长。
在定时器中定义的变量是这样的。帮我看一下为什么内存增长会那么快吧。谢谢啦。
代码:
procedure Tform_bangcheng.Timer2Timer(Sender: TObject);
var
i:integer;
DataByte:array[0..CACHE] of Byte;
nBytesRead:LongWORD ;
dwError:LongWORD ;
cs:TCOMSTAT;
gBufferLength: integer;
sCurrentContent : string;
iCurrentContent : integer;
begin
........
end;
procedure Tform_bangcheng.Timer4Timer(Sender: TObject);
var
byteCardType : pbyte;
intStatues : integer ;
begin
intStatues:=DC_AutoTestCard(byteCardType); //判断卡是否存在。=0:存在 否则不存在;
.....
END;