以下Python代码应该打印出自上次用户活动(鼠标移动,按下键盘键)以来已经过了多少时间
from ctypes import Structure, windll, c_uint, sizeof, byref
import time
class LASTINPUTINFO(Structure):
_fields_ = [
('cbSize', c_uint),
('dwTime', c_uint),
]
def get_idle_duration():
lastInputInfo = LASTINPUTINFO()
lastInputInfo.cbSize = sizeof(lastInputInfo)
windll.user32.GetLastInputInfo(byref(lastInputInfo))
millis = windll.kernel32.GetTickCount() - lastInputInfo.dwTime
return millis / 1000.0
for i in range(10):
print get_idle_duration()
time.sleep(1)
问题:但是,在执行脚本期间没有用户输入时,运行此脚本会打印出以下内容:
0.109
0.047
0.203
0.124
0.093
0.031
0.187
0.125
0.062
0.0
为什么打印出的空闲时间不会继续增加,而是看起来像是在不断重置?