Заблокировать рабочую станцию Windows с помощью Python
Есть ли способ заблокировать ПК с Python script в Windows?
Я не хочу реализовывать какую-то блокировку самостоятельно - я бы хотел использовать тот же экран блокировки, который также использовался, когда пользователь нажимает WIN + L или блокирует машину через меню "Пуск".
Ответы
Ответ 1
Это можно сделать с помощью функции LockWorkStation()
из user32.dll:
Эта функция имеет тот же результат, что и нажатие Ctrl + Alt + Del и нажатие кнопки "Заблокировать рабочую станцию".
В Python его можно вызвать с использованием ctypes/windll FFI из Python stdlib:
import ctypes
ctypes.windll.user32.LockWorkStation()
Ответ 2
Хорошее решение, которое заставляет нас избегать использования библиотек /DLL файлов, - это использование команды prompet/power shell.
попробуйте выполнить эту команду в вашем cmd rundll32.exe user32.dll, LockWorkStation
....ПК заблокирован !!
поэтому мы можем использовать подпроцесс для запуска этой команды следующим образом:
import subprocess
cmd='rundll32.exe user32.dll, LockWorkStation'
subprocess.call(cmd)