Como posso adicionar um item ao menu de contexto 'novo'?


117

Quando clico com o botão direito do mouse em qualquer lugar, recebo a opção de adicionar um novo arquivo com uma extensão especificada. Gostaria de adicionar alguns arquivos personalizados neste menu, para que eu possa clicar com o botão direito e criar um novo arquivo PHP, por exemplo.

Como posso fazer isso?


tente nova ferramenta editor de menu incluído no clique direito Enhancer em rbsoft.org/downloads/right-click-enhancer
Ravi Patel

2
Se você está tendo problemas para adicionar uma extensão de arquivo totalmente nova (em vez de simplesmente adicionar NullFile/ FileNamea uma entrada existente) no Windows 7, consulte esta outra pergunta ... superuser.com/questions/588647/…
MrWhite

2
O site da Ramesh é uma boa fonte para adicionar entradas manualmente.
Synetech

Respostas:


64

Para adicionar extensões de sua escolha à lista: crie um arquivo, adicione o conteúdo abaixo, salve-o como o que quer que seja.reg e execute-o.

Nota : Substitua .png pela extensão do arquivo que você deseja adicionar e substitua o que quer que seja pelo que desejar.

Windows Registry Editor Version 5.00

[HKEY_CLASSES_ROOT\.png\ShellNew]
"NullFile"=""

Fonte


4
Por favor, considere a podridão do link .
Mehper C. Palavuzlar

1
Boa decisão. Resposta editada :)
th3dude

1
+1, isso funciona. Como podemos ter um nome de arquivo personalizado como "index.php" em vez de "New PHP file.php"?
fedmich

1
Eu tive que executar o .regarquivo duas vezes para fazê-lo funcionar. Obrigado por esta resposta.
Akash

3
Não funcionou para mim no Windows 10, 1709 :( explorador reiniciado e máquina reiniciado mesmo, ainda assim ...
Arete

66

Mais uma coisa:

Se você deseja adicionar um arquivo como modelo para o novo item, use

Windows Registry Editor Version 5.00
[HKEY_CLASSES_ROOT\.html\ShellNew]
"FileName"="html.html"

e, em seguida, coloque o arquivo (html.html) em:

  • Para o seu próprio perfil: %Userprofile%\Templates
  • Para todos os usuários: %Allusersprofile%\Templates
  • Para todo o sistema: %Systemroot%\ShellNew

Mais um detalhe: se você deseja excluir a entrada "Windows Live Call" , use:

[-HKEY_CLASSES_ROOT\.wlcshrtctv2\LiveCall\ShellNew]

Pensamento legal, capaz de usar um arquivo como modelo!
argila Nichols

1
Caso alguém esteja se perguntando, a FileNameentrada parece substituir a NullFileentrada mencionada em outras respostas. Parece que você não precisa excluir um NullFilevalor existente . No entanto, ter as duas entradas parece confundir alguns outros utilitários de terceiros, como o ShellMenuNew da NirSoft . (Windows 7)
MrWhite

2
Eu não acho que ele precisa estar no% Userprofile% Templates etc, se você der o nome completo do caminho para o arquivo.
jiggunjer

3
O que faço se quiser criar dois atalhos para dois modelos diferentes para o mesmo programa? Por exemplo, usei esse método perfeitamente para criar um item de menu de contexto para um modelo de "artigo" para o TeXworks. Agora, também quero adicionar um modelo "article_modificado" para o TeXworks. Posso adicionar os dois ao menu de contexto? Obrigado!
Prahar 22/16

3
No Windows 8.1, as pastas Modelos listadas não funcionam. Eu recebo um erro "acesso negado". Onde Templates deveria estar agora é uma pasta chamada "junção", aparentemente - e é um arquivo "específico do sistema operacional" oculto. Portanto, a pasta Modelos agora é movida. Consulte este link para o novo mapeamento ( jimmah.com/vista/Security/junctions.aspx ). Aparentemente, agora é C:\Users\USER_NAME\AppData\Roaming\Microsoft\Windows\Templatespara o seu próprio perfil, por exemplo.
Gabriel Staples

19

O ShellNewHandler me ajudou a restaurar o menu do shell do Windows 7> Novo> entrada do documento txt.

insira a descrição da imagem aqui

  1. Desmarque .txt
  2. Clique em Aplicar
  3. Verifique .txt
  4. Clique em Aplicar

2
Isso permite que você adicione novas entradas? Nas capturas de tela e na descrição, não parece.
precisa saber é o seguinte

2
isso NÃO permite que você adicione entradas ... portanto, é completamente irrelevante para o tópico.
Eric Sebasta 6/06/19

18

Entre no editor de registro e expanda HKEY_CLASSES_ROOT

Vá para .file_extention

e crie uma chave chamada ShellNew

Dentro disso, crie uma nova chave de cadeia chamada NullFile sem valor

Por exemplo, se eu quisesse criar uma nova entrada para um objeto .wil em branco *, criaria

[HKEY_CLASSES_ROOT\.wil\ShellNew]
NullFile = ""

* se a extensão do arquivo, como .wil, não existir, primeiro criei um arquivo com essa extensão e clique duas vezes nele. Abra-o com o programa de minha escolha, pois isso criará as outras chaves de registro necessárias e facilitará seu trabalho.


2
Não funcionei no Windows 10, também encontrei este artigo, mas isso também não está funcionando: askvg.com/how-to-add-remove-items-from-new-menu-in-windows
Neo

5

Para remover entradas da lista, aqui está um programa que permite ativar / desativar entradas de uma GUI. Muito mais fácil do que pesquisar no registro!

Infelizmente, não permite adicionar entradas.


Isso é exatamente o que eu precisava, obrigado! Geralmente, tudo o que você realmente precisa é de "Novo documento de texto" ...
Andrew

5

Nenhum desses métodos estava funcionando para mim no Windows 10.

Finalmente encontrei esta página que explicava que você precisa fazer referência a outra chave que contém o nome e o ícone padrão.

Este é o mínimo necessário para criar uma entrada, mas não terá um ícone.

NOTA: a terceira entrada é para um novo arquivo de texto de chave mencionado no valor (Padrão) de .txt

Windows Registry Editor Version 5.00

[HKEY_CLASSES_ROOT\.txt]
@="textfile"

[HKEY_CLASSES_ROOT\.txt\ShellNew]
"NullFile"=""

[HKEY_CLASSES_ROOT\textfile]
@="Text Document"

Aqui estão duas maneiras de especificar um ícone

  1. Diga ao Explorer para usar o ícone padrão para o tipo de conteúdo:
[HKEY_CLASSES_ROOT\.txt] 
@="textfile" 
"Content Type"="text/plain"
"PerceivedType"="text"

ou 2. Especifique um ícone em arquivo de texto da seguinte forma:

[HKEY_CLASSES_ROOT\textfile\DefaultIcon]
@="%SystemRoot%\\system32\\imageres.dll,-102"

Ah, e pelo menos para mim, basta fechar e reabrir o Explorer (certifique-se de fechar todas as instâncias) é suficiente para recarregar o menu de contexto. Você não precisa reiniciar a máquina inteira.


Ao meu lado, o "Notepad ++" mudou HKEY_CLASSES_ROOT\.txtpara @="Notepad++_file". Então, adicionando HKEY_CLASSES_ROOT\Notepad++_filecom @="Textfile"fez o truque. Obrigado, boa descoberta!
Tino

4

Você não disse qual versão do Windows está usando - se for XP, você pode baixar o TweakUI PowerToy da Microsoft (também coberto na Wikipedia ). Clique em Modelos e adicione / remova tipos de arquivo ao conteúdo do seu coração. Aqui está o que parece: insira a descrição da imagem aqui


3

Parece que as outras soluções aqui estão desatualizadas. Pelo menos, nenhum deles funcionou para mim no Windows 10 v. 1709 Build 16299.192 ( Editar : ainda funciona na versão 1809). Fiz alguns testes em uma VM e é isso que funciona no Windows 10 1709, a partir de 2018.01.12:

Adicione o arquivo de registro:

Crie um novo arquivo de registro com o seguinte conteúdo:

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"

Substitua xyzpela extensão que você deseja adicionar. E substitua XYZ test filepelo nome da extensão do arquivo (por exemplo, um arquivo .scss seria "arquivo de folha de estilo sintaticamente impressionante"). Se você deseja usar um arquivo de modelo, veja a explicação abaixo.

Pode ser necessário reiniciar o Windows Explorer depois de adicionar o arquivo de registro. Você pode reiniciar o explorer.exe digitando o seguinte no CMD:

taskkill /f /im explorer.exe & start explorer.exe

insira a descrição da imagem aqui

insira a descrição da imagem aqui


Explicação do código:

[HKEY_CLASSES_ROOT\.xyz]
@="xyz"

Irá criar um novo tipo de arquivo no registro.

[HKEY_CLASSES_ROOT\.xyz\ShellNew]
"FileName"=""

Isso permitirá que você use um modelo para todos os novos arquivos desse formato. Por exemplo, poderíamos escrever "template.xyz"e criar um novo arquivo chamado "template.xyz" e usá-lo como modelo. Portanto, toda vez que você criar um novo arquivo, ele será preenchido com conteúdo pré-criado. Como Eduardo Molteni mencionou os caminhos para os arquivos de modelo são: %Userprofile%\Templates, %Allusersprofile%\Templatesou para todo o sistema %Systemroot%\ShellNew. Neste exemplo, não especificamos nenhum nome de modelo porque não queremos usá-lo.

[HKEY_CLASSES_ROOT\xyz]
@="XYZ test file"

Este será o nome do tipo de arquivo para o menu de contexto e os arquivos recém-criados. Tanto quanto eu sei, deixar esse valor em branco não funciona.

Ícone:

O ícone é adicionado quando o Windows associa um software ao tipo de arquivo.


1
Ótima resposta, obrigado. Observe no Windows 10, %userprofile%\Templatesmudou-se para %appdata%\Microsoft\Windows\Templatese %Allusersprofile%\Templatesmudou-se para%programdata%\Microsoft\Windows\Templates
TheImirOfGroofunkistan

2

Crie um arquivo de texto sem formatação e adicione a seguinte linha:


Windows Registry Editor Version 5.00

[HKEY_CLASSES_ROOT\.txt\ShellNew]
"NullFile"=""

Salve o arquivo e renomeie sua extensão para um arquivo .reg. Por exemplo "myNewItem.reg". Renomeie a extensão e não apenas o nome do arquivo como (myNewItem.reg.txt)

Clique duas vezes no arquivo e ele atualizará seu registro.

O próximo passo, e isso é muito importante, reinicie o computador diretamente. Portanto, NÃO tente abrir o menu de conteúdo para ver se já está funcionando! Primeiro reinicie o seu computador.

Se você abrir o menu de conteúdo para ver se o seu novo item incrível já está listado, o registro será restaurado ...

Tente também este programa: http://sourceforge.net/projects/shellnewhandler/


quer reinicie ou não imediatamente, não consigo fazer isso funcionar no Windows 8.1. Não faço ideia do porquê.
Gabriel Staples

1

A chave do registro:

HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\Discardable\PostSetup\ShellNew

não pode ser alterado para realizar o que é exibido ou não é exibido no menu de contexto "Novo". Se você alterar esse valor, ele será substituído pelo Explorer na próxima vez que você clicar com o botão direito do mouse e abrir o menu de contexto "Novo". Experimente e você verá o que quero dizer.


0

Esta informação é toda documentada oficialmente pela Microsoft ; normalmente destinado a desenvolvedores que estão registrando seus próprios novos tipos de arquivos.

Estendendo o Novo Submenu

Quando um usuário abre o menu Arquivo no Windows Explorer, o primeiro comando é Novo . Selecionar este comando exibe um submenu. Por padrão, ele contém dois comandos, Pasta e Atalho , que permitem aos usuários criar subpastas e atalhos. Este submenu pode ser estendido para incluir comandos de criação de arquivos para qualquer tipo de arquivo.

Para adicionar um comando de criação de arquivo ao submenu Novo , os arquivos do seu aplicativo devem ter um tipo de arquivo associado a eles. Inclua uma subchave ShellNew na chave da extensão do nome do arquivo. Quando o comando Novo do menu Arquivo é selecionado, o Shell o adiciona ao submenu Novo . A sequência de exibição do comando será a sequência descritiva atribuída ao ProgID do programa.

Atribua um ou mais valores de dados à subchave ShellNew para especificar o método de criação de arquivo. Os valores disponíveis a seguir.

  • Command: Executa um aplicativo. Este é um valor REG_SZ que especifica o caminho do aplicativo a ser executado. Por exemplo, você pode configurá-lo para iniciar um assistente.
  • Data: Cria um arquivo contendo dados especificados. Dados é um valor REG_BINARY com os dados do arquivo. Os dados serão ignorados se NullFile ou FileName for especificado.
  • FileName: Cria um arquivo que é uma cópia de um arquivo especificado. FileName é um valor REG_SZ , definido como o caminho completo do arquivo a ser copiado.
  • NullFile: Cria um arquivo vazio. NullFile não está atribuído a um valor. Se NullFile for especificado, os valores Data e FileName serão ignorados.

E exemplo, crie um novo arquivo vazio mpy :

HKEY_CLASSES_ROOT
  (Default) = MyProgram.1
  MyProgram.1
   .myp
      ShellNew
         NullFile

Para criar um novo arquivo com base em um arquivo de modelo específico:

HKEY_CLASSES_ROOT
   .myp
      (Default) = MyProgram.1
      MyProgram.1
         ShellNew
            FileName: REG_SZ = "%ProgramData%\Microsoft\Windows\Templates\MyNewTemplate.myp"
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.