|
发表于 2010-9-19 15:44:05
|
显示全部楼层
没那么困难啦 ~
把你想 log 的变量都丢到下面这个 Function 就可以了
因为值很多, 又在 for loop 中, 用 watch window 或 debug window 中看很累
所以我习惯整批 log 下来, 结束程式后开启 log file 整批比对
例如我认为画条码的座标值可能有问题
Polygon([a,b,c,d]);
我可以在这行之后加入下面这段以监看 a,b,c,d 的内容值
_SaveLog('a.x='+IntToStr(a.x)+',''a.y='+IntToStr(a.y)+','+
b.x='+IntToStr(a.x)+',''b.y='+IntToStr(b.y)+','+
c.x='+IntToStr(a.x)+',''c.y='+IntToStr(c.y)+','+
d.x='+IntToStr(a.x)+',''d.y='+IntToStr(d.y));
procedure _SaveLog(log: string);
var fn: string;
now_str: string;
f:textfile;
begin
fn:='c:\\'+FormatDateTime('yyyymmdd',Now)+'.log';
if not FileExists(fn) then
begin
FileClose(FileCreate(fn));
end;
now_str:=FormatDateTime('yyyy-mm-dd hh:nn:ss ',Now);
AssignFile(f, fn);
Append(f);
WriteLn(f, now_str+log);
CloseFile(f);
end; |
|