Отключить сочетание клавиш Ctrl+Z или очистить историю отмен в Проводнике Windows?
Есть ли способ отключить сочетание клавиш CTRL + Z (Отменить) в проводнике Windows? В качестве альтернативы, есть ли способ заставить Windows Explorer "забыть" свою историю отмен?
Причина, по которой я спрашиваю, заключается в том, что вы, возможно, выполнили некоторые файловые операции в Проводнике (копирование, переименование и т. Д.), И, возможно, вы не перезагружаетесь в течение нескольких дней или дольше (вместо этого выбрав режим гибернации). Проблема заключается в том, что если вы случайно нажмете CTRL + Z один или несколько раз (часто ошибочно выбирая, какое приложение у вас на переднем плане; использование настройки с двумя мониторами увеличит эту вероятность), вы можете отменить то, что было сделано давным-давно, не осознавая что случилось.
Даже если вы понимаете, что произошло, вы можете не помнить, какими были последние несколько операций, которые вы сделали потенциально несколько дней назад. Насколько я могу судить, в Windows Explorer нет функции "Повторить", которая вас спасет. Я могу представить сценарии, в которых эта ошибка может вызвать много проблем.
Если ярлык можно отключить, он по крайней мере заставит вас использовать Edit > Undo
пункт меню, прежде чем делать что-то глупое. В противном случае, если историю отмен можно периодически очищать, это предотвратит отмену некоторых очень старых операций.
Приложение: Для тех, кто заинтересован в реализации этого, я создал файл AHK, который работает без вывода сообщений (#NoTrayIcon
вариант) из моей папки автозагрузки Windows. Помимо некоторых других полезных ярлыков, которые я добавил, вот как это выглядит:
#NoTrayIcon
SetTitleMatchMode RegEx
return
; Disable Ctrl+Z shortcut in Windows Explorer
;
#IfWinActive ahk_class ExploreWClass|CabinetWClass
^z::return
#IfWinActive
Если вы предпочитаете обратную связь вместо CTRL + Z, просто ничего не делая, проиграйте звук по умолчанию или используйте MsgBox
чтобы вызвать диалог, чтобы появиться.
#IfWinActive ahk_class ExploreWClass|CabinetWClass
^z::
;Uncomment the feedback option you prefer below
;SoundPlay *-1
;MsgBox Ctrl+Z has been disabled.
return
#IfWinActive
6 ответов
Я написал программу на C для отключения ярлыков Undo и Redo, так как оба могут привести к несчастным случаям.
Программу можно найти по адресу http://purl.org/net/dweundo.
У него есть установщик, который, если хотите, добавляет ярлык в папку "Пуск" в меню "Пуск", поэтому программа запускается при входе в систему.
Я думаю, что вы можете иметь AutoHockkey переопределить существующий ярлык.
^z::
return
Заставит Ctrl + z ничего не делать
Изменить: это будет применяться везде. Чтобы применить только в проводнике, попробуйте это:
#IfWinActive ahk_class ExploreWClass
^z::
#IfWinActive ahk_class CabinetWClass
^z::
return
#IfWinActive
Прошло 11 лет, и, хотя в проводнике было добавлено повторение, подсказок по-прежнему нет, и ошибки все еще случаются время от времени :(
Но только сейчас я нашел недавнюю статью на https://www.winhelponline.com/blog/disable-undo-redo-feature-in-windows/ , которая оказалась идеальным решением (кажется, это новая функция; не тестировалась на старых системах). Приятно то, что вам не нужно устанавливать или запускать что-то новое, просто добавить нольDWORD
значение с именемMaxUndoItems
в реестреHKCU\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Advanced
и наслаждаться. Просто обратите внимание , что он полностью отключает отмену и повтор действий в проводнике , поэтому вы не сможете сделать это впоследствии и в контекстном меню. Спустя годы я наконец-то могу избавиться от этого так называемого «ярлыка» !
(Ну, будет еще лучше, если отмена и повтор действия по-прежнему будут храниться в контекстном меню или их можно будет назначить на другие клавиши. Но не стоит слишком сильно давить на Microsoft XD)
Представленные сценарии работают правильно, за исключением объектов (файлов, папок и т. Д.), Размещенных на рабочем столе.
Предположим, что у вас есть папка с именем MyFolder
на рабочем столе, и вы переименуете его в NewName
, Случайное нажатие CTRL+Z приведет к потере изменений, возвращающихся к MyFolder
,
Я вставляю новую версию скрипта, которая также включает Desktop:
#IfWinActive ahk_class ExploreWClass
^z::
#IfWinActive ahk_class CabinetWClass
^z::
return
#IfWinActive ahk_class Progman
^z::
return
#IfWinActive
Спасибо, что поделились этим полезным автоключем, к сожалению, я потерял весь документ из-за глупой функции / ошибки Windows в связи со случайным сочетанием клавиш CTRL+Z:|.
Этот скрипт AutoHotKey перехватывает окна проводника, как и в других ответах, но также и рабочий стол:
#IfWinActive ahk_class CabinetWClass ; Explorer
^z::
#IfWinActive ahk_class ExploreWClass ; Explorer (legacy)
^z::
#IfWinActive ahk_class Progman ; Desktop
^z::
#IfWinActive ahk_class WorkerW ; Desktop shown by Win+D
^z::
MsgBox Ctrl+Z has been disabled.
return
#IfWinActive
Тем не менее, я думаю, что лучшим решением является использование программы, написанной Jelle Geerts (см. Его ответ).
2023 — Windows 11 22H2
Чтобы отключить его ( reg-add ):
reg add "HKCU\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Advanced" /v MaxUndoItems /d 0 /t REG_DWORD
а затем перезапустите «Проводник Windows» с помощью диспетчера задач.