我试图从WMI Win32_NTLogEvent类读取数据,但我只想读取TimeWritten在日期范围内的实例。
我正在使用Python的WMI模块,它允许纯WMI查询(1)或参数化方法(2):
c.query("Select SourceName, Message from Win32_NTLogEvent where EventType =1, Logfile = \"Application\"")c.Win32_NTLogEvent(EventType =1, Logfile = "Application")问题是,我似乎都无法接受我的约会论点。我尝试了几种日期格式,包括相当晦涩的WMI风格,我唯一的成功是使用上面的第二种方法和=操作符,这并没有真正的帮助:
c.Win32_NTLogEvent(EventType =1, Logfile = "Application", TimeWritten = "20110421013749.000000-000")我知道我可以在Python代码中过滤结果集,但我相当肯定这可以在查询中完成。我想我只是漏掉了什么。有人有建议吗?
谢谢。
发布于 2012-03-16 00:41:55
你的WQL句子错了
替换此代码
c.query("Select SourceName, Message from Win32_NTLogEvent where EventType =1, Logfile = \"Application\"")由这一个
c.query("Select SourceName, Message from Win32_NTLogEvent where EventType =1 AND Logfile = \"Application\" AND TimeWritten<=\"20110421013749.000000-000\" ")注意:我不太了解python (但是我知道一些关于WMI的事情),所以也许您必须以另一种方式避开特殊的字符。
https://stackoverflow.com/questions/9729937
复制相似问题