Как я могу добавить элемент в "новое" контекстное меню?
Когда я щелкаю правой кнопкой мыши в любом месте, я получаю возможность добавить новый файл с указанным расширением. Я хотел бы добавить несколько пользовательских файлов в это меню, чтобы я мог щелкнуть правой кнопкой мыши и создать новый файл PHP, например.
Как я могу это сделать?
11 ответов
Чтобы добавить расширения по вашему выбору в список: создайте файл, добавьте содержимое ниже, сохраните его как what.reg и запустите его.
Примечание: замените.png на расширение файла, которое вы хотите добавить, и замените все что угодно.
Windows Registry Editor Version 5.00
[HKEY_CLASSES_ROOT\.png\ShellNew]
"NullFile"=""
Еще кое-что:
Если вы хотите добавить файл в качестве шаблона для нового элемента, используйте
Windows Registry Editor Version 5.00
[HKEY_CLASSES_ROOT\.html\ShellNew]
"FileName"="html.html"
и затем поместите файл (html.html) в:
- Для вашего собственного профиля:
%Userprofile%\Templates
- Для всех пользователей:
%Allusersprofile%\Templates
- Для всей системы:
%Systemroot%\ShellNew
Еще одна деталь: если вы хотите удалить запись "Windows Live Call", используйте:
[-HKEY_CLASSES_ROOT\.wlcshrtctv2\LiveCall\ShellNew]
ShellNewHandler помог мне восстановить меню оболочки Windows 7> "Создать"> "TXT".
- Снимите флажок .txt
- Нажмите Применить
- Проверьте .txt
- Нажмите Применить
Войдите в редактор реестра и разверните HKEY_CLASSES_ROOT.
Перейти к.file_extention
и создайте ключ с именем ShellNew
Внутри этого создайте новый строковый ключ с именем NullFile без значения
Например, если бы я хотел создать новую запись для пустого объекта.wil *, я бы создал
[HKEY_CLASSES_ROOT\.wil\ShellNew]
NullFile = ""
* если расширение файла, такое как.wil, не существует, я сначала создал бы файл с этим расширением и дважды щелкнул бы по нему. Откройте его с помощью выбранной мной программы, так как это создаст другие необходимые ключи реестра и облегчит вашу работу.
Похоже, что другие решения здесь устарели. По крайней мере, ни один из них не работал для меня в Windows 10 v. 1709 Build 16299.192 (Edit: все еще работает в версии 1809). Я провел некоторое тестирование на ВМ, и это то, что работает в Windows 10 1709, по состоянию на 2018.01.12:
Добавьте файл реестра:
Создайте новый файл реестра со следующим содержимым:
Windows Registry Editor Version 5.00
; new file type
[HKEY_CLASSES_ROOT\.xyz]
@="xyz"
; template
[HKEY_CLASSES_ROOT\.xyz\ShellNew]
"FileName"=""
; file type name
[HKEY_CLASSES_ROOT\xyz]
@="XYZ test file"
замещать xyz
с расширением, которое вы хотели бы добавить. И заменить XYZ test file
с именем расширения файла (например, файл.scss будет "синтаксически удивительный файл таблицы стилей"). Если вы хотите использовать файл шаблона, см. пояснение ниже.
Может быть необходимо перезапустить Windows Explorer после добавления файла реестра. Вы можете перезапустить explorer.exe, набрав в CMD следующее:
taskkill /f /im explorer.exe & start explorer.exe
Пояснение к коду:
[HKEY_CLASSES_ROOT\.xyz]
@="xyz"
Создаст новый тип файла в реестре.
[HKEY_CLASSES_ROOT\.xyz\ShellNew]
"FileName"=""
Это позволит вам использовать шаблон для всех новых файлов этого формата. Мы могли бы, например, написать "template.xyz"
и создайте новый файл с именем "template.xyz" и используйте его как шаблон. Поэтому каждый раз, когда вы создаете новый файл, он будет заполнен предварительно созданным содержимым. Как отметил Эдуардо Молтени, пути к файлам шаблонов: %Userprofile%\Templates
, %Allusersprofile%\Templates
или для всей системы %Systemroot%\ShellNew
, В этом примере мы не указали имя шаблона, потому что не хотим его использовать.
[HKEY_CLASSES_ROOT\xyz]
@="XYZ test file"
Это будет имя типа файла как для контекстного меню, так и для вновь создаваемых файлов. Насколько я знаю, оставить это значение пустым не работает.
Значок:
Значок добавляется, когда Windows связывает программное обеспечение с типом файла.
Для удаления записей из списка, вот программа, которая позволяет включать / отключать записи из графического интерфейса. Гораздо проще, чем искать в реестре!
К сожалению, это не позволяет добавлять записи.
Ни один из этих методов не работал для меня в Windows 10.
Я наконец нашел эту страницу, которая объяснила, что вам нужно сослаться на другой ключ, который содержит имя и значок по умолчанию.
Это минимум, необходимый для создания записи, но у него не будет иконки.
ПРИМЕЧАНИЕ: третья запись предназначена для нового ключевого текстового файла, указанного в значении (по умолчанию) .txt
Windows Registry Editor Version 5.00 [HKEY_CLASSES_ROOT\.txt] @="textfile" [HKEY_CLASSES_ROOT\.txt\ShellNew] "NullFile"="" [HKEY_CLASSES_ROOT\textfile] @="Text Document"
Вот два способа указать значок
- Скажите Explorer, чтобы использовать значок по умолчанию для типа контента:
[HKEY_CLASSES_ROOT\.txt] @="textfile" "Content Type"="text/plain" "PerceivedType"="text"
или 2. Укажите значок в текстовом файле следующим образом:
[HKEY_CLASSES_ROOT\textfile\DefaultIcon] @="%SystemRoot%\\system32\\imageres.dll,-102"
Да, и, по крайней мере, для меня достаточно простого закрытия и повторного открытия Проводника (убедитесь, что все экземпляры закрыты), чтобы перезагрузить контекстное меню. Вам не нужно перезагружать всю машину.
Вы не сказали, какую версию Windows вы используете - если это XP, вы можете загрузить TweakUI PowerToy от Microsoft (также описанную в Википедии). Нажмите на Шаблоны и добавьте / удалите типы файлов для вашего сердца. Вот как это выглядит:
Эта информация официально зарегистрирована Microsoft; обычно предназначен для разработчиков, которые регистрируют свои собственные новые типы файлов.
Расширение Нового Подменю
Когда пользователь открывает меню " Файл" в проводнике Windows, первая команда - " Создать". Выбор этой команды отображает подменю. По умолчанию он содержит две команды, Папка и Ярлык, которые позволяют пользователям создавать подпапки и ярлыки. Это подменю может быть расширено, чтобы включить команды создания файла для любого типа файла.
Чтобы добавить команду создания файла в подменю New, файлы вашего приложения должны иметь тип файла, связанный с ними. Включите подраздел ShellNew под ключом для расширения имени файла. Когда в меню " Файл " выбрана команда " Новый", оболочка добавит ее в подменю " Новый". Строка отображения команды будет описательной строкой, которая назначена ProgID программы.
Назначьте одно или несколько значений данных для подраздела ShellNew, чтобы указать метод создания файла. Доступные значения следуют.
Command
: Выполняет приложение. Это значение REG_SZ, указывающее путь к приложению, которое будет выполнено. Например, вы можете настроить его на запуск мастера.Data
: Создает файл, содержащий указанные данные. Данные - это значение REG_BINARY с данными файла. Данные игнорируются, если указан либо NullFile, либо FileName.FileName
: Создает файл, который является копией указанного файла. FileName - это значение REG_SZ, в котором указан полный путь к файлу, который нужно скопировать.NullFile
: Создает пустой файл. NullFile не присваивается значение. Если указан NullFile, значения Data и FileName игнорируются.
И пример создания нового пустого mpy
файл:
HKEY_CLASSES_ROOT
(Default) = MyProgram.1
MyProgram.1
.myp
ShellNew
NullFile
Чтобы создать новый файл на основе определенного файла шаблона:
HKEY_CLASSES_ROOT
.myp
(Default) = MyProgram.1
MyProgram.1
ShellNew
FileName: REG_SZ = "%ProgramData%\Microsoft\Windows\Templates\MyNewTemplate.myp"
Создайте простой текстовый файл и добавьте в него следующую строку:
Windows Registry Editor Version 5.00
[HKEY_CLASSES_ROOT\.txt\ShellNew]
"NullFile"=""
Сохраните файл и переименуйте его расширение в файл.reg. Например, "myNewItem.reg". Убедитесь, что вы переименовали расширение, а не только имя файла, например (myNewItem.reg.txt)
Дважды щелкните файл, и он обновит ваш реестр.
Следующий шаг, и это очень важно, перезагрузите компьютер напрямую. Поэтому НЕ пытайтесь открыть меню контента, чтобы увидеть, работает ли оно уже! Сначала перезагрузите компьютер.
Если вы откроете меню контента, чтобы увидеть, есть ли ваш новый элемент в списке, реестр будет восстановлен...
Также попробуйте эту программу: http://sourceforge.net/projects/shellnewhandler/
Раздел реестра:
HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\Discardable\PostSetup\ShellNew
нельзя изменить, чтобы выполнить то, что отображается или не отображается в контекстном меню "Новый". Если вы измените это значение, оно будет переопределено Проводником при следующем щелчке правой кнопкой мыши и вызовет контекстное меню "Новый". Попробуйте, и вы поймете, что я имею в виду.