python - 在 Python 3 中,如何判断 Windows 是否被锁定?

标签 python windows python-3.x

如何检查 Windows 操作系统工作站是否被锁定? (例如 Win+L 或在 Ctrl+Alt+Del 之后选择锁定选项。)

我想要像 ctypes.windll.user32.isWorkstationLocked() 这样的东西。

最佳答案

这段代码今天在四台不同的 Windows 7 和 10 机器上对我有效,尝试类似的东西:

import ctypes
import time
user32 = ctypes.windll.User32
time.sleep(5)
#
#print(user32.GetForegroundWindow())
#
if (user32.GetForegroundWindow() % 10 == 0): print('Locked')
# 10553666 - return code for unlocked workstation1
# 0 - return code for locked workstation1
#
# 132782 - return code for unlocked workstation2
# 67370 -  return code for locked workstation2
#
# 3216806 - return code for unlocked workstation3
# 1901390 - return code for locked workstation3
#
# 197944 - return code for unlocked workstation4
# 0 -  return code for locked workstation4
#
else: print('Unlocked')

编辑:另外,这个今天有效:

import subprocess
import time
time.sleep(5)
process_name='LogonUI.exe'
callall='TASKLIST'
outputall=subprocess.check_output(callall)
outputstringall=str(outputall)
if process_name in outputstringall:
    print("Locked.")
else: 
    print("Unlocked.")

关于python - 在 Python 3 中,如何判断 Windows 是否被锁定?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34514644/

相关文章:

python - 如何删除 Python 列表中不区分大小写的冗余?

windows - 在另一个窗口中运行 Windows 应用程序

python - 如何使用python运行cmd windows netsh命令?

python - PyQt - 窗口的位置

python-3.x - 如何使用 telethon 从我的 telegram 联系人中删除用户?

python - `Fatal Python error: PyThreadState_Get: no current thread` 是什么意思?

python - 如何更改 Odoo 10 中模型的默认搜索字段?

python ,被杀了?

c++ - 如何在 Visual Studio 2015 中更改默认的新项目打开 C++ 代码?

python-3.x - 如何在 python 的单独设置文件中配置颜色、格式等日志记录?