Как вызвать горячую клавишу Windows и L для Python?

Я пытаюсь запустить этот код в Python.

import pyautogui
pyautogui.hotkey('win', 'l')

Так что, когда я запускаю его, он вызывает переключение пользователя в Windows, но все, что он делает, это нажимает l, когда мне нужно нажать Win+l


person Craftx398    schedule 02.04.2017    source источник
comment
Я думаю, проблема в том, что Windows особенно обрабатывает эту комбинацию клавиш, см. компьютер">stackoverflow.com/questions/11696253/   -  person Felix    schedule 02.04.2017


Ответы (3)


Как сказано в моем комментарии, скорее всего, эта комбинация клавиш не работает, потому что Windows обрабатывает ее специально.

Если вы хотите просто заблокировать рабочую станцию, вы можете использовать это решение, которое использует ctypes для вызова Windows LockWorkstation-Function:

Блокировка рабочей станции Windows с помощью Python

Код Python:

import ctypes
ctypes.windll.user32.LockWorkStation()
person Felix    schedule 02.04.2017

У меня была эта проблема для Win + V, и вместо использования функции горячих клавиш я использовал:

pyautogui.keyDown('winleft')
pyautogui.press('v')
pyautogui.keyUp('winleft')
person Zanark    schedule 13.04.2019

import pyautogui
pyautogui.hotkey('winleft', 'l')

Это работает в моем ноутбуке.

person Akshay Chordia    schedule 30.05.2019
comment
Это было то, что я сначала пробовал, но это не работает (по крайней мере, для меня). Также попробовал решение Zanarks, никаких изменений при использовании winleft-l, у меня сработало только решение ctypes от Felix. - person Scott Rowley; 31.08.2020