如何将Windows事件日志刷新到磁盘?

时间:2017-01-31 14:54:12

标签: c++ windows events logging

我有一个Windows 7嵌入式设备,它经常像这样重启:本地应用程序将一个条目写入应用程序事件日志,几秒钟后它命令自定义电源循环供电。无法完成干净的Windows关闭。设备启动备份后,我检查Windows事件日志并注意缺少最后一个条目。

有没有办法将Windows事件日志刷新到磁盘,以便我不会错过最后一个条目?该应用程序是用C ++编写的。

谢谢, 阿德南

1 个答案:

答案 0 :(得分:1)

您遇到硬件问题,因此最佳解决方案是在硬件中解决此问题。但继续前进。

使用BIOS确保计算机始终在重启后启动

您有一个硬件工具来执行重启。您是否可以重新配置它,以便在计算机运行时进行硬启动,而不是:

  • 通知硬件电源循环工具
  • 执行有序关机,然后
  • 使用硬件电源开关再次打开电脑电源?

通常有一个BIOS设置,允许您指定电源循环后的操作,例如

  • 关闭电脑,
  • 打开它,
  • 只有在断电时才打开它。

如果您可以这样做,那么您仍然可以按顺序关闭并等待它再次打开电源。

软件解决方案:关闭磁盘写入缓存

目前尚不清楚是什么导致了您的问题,但以下内容似乎相关。

最有可能的原因是磁盘写入缓存是由磁盘控制器硬件或操作系统造成的。

您可以通过磁盘管理工具关闭此功能:

软件解决方案:以编程方式刷新磁盘

或者,您可以以编程方式刷新磁盘缓存。这个工具可能有所帮助:

或者确实使用WMI和PowerShell: