检查Windows屏幕是否已锁定

时间:2017-02-01 12:19:56

标签: python windows

有没有办法自动检查当前用户是否锁定了他的电脑? (通常由Win+L激活)。我看到的一种hacky方法是以某种方式捕获所有组合键,但问题是如何知道用户已经返回?

也许有一些可以通过python或windows终端访问的标志?

编辑:我尝试了这里的代码:Detect when computer is unlocked Windows

它会检测屏幕何时被锁定,但是当它被解锁时,它会继续无限期地写入“屏幕仍然被锁定”。那可能是什么问题呢?我有Python 3.4,64位Win7。

EDIT2:实际上result对我来说总是0,即使没有任何锁定,所以事实上它并没有检测到任何东西。

import ctypes

user32 = ctypes.windll.User32
OpenDesktop = user32.OpenDesktopA
SwitchDesktop = user32.SwitchDesktop
DESKTOP_SWITCHDESKTOP = 0x0100

hDesktop = OpenDesktop ("default", 0, False, DESKTOP_SWITCHDESKTOP)
result = SwitchDesktop (hDesktop)

print(result)

1 个答案:

答案 0 :(得分:-2)

打开comp mgmt,打开远程控制台,输入计算机名称 连接到远程控制台后检查安全日志

注意:您可以将基本计算机设置为接收您选择的日志文件,使您能够自动查看用户登录/注销/锁定/解锁的时间