我想从批处理文件或cmd提示符向windows内核日志添加一个自定义行。
在linux中,我会通过写入/dev/kmsg
文件来实现这一点。写入该文件的任何内容都将通过dmesg
或/var/log/messages
可见。
例如echo Hello world >/dev/kmsg
我想要一些非常相似的窗户边。
如果有像log_to_kernel.exe "my message"
这样的解决方案,而不是重定向到设备文件,我也可以。我认为,在windows中并没有设备"文件"的概念。
要求的原因:
我正在尝试调试驱动程序&为此,我正在运行一些测试程序,该程序在内部调用windows中的驱动程序
如果驱动程序失败,我将能够在通过1394连接的内核windbg中看到调试消息。内核调试器将遇到断点/assert&我将无法在我的目标系统上检查迭代次数,直到我从windbg继续
因此,我需要记录时间&内核日志本身中的测试迭代次数,我计划通过运行自动测试的批处理文件来完成
因此,我需要一些带有C代码的工具或伪echo驱动程序,它会将我的自定义消息记录在内核日志中。
在一行中,我想从用户空间应用程序向内核日志写入一条自定义消息。
如果您正在编写驱动程序,则应该使用DbgPrintEx
函数来写入日志条目
http://msdn.microsoft.com/en-us/library/windows/hardware/ff543634(v=vs.85).aspx
然后调试器应该能够显示它
如果您的应用程序是用户模式,OutputDebugString
是最简单的
http://msdn.microsoft.com/en-us/library/windows/desktop/aa363362(v=vs.85).aspx
您还可以阅读有关事件跟踪,
http://msdn.microsoft.com/en-us/library/windows/desktop/bb968803(v=vs.85).aspx