Есть ли раздел реестра, чтобы сообщить Windows об удалении файла при следующем запуске?
Да, значения хранятся в разделе реестра
HKLM System CurrentControlSet Control Session Manager PendingFileRenameOperations
, но вам лучше использовать для этого инструмент, например MoveFile из SysInternals или MoveLatr из BitSum (для последнего предусмотрен исходный код C), которые редактируют реестр за вас.
Добавьте это в свой реестр и используйте контекстное меню:
[HKEY_CLASSES_ROOT * shell Удалить при перезагрузке command] @ = "CMD/E: OFF/C REG ADD HKEY_LOCAL_MACHINE \ SOFTWARE \ Microsoft \ Windows \ Currentversion \ RunOnce /v "Del% 1 OnNextReboot "/d ^ "cmd.exe/c DEL/F/Q \"% 1 \ ""/f "" [HKEY_CLASSES_ROOT * shell Open ] [HKEY_CLASSES_ROOT Folder shell Удалить при перезагрузке comman d] @ = "CMD/E: OFF/C REG ADD HKEY_LOCAL_MACHINE \ SOFTWARE \ Microsoft \ Windows \ Currentversion \ RunOnce/v " Del% 1 OnNextReboot "/d ^ " cmd.exe/c RD/S/Q \ "% 1 \" "/f " "

-
Это помещает элемент «Удалить при перезагрузке» в контекстное меню, но, похоже, на самом деле удалить выбранные файлы в Windows 10. Есть идеи, почему? — головокружение, 03 сен 2016, в 0:49
-
Похоже, он планирует удаление файла при следующем входе в систему, что не то же самое, что удаление его при запуске системы. К тому времени он, возможно, уже будет использоваться. — Джонатан Гилберт 22 июня ’20 в 22:21
Добавьте это в свой реестр и используйте меню правой кнопки мыши:
[HKEY_CLASSES_ROOT * shell Удалить при перезагрузке команда] @ = "CMD/E: OFF/C REG ADD HKEY_LOCAL_MACHINE \ SOFTWARE \ Microsoft \ Windows \ Currentversion \ RunOnce/v " Del% 1 OnNextReboot "/ d ^ "cmd. exe/c DEL/F/Q \ "% 1 \" "/f " "[HKEY_CLASSES_ROOT * shell Open] [HKEY_CLASSES_ROOT Folder shell Удалить при перезагрузке команда] @ =" CMD/E: OFF/C REG ADD HKEY_LOCAL_MACHINE SOFTWARE Microsoft Windows Currentversion RunOnce/v "Del% 1 OnNextReboot "/d ^ "cmd.exe/c RD/S/Q \ "% 1 \" "/f " "
Как удалить ассоциации типов файлов с помощью редактора реестра
Связать тип файла с программой можно несколькими способами, например с помощью диалогового окна «Открыть с помощью…» и выбора флажка «Всегда использовать это приложение для открытия» или с помощью программ по умолчанию или приложений по умолчанию. . Хотя вы можете установить или изменить ассоциации с помощью графического интерфейса пользователя, нет возможности удалить существующую ассоциацию типов файлов. В этом сообщении рассказывается, как удалить ассоциации типов файлов с помощью редактора реестра.
Удаление ассоциации типов файлов с помощью редактора реестра
Предположим, вы неправильно связали тип файла с именем .bak и хотите удалить связь. Выполните следующие действия, чтобы удалить настройки ассоциации файлов (для .bak) из реестра.
- Запустите редактор реестра (
regedit.exe
) и перейдите в эту ветку:HKEY_CLASSES_ROOT .bak
- Запишите (по умолчанию) значение данных на правой панели. Это идентификатор ProgID, связанный с этим типом файла.
- Щелкните правой кнопкой мыши ключ .bak и выберите Удалить. Нажмите «Да» для подтверждения.
- Перейдите к следующим ключам
HKEY_CURRENT_USER
и удалите ключ.bak
.HKEY_CURRENT_USER SOFTWARE Microsoft Windows CurrentVersion Explorer FileExts .bakHKEY_CURRENT_USER SOFTWARE Microsoft Windows Roaming OpenWith FileExts .bak
Это должно удалить настройки ассоциации файлов для
.bak
тип файла. Теперь удаленный тип файла должен обрабатываться Windows как неизвестный ; это именно то, что мы хотели.Также удалите Progid (необязательно)
Если вы также хотите очистить ключ ProgID для этого файла type, который вы отметили (
bak_auto_file
) на шаге № 3 выше, вы должны сделать это, только если этот ProgIDbak_auto_file
не используется никаким другим типом файлов. Это важно.Как узнать, сопоставлен ли какой-либо другой тип (ы) файлов с тем же ProgID? Выполните поиск (для Data , содержащих строку ProgID — соответствует только всей строке ) в редакторе реестра. Или выполните одну из команд, приведенных ниже, чтобы выяснить это.
На этот раз возьмем пример
txtfile
Progid. Чтобы просмотреть список типов файлов, которые используютtxtfile
ProgID, запустите:Пример: txtfile (progid используется для .txt)
assoc | findstr/i "txtfile"
(или)
reg query hkcr/d/f "txtfile"/s
В приведенном выше случае следующие расширения файлов по-прежнему используют прогид txtfile :
.LOG | .SCP | .TXT | .WTX
Итак, вы не должны удалять раздел реестра
HKEY_CLASSES_ROOT txtfile
, так как это нарушит настройки ассоциации для типы файлов, которые используют этот ключ.Теперь давайте воспользуемся описанным выше методом и выясним, используют ли какие-либо другие расширения файлов
bak_auto_file
Progid. Запустив команду дляbak_autofile
, вы получите следующее:Поскольку никакие другие типы файлов не используют этот ProgID, вы можете безопасно удалить этот ключ:
HKEY_CLASSES_ROOT bak_autofile
Сводка
Чтобы удалить настройки ассоциации файлов для типа файлов .bak
, мы удалили следующие ключи реестра:
HKEY_CLASSES_ROOT .bakHKEY_CURRENT_USER SOFTWARE Microsoft Windows CurrentVersion Explorer FileExts .bakHKEY_CURRENT_USER SOFTWARE Microsoft Windows Roaming OpenWith FileExts .bakHKEY> > Вот и все! Надеюсь, это руководство помогло вам удалить нежелательную или неправильную ассоциацию типов файлов на вашем компьютере с Windows.
Одна небольшая просьба: если вам понравился этот пост, поделитесь им ?
Одна ваша "крошечная" публикация серьезно поможет в росте этого блога. Некоторые отличные предложения:Так что большое спасибо за вашу поддержку, мой читатель. Это займет не более 10 секунд вашего времени. Кнопки «Поделиться» находятся прямо внизу. :)
- Закрепите!
- Поделитесь этим в своем любимом блоге + Facebook, Reddit
- Напишите в Твиттере!
сообщить об этом объявлении
Об авторе
Рамеш Сринивасан основал Winhelponline.com еще в 2005 году. Он увлечен технологиями Microsoft и был самым ценным профессионалом Microsoft (MVP) в течение 10 лет подряд с 2003 по 2012 год.
Отлично!
Ответить
Кажется, это больше не работает. У меня есть действующая ассоциация в HKLM Software Classes и нет ассоциации в HKCU Software Classes. Когда я удаляю расширение из HKCU Software Microsoft Windows CurrentVersion Explorer FileExts (у него были ключи UserChoice и Hash) и перезагружаюсь, ассоциация все еще активна и остается в приложениях по умолчанию. Моя ассоциация HKCR игнорируется.
Ответить
Спасибо за вашу помощь. Созданный вами файл реестра работал
. Ответ
«Тип файла bak был сопоставлен с ProgID« txtfile »,»
Разве это не должно быть «txt Тип файла был сопоставлен с ProgID «txtfile», «
Ответить
Это отлично сработало. Спасибо!
Ответить
Четкие объяснения. Хорошие примеры. Мне понравилось включение нескольких методов.
Это отлично сработало. Спасибо!
Ответ
Четкие объяснения. Хорошие примеры. Мне понравилось включение нескольких методов.
Я поделился в FB и Twitter 🙂
Спасибо за инструкции. Следующие шаги подходят мне.
Ответ
1. Удалите HKEY_CLASSES_ROOT .bak
2. Удалите
HKEY_CURRENT_USER SOFTWARE Microsoft Windows CurrentVersion Explorer FileExts .bak
3. У меня нет ключа роуминга, поэтому пропустите этот шаг.
HKEY_CURRENT_USER SOFTWARE Microsoft Windows Roaming OpenWith FileExts .bak
4. Я меняю путь к предпочтительному приложению в HKEY_CLASSES_ROOT bak_auto_file open command
и
HKEY_CLASSES_ROOT bak_auto_file edit command
5. Перезагрузитесь, и все заработало.
Я пытаюсь удалить связь с файлом .bin и хочу оставить ассоциацию пустой.
Ответить
Я пробовал выше. Он не распознает файлы .bin.
Кроме того, файлы .bin отображаются в приложениях по умолчанию по списку типов файлов, но не отображаются в полном списке в командной строке?
Почему мы не можем есть дополнительное поле в параметрах ассоциации приложений Windows 10 с надписью НЕТ?