freepascal - 在lazarus中使用TEventLog

标签 freepascal lazarus

我知道 EventLog 能够将异常消息写入磁盘上的日志中。我已设法设置该组件,但是当我将组件设置为事件状态并执行如下简单测试时:

eventlog.Debug('Application has started!');

我收到以下异常:

事件日志处于事件状态时不允许进行操作。

我做错了什么?即使我将 RaiseExceptionOnError 设置为 true,我也无法在日志中找到异常。

请提供一个简单的示例用法就太好了!

最佳答案

最小工作示例:带有两个按钮和一个事件日志的表单。

代码(更改$用户名):

procedure TForm1.Button1Click(Sender: TObject);
begin
  EventLog1.LogType := ltFile;
  EventLog1.FileName := 'C:\users\$USERNAME\Desktop\Test.log';
  EventLog1.Active := True;
end;

procedure TForm1.Button2Click(Sender: TObject);
begin
  EventLog1.Debug('This is a test.');
end;   

首先单击“Button1”,然后单击“Button2”。玩得开心。

关于freepascal - 在lazarus中使用TEventLog,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19001357/

相关文章:

unicode - 在 Free Pascal 3 中什么时候可以安全地将 UnicodeString 转换为字符串?

for-loop - Pascal 中的 For 循环

while-loop - 使用 Free Pascal\Lazarus 为特定值解析大型二进制文件

delphi - 使用 Delphi 打开 URL

delphi - 如何使用 Free Pascal 调用物理连接的硬盘列表,或者如果失败,则使用 Delphi?

containers - FreePascal 中 C++ std::vector、std::deque 和 std::map 的等效项

user-interface - 仅使用FPC的GUI

xml - 使用 XML 保存和加载 Treeview

delphi - 如何使用 Lazarus/Free Pascal 获取 Windows 用户权限信息

delphi - GUI 应用程序中的空主窗体从 Delphi 转换为 Lazarus