Вопрос или проблема
Я использую Windows 7.
В настоящее время комбинация горячих клавиш Windows-L
переводит меня на пустой экран Windows с сообщением о том, чтобы я нажал Ctrl-Alt-Del
для разблокировки компьютера (что требует ввода пароля).
Я хочу изменить это поведение, чтобы вместо этого запускался мой экран блокировки, а затем, когда я передвигаю мышь, появляется просьба нажать Ctrl-Alt-Del
и ввести мой пароль.
Я не могу понять, как это изменить – есть идеи?
Похоже, что эта программа должна уметь делать то, что вам нужно для других комбинаций клавиш WIN, поскольку WIN-L и WIN-U, похоже, жестко прописаны в ОС (ваш вопрос служит отличным примером того, почему жесткое кодирование таких вещей обычно не приветствуется во многих сообществах разработчиков программного обеспечения):
Auto Hotkey (бесплатно и с открытым исходным кодом)
http://www.autohotkey.com/
Эта веб-страница специально упоминает комбинации горячих клавиш WIN-L и WIN-R:
Переопределение или отключение горячих клавиш
http://www.autohotkey.com/docs/misc/Override.htm
- “Вы можете отключить все встроенные горячие клавиши Windows, кроме WIN+L и WIN+U, сделав следующее изменение в реестре …”
Жаль, что это не может быть точным решением, которое вам нужно, но, возможно, это хотя бы несколько поможет. Если вы не против использовать другую комбинацию горячих клавиш WIN для выхода из системы, то, надеюсь, это решение будет тем, что вам нужно.
- Получите копию OSA.EXE и поместите ее в C:\Windows\System32.
- Создайте ярлык на рабочем столе, который указывает на C:\Windows\System32\OSA.EXE
- Отредактируйте свойства ярлыка и добавьте пробел, за которым следует -s в конце поля “Объект”. Другими словами, поле “Объект” должно выглядеть так: C:\Windows\System32\OSA.EXE -s
- Выберите поле “Клавиша ярлыка” и нажмите функциональную клавишу, которую вы хотите использовать для запуска экранной заставки (я использую F7)
- Сохраните изменения в свойствах ярлыка
- Если вы еще этого не сделали, перейдите к экранной заставке и установите флажок “При возобновлении отображать экран входа в систему”
Теперь, когда я нажимаю клавишу F7, запускается моя экранная заставка, и через несколько секунд компьютер блокируется, но продолжает отображать экранную заставку.
Примечание – вы можете найти OSA.EXE в старых дистрибутивах MS Office или на системах, где все еще установлен MS Office.
Еще одним отличным инструментом для этой цели является nircmd от www.nirsoft.net. У него есть множество функций, доступных через командную строку, включая запуск экранной заставки, блокировку рабочей станции, выключение экрана, и он бесплатный. Для запроса, сделанного OP, я создал небольшой пакетный файл, который содержит две команды:
nircmdc screensaver
nircmdc lockws
Я затем создал ярлык на пакетный файл и добавил сочетание клавиш в файл ярлыка. Жаль, что WIN-L нельзя использовать. Я использую CTL-ALT-Z, так как это легко сделать одной рукой.
В ответ на Randolf Richardson‘s ответ вы можете просто написать AHK скрипт, как этот:
#l:: ;Горячая клавиша Windows-L
Run, C:\Windows\System32\screensaver_name.scr /s ;Запускаем экранную заставку
Process, WaitClose, screensaver_name.scr ;Ждем, пока экранная заставка остановится
DllCall("LockWorkStation") ;Блокируем экран
return
Затем убедитесь, что вы помещаете его в
C:\Users\Username\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup
чтобы он автоматически запускался даже после выключения/перезагрузки
Ответ или решение
Для того чтобы изменить поведение сочетания клавиш Windows + L на Windows 7 и сделать так, чтобы оно сначала активировало заставку экрана, а затем блокировало рабочую станцию, вам потребуется воспользоваться программами AutoHotkey или NirCmd. Оба метода эффективны и позволяют добиться желаемого результата. Далее представлен подробный метод с использованием AutoHotkey и дополнительные рекомендации.
Шаги по созданию скрипта с AutoHotkey
-
Установка AutoHotkey:
- Загрузите и установите AutoHotkey с официального сайта AutoHotkey.
-
Создание скрипта:
-
Откройте Блокнот или любой текстовый редактор.
-
Вставьте следующий код в редактор:
#l:: ; Сочетание клавиш Win + L Run, C:\Windows\System32\scrnsave.scr /s ; Здесь укажите имя вашего скрипта заставки Process, WaitClose, scrnsave.scr ; Дождаться завершения заставки DllCall("LockWorkStation") ; Заблокировать экран return
-
Так как имя заставки экрана может различаться, убедитесь, что вы используете правильный путь к вашему файлу заставки.
-
-
Сохранение скрипта:
- Сохраните файл с расширением
.ahk
, например,lock_and_screensaver.ahk
.
- Сохраните файл с расширением
-
Автозапуск скрипта:
- Переместите созданный файл скрипта в папку автозагрузки, чтобы он запускался при загрузке Windows:
- Нажмите
Win + R
, введитеshell:startup
и нажмите Enter. - Скопируйте файл скрипта в эту папку.
- Нажмите
- Переместите созданный файл скрипта в папку автозагрузки, чтобы он запускался при загрузке Windows:
-
Запуск скрипта:
- Теперь скрипт будет автоматически запускаться при каждом входе в систему. Вы сможете нажимать
Win + L
, и вместо стандартного блокирования рабочей станции будет активироваться заставка, а затем экран будет заблокирован.
- Теперь скрипт будет автоматически запускаться при каждом входе в систему. Вы сможете нажимать
Дополнительный метод: использование NirCmd
Если вы предпочитаете использовать NirCmd, следуйте указанным шагам:
-
Скачивание NirCmd:
- Перейдите на сайт NirSoft и скачайте NirCmd.
-
Создание пакетного файла:
-
Откройте Блокнот и вставьте следующий код:
nircmdc screensaver nircmdc lockws
-
Сохраните файл с расширением
.bat
, например,lock_screensaver.bat
.
-
-
Создание ярлыка и назначение сочетания клавиш:
- Создайте ярлык на этот файл, нажав правой кнопкой мыши на файл и выбрав "Создать ярлык".
- Щелкните правой кнопкой мыши на созданный ярлык, выберите «Свойства», затем в поле «Клавиша быстрого вызова» назначьте желаемую комбинацию клавиш (например,
Ctrl + Alt + Z
).
Проверка настроек заставки
Не забудьте настроить параметры заставки:
- Перейдите в «Панель управления» → «Экран» → «Заставка».
- Убедитесь, что выбрана опция «При возобновлении показывать экран входа».
Заключение
Используя любой из предложенных методов, вы можете эффективно изменить поведение сочетания клавиш Windows + L на вашей системе Windows 7, тем самым повысив уровень удобства работы с вашими данными. С помощью AutoHotkey вы получите большую гибкость в настройках, а NirCmd—простой и эффективный способ для выполнения необходимых команд.