当前位置:编程学习 > Delphi >>

Delphi输出日志的方法

1、使用OutputDebugString

procedure TForm1.BtnDebugClick(Sender: TObject);
begin
  //这里调用OutputDebugString发送调试信息到调试器。
  //在Delphi里面,用View - Debug Windows - Event Log 来查看。
   OutputDebugString(PChar(测试OutputDebugString));
end;

2、发送日志到操作系统日志记录。
这个基本上使用在Release版本中,记录一些重要的信息,帮助用户反馈信息给开发人员。

procedure TForm1.Button2Click(Sender: TObject);
var
  EvtSrcHand: THandle;
  EvtMsg: String;
  p:Pointer;
  i:integer;
  size:integer;
  q:^byte;
begin
  //注册事件源,随便起了个名字。这个名字就是下图事件列表的’来源’一列
  //然后判断是否成功。
  //注意后面要注销
  EvtSrcHand := RegisterEventSource(nil, 测试程序);
  if EvtSrcHand = 0 then
  begin
    ShowMessage(注册事件源失败!);
    Exit;
  end;

  //这里记录一个字符串
  //这个字符串显示在下面第二个图选中的位置。
  EvtMsg := 记录字符串;
  ReportEvent(EvtSrcHand,EVENTLOG_INFORMATION_TYPE,0, 0, nil, 1, 0, @EvtMsg, nil);
 
  //这里记录一块内存,size大小
  size:=32;
  //申请
  GetMem(p, size);
  q := p;

  //填充这块内存
  for i := 0 to size - 1 do
  begin
    q^ := i;
    inc(q);
  end;

  //这里记录内存的内容。大小为size, 首字节的指针p
  //同样也有说明信息msg
  EvtMsg := 记录某块内存;
  ReportEvent(EvtSrcHand,EVENTLOG_INFORMATION_TYPE , 0, 0, nil, 1, size, @EvtMsg, p);
  FreeMem(p);
  //注销事件源
  DeregisterEventSource(EvtSrcHand);
end;

程序运行后,可以通过控制面板 – 管理工具 – 事件查看器来查看

 

补充:软件开发 , Delphi ,
CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,