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

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

1 ответ1

0

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

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

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


Per-Extension Association (Все пользователи)

Или откройте окно 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

Per-Extension Association (только для текущего пользователя)

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

Если вам удалось создать тип 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

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .