Свяжите несколько неассоциированных расширений файлов с Notepad++ одновременно с помощью пакетной обработки

Свяжите несколько неассоциированных расширений файлов с Notepad++ одновременно с помощью пакетной обработки

У меня есть тысячи файлов с расширениями ".0", ".1", ".2" и т. д., которые я хочу связать с Notepad++ (v7.5.8). В настоящее время у них нет никакой ассоциации файлов в Windows (Windows 10). Поскольку у них нет никакой существующей ассоциации, решенияпоказано здесьмне не подходят.

Кроме того, я хочу связать их в Windows, а не в настройках N++, поскольку я получаю доступ к этим файлам из проводника Windows.

решение1

На мой взгляд , гораздо проще, чем вручную связывать все .#файлы, было бы настроить режим редактирования для всех файлов с помощью regedit:

  • HKEY_CLASSES_ROOT\*\shell: Добавить ключ = Notepad++, установить (Default)=Edit with &Notepad++
  • HKEY_CLASSES_ROOT\*\shell\Notepad++: Добавьте ключ = command, установите (Default)значение "c:\program files (x86)\notepad++\notepad++.exe" "%1"-- используйте правильный путь к notepad++.exe для вашей системы и убедитесь, что путь и %1 заключены в двойные кавычки, чтобы гарантировать правильную обработку пробелов.

Выйдите из системы и войдите снова или перезагрузитесь. Теперь, на любом файле в проводнике, вы сможете щелкнуть правой кнопкой мыши, выбрать Edit with Notepad++и вуаля!


Ассоциация по расширениям (все пользователи)

Либо откройте cmd.exeокно (при необходимости запустите от имени администратора) и выполните

assoc .1=DotNumber
ftype DotNumber="c:\program files (x86)\notepad++\notepad++.exe" "%1"
for %n in (0 1 2 3 4 5 6 7 8 9) DO assoc .%n=DotNumber 

Если вам нужно больше .#расширений, добавьте их в цикл for. Если вы хотите задать их из пакетного файла ( setdotn-assoc.batили setdotn-assoc.cmd), а не в cmd.exeкомандной строке, нужно два, %а не одно, все остальное то же самое:

assoc .1=DotNumber
ftype DotNumber="c:\program files (x86)\notepad++\notepad++.exe" "%1"
for %%n in (0 1 2 3 4 5 6 7 8 9) DO assoc .%%n=DotNumber

Ассоциация для каждого расширения (только для текущего пользователя)

Если у вас возникли проблемы с разрешениями наВсе пользователи, вы можете попробовать сделать это, чтобы сделать ассоциацию для каждого расширения, но только для текущего пользователя.

В случае, если вам удалось создать тип DotNumber, ftype DotNumber=удалите существующее определение.

Запустите следующую команду из командной строки (на этот раз вам даже не понадобится командная строка администратора):

REG ADD     HKCU\Software\Classes\DotNumber                      /ve /d "DotNumber File" /f
REG ADD     HKCU\Software\Classes\DotNumber\Shell                /ve /d "open" /f
REG ADD     HKCU\Software\Classes\DotNumber\Shell\open           /ve /d "open DotNumber file" /f
REG ADD     HKCU\Software\Classes\DotNumber\Shell\open\command   /ve /d "\"c:\program files (x86)\notepad++\notepad++.exe\" \"^%1\"" /f
FOR %n in (0 1 2 3 4 5 6 7 8 9) DO REG ADD HKCU\Software\Classes\.%n /ve /d "DotNumber" /f

И если вы хотите проверить, было ли это написано

REG QUERY   HKCU\Software\Classes\DotNumber /S
FOR %n in (0 1 2 3 4 5 6 7 8 9) DO REG QUERY HKCU\Software\Classes\.%n /S

Связанный контент