Есть ли способ отключить диалог переименования расширений файлов в Windows 7?
Тот, который подсказывает тебе
Переименовать: если вы измените расширение имени файла, файл может стать непригодным для использования. Вы уверены, что хотите изменить это?
Есть ли способ отключить диалог переименования расширений файлов в Windows 7?
Тот, который подсказывает тебе
Переименовать: если вы измените расширение имени файла, файл может стать непригодным для использования. Вы уверены, что хотите изменить это?
Ответы:
Это возможно с помощью скрипта AutoHotkey:
While, 1
{
WinWait, Rename ahk_class #32770
WinActivate,
ControlClick, Button1
}
Установите AutoHotkey , сохраните приведенный выше код в файл с расширением .ahk и запустите скрипт. Он будет ждать появления окна Rename. Когда это происходит, он автоматически «нажимает» на кнопку «Да» (обозначается здесь как «Button1»).
Если вы не хотите устанавливать AutoHotkey, вот скомпилированная версия того же скрипта. Запустите исполняемый файл и посмотрите, как он делает свое дело :-).
Обратите внимание, что на самом деле это не отвечает на вопрос, так как вопрос все еще появляется. Но это автоматизировано, так что вас это больше не беспокоит.
#32770очень распространен для многих типов окон (попробуйте найти его), поэтому этот сценарий будет что-то делать со многими типами окон под названием «Переименовать». То есть вы можете получить больше помощи, чем рассчитывали :)
:-(
В ответ на комментарий о принятом ответе я также обнаружил, что скрипт AHK работает довольно медленно. Эта модификация, кажется, делает это быстрее:
While, 1
{
WinWaitActive, Renommer ahk_class #32770
send o
}
Вы заметите, что я использую окна на французском языке. Для английского использования:
While, 1
{
WinWaitActive, Rename ahk_class #32770
send y
}
Для окон на португальском (по крайней мере, версия pt-BR) используйте:
While, 1
{
WinWaitActive, Renomear ahk_class #32770
send s
}
Это очень возможно, с правильными инструментами, терпением, хорошим дизассемблером и удачей, что вы можете его отключить.
Однако это не так просто, как изменить раздел реестра.
Вот пример того, как кто-то отключил «задержку», когда вы пытаетесь удалить используемый файл.
http://www.codeproject.com/KB/system/NoDeleteDelay.aspx
Я просто попытался возиться и не нашел ничего полезного.
Я думаю, что лучшее решение, чем RtvReco, - это создать пункт меню для контекстного меню с надписью «Переименовать2», всплывающее окно с сообщением о новом имени файла и использовать Windows API для его переименования.
:-)
explorer.exeисправляет / удаляет кучу вещей, которые раздражают меня по умолчанию.
Вместо того, чтобы загружать приложение, почему бы просто не использовать команду 'ren * .aa * .bb' в cmd (командная строка)?
Yesв диалоговом окне, которое появляется в Проводнике. вверх.
Вы не можете отключить предупреждение о расширении файла. Он имеет такой дизайн, чтобы обеспечить безопасность пользователя от случайного изменения файлов.
Источник:
You cannot disable the file extension warning message. It has this design to ensure the user's safety from modifying the files accidentally.Microsoft почти так же плоха, как Google, решая для пользователей, что лучше для них, вместо того, чтобы по умолчанию перейти на безопасное для новичков, но позволяя опытным пользователям отменять выбор.
Вы не можете, однако, не все потеряно.
Вы можете использовать RtvReco для автоматического закрытия предупреждения, как только оно появится. Этот изящный маленький инструмент предназначен для автоматизации многих аспектов Windows, нажимая кнопки в надоедливых диалоговых окнах, выбирая пункты меню, максимизируя и минимизируя окна для вас.
... или использовать достойный файловый менеджер вместо Windows Explorer (например, Total Commander ).
Обе программы условно-бесплатные, попробуйте, прежде чем купить.
я знаю об этом взломе реестра, однако он не работает для меня с Windows 7
[HKEY_LOCAL_MACHINE \ SOFTWARE \ Microsoft \ Windows \ CurrentVersion \ Policies \ System]
установите значение ConsentPromptBehaviorAdmin равным нулю (0) и перезагрузите компьютер.
ps: конечно, есть бесплатные альтернативы Total Commander, так уж получилось, что я выбрал файловый менеджер.
Вот код, который я использовал для решения проблемы в скрипте AutoIT. Единственная проблема заключается в том, что он продолжает работать и потребляет некоторые ресурсы. Если у вас нет лучшей идеи, чтобы исправить сценарий. :-)
While 1
if WinActive("Rename","") Then
Send("!y")
EndIf
WEnd
Поскольку у нас есть файлы, при загрузке автоматически добавляются дата и время в качестве расширения. Поэтому я искал решение и нашел его.
Скачайте программу под названием F ree Commander. Они имеют портативную версию, которая при необходимости может быть установлена на флэш-накопителе USB.
Эта программа позволяет вам выбрать несколько файлов, как в моем случае, и переименовывает расширение, не спрашивая, вы уверены.
Я действительно не думаю, что это возможно без использования:
Лично я использую PTFB (нажми кнопку Freakin ') ; это довольно мало ресурсов и очень быстро. Это не совсем дешево, но удобно для других вещей.
Я также устал от этого глупого сообщения, поэтому я создал собственный скрипт Autohotkey, с некоторыми новыми идеями.
Я не хотел, чтобы постоянный сеттаймер или команда «пока» постоянно ели ресурсы. Так как я всегда использую F2 для переименования файлов, я сделал горячую клавишу, чтобы добавить специальную функцию к этой клавише. Таким образом, таймер срабатывает только при нажатии этой клавиши и выключается, когда задача завершена.
Я также считал, что хочу, чтобы мой сценарий влиял только на это конкретное диалоговое окно. Одного имени было недостаточно, потому что тот же диалог переименования появляется, например, при попытке переименовать элемент в меню «Пуск».
Итак, есть некоторые условия для работы этой функции. Во-первых, он будет работать в окнах Explorer и на рабочем столе Windows. С остальными программами или средами F2 продолжит работать в обычном режиме. Кроме того, чтобы предотвратить конфликты, такие как вышеупомянутые, скрипт проверяет ширину и высоту диалогового окна переименования, чтобы убедиться, что оно совпадает.
Наконец, я также включил функцию автоматического выбора полного имени файла (вместе с расширением, как до Windows 7), потому что я предпочитаю это таким образом. Не стесняйтесь удалить строку Отправьте ^ + {end}, если она вам не нужна.
В английских версиях Windows вам придется изменить «cambiar nombre» на то, что указано в заголовке диалогового окна переименования. Кроме того, измените "s" на "y". В случае, если это не работает, вы также можете использовать Autoit3 Window Spy, чтобы проверить, действительно ли ваш размер окна переименования имеет этот размер (if (warnw = 515) и (warnh = 154).
#SingleInstance force
GroupAdd, folders2, ahk_class CabinetWClass
GroupAdd, folders2, ahk_class WorkerW
GroupAdd, folders2, ahk_class ExploreWClass
GroupAdd, folders2, ahk_class Progman
return
$F2::
if ( Winactive("ahk_group folders2") )
{
Send {F2}
Send ^+{end}
settimer, renombrar, 20
return
}
Else
{
Send {F2}
Return
}
renombrar:
WinWaitActive, Cambiar nombre ahk_class #32770
WinGetPos,,, warnw, warnh, Cambiar nombre
if (warnw = 515) and (warnh=154)
{
send, s
click up left
settimer, renombrar, off
return
}
Else
{
settimer, renombrar, off
return
}
Создайте vb-скрипт, который переименует файл, поместите его в специальную папку «SendTo», щелкните правой кнопкой мыши файл, для которого необходимо изменить расширение, и введите новое имя. Больше никаких предупреждений, и создание сценария занимает всего несколько минут. Скрипт содержит это:
on error resume next
Set objArg = Wscript.Arguments
do
if objArg.Count < 1 then exit do
fil=objArg(0)
Set FSO = CreateObject("Scripting.FileSystemObject")
if Err.Number > 0 then exit do
Set f1 = FSO.GetFile(objArg(0))
fil=f1.Name
i=inputbox("","",fil)
if i = fil then exit do
f1.Name = i
exit do
loop