2

我想获得关闭和启动 Windows 的确切时间。在 c++ 中,我只需使用GetTickCount64which 检索自系统启动以来经过的毫秒数(从而通过差异获得时间),但我不知道是否有 python 的等效函数,如果可能的话,我'想避免编写 C++ 模块。

对于上次关闭时间,我不知道......也许在 Windows 的某个地方有一些日志?我尝试使用win32evtlog库读取事件日志,但它只给了我一个事件并且是关于 dns..

编辑:好的,也许我更进一步:我使用了win32evtlog,特别是多次调用ReadEvent log,它给了我所有的日志,直到它返回null。现在,我需要一种方法来了解启动/关闭的 id 是什么。

4

2 回答 2

1

您应该使用 pywin32 库,在那里您会找到 GetTickCount() 函数。

http://docs.activestate.com/activepython/2.5/pywin32/win32api__GetTickCount_meth.html

希望这可以帮助。

于 2013-04-17T15:12:06.403 回答
0

由于这是一个特定于 Windows 的问题,我们可以利用 WMI 甚至 PowerShell。要在 PowerShell 中解决您的问题,只需:

powershell -command "(gcim Win32_OperatingSystem).LastBootUpTime"
# Outputs: Tuesday, 9 October 2018 4:05:58 PM

要在 Python 中做到这一点,我们可以使用subprocess

from subprocess import call
call( ["powershell", "-command", "(gcim Win32_OperatingSystem).LastBootUpTime"] )
# Outputs: Tuesday, 9 October 2018 4:05:58 PM
于 2018-10-11T21:43:31.827 回答