Add Batch file (*.bat) to New menu of File Explorer

In this article, we will see how to get a useful context menu item to create a New -> Batch file. It will save you time if you need to create them from time to time. You get a new file with the BAT extension instantly with one click.

Usually, to create a new batch file, you can either create a new text file and rename its extension every single time to .bat or .cmd, or you can use Notepad. Using Notepad, it is possible to save the entered text as a batch file by selecting the File - Save menu item and typing the filename with the bat extension in quotes. It is necessary to add quotes to save it with the correct extension.

Instead, the New -> Batch file menu item is more useful. To get it working, apply the following simple Registry tweak.

  1. Open Registry Editor.
  2. Go to the following Registry key:
    HKEY_CLASSES_ROOT\.bat

    Tip: You can access any desired Registry key with one click.

  3. Create a new subkey here named "ShellNew". You will get
    HKEY_CLASSES_ROOT\.bat\ShellNew

  4. Under the ShellNew subkey, create a new string value named NullFile. Don't set its value data, leave it empty. This value indicates that Windows should create an empty file without any content.
  5. Again, under the ShellNew subkey, create a new string named ItemName. Set its value to the following string:
    @%SystemRoot%\System32\acppage.dll,-6002

    You will get the following:

Now, open the context menu of any folder. You can just right click the empty space on your Desktop. It will have a new item in the "New" context menu:

Once you click it, a new empty *.bat file will be created:

The next time you need to create a batch file, you can use this context menu item to save your time. You can use the same trick to create a .cmd file.

The same can be done using Winaero Tweaker. Go to Context Menu -> "New" Menu in File Explorer:
Use this option to avoid Registry editing.

Also, I made ready-to-use Registry files, so you can avoid manual Registry editing. An undo file is also included.

Download Registry files

That's it. This tricks works in Windows 7, Windows 8 and Windows 10. It should work in older Windows versions too.

Support us

Winaero greatly relies on your support. You can help the site keep bringing you interesting and useful content and software by using these options:

If you like this article, please share it using the buttons below. It won't take a lot from you, but it will help us grow. Thanks for your support!

Author: Sergey Tkachenko

Sergey Tkachenko is a software developer who started Winaero back in 2011. On this blog, Sergey is writing about everything connected to Microsoft, Windows and popular software. Follow him on Telegram, Twitter, and YouTube.

13 thoughts on “Add Batch file (*.bat) to New menu of File Explorer”

      1. Save this as a .reg file, and it will create a file called New Generic File with no extension.

        Windows Registry Editor Version 5.00

        [HKEY_CLASSES_ROOT\.generic]
        @=”genericfile”

        [HKEY_CLASSES_ROOT\.generic\ShellNew]
        “NullFile”=””
        “IconPath”=”%SystemRoot%\\System32\\imageres.dll,2”

        [HKEY_CLASSES_ROOT\.generic\ShellNew\Config]
        “NoExtension”=””

        [HKEY_CLASSES_ROOT\genericfile]
        @=”Generic file”

      1. I believe this is what he wants. Save as reg file or open regedit, and add manually this:

        Windows Registry Editor Version 5.00

        [HKEY_CLASSES_ROOT\.cmd]
        @=”cmdfile”

        [HKEY_CLASSES_ROOT\.cmd\ShellNew]
        “NullFile”=””

        You will then have a right-click item which will add “New Windows Command Script.cmd” on your desktop.

        1. The problem was solved at 16:55 (GMT+1) by the command script. I’ve just edited the “@%SystemRoot%\System32\acppage.dll,-6002” into “@%SystemRoot%\System32\acppage.dll,-6003” or so. And also, in the script is included the uninstaller, which removes entire key. By the way, thanks for help :)

  1. An interesting and useful variant would be to figure out how to nominate a template file, so .REG could contain the appropriate header and a Unicode .TXT file option could be made available.

    1. To create a template, you just have to add a StringValue called ‘FileName’ with the value set to the path of the template.

  2. New > *.ps1 file doesn’t work on Windows 11, only on Win10. Anyone know how to get it to work on Win11?

Leave a Reply

Your email address will not be published.

Exit mobile version
Using Telegram? Subscribe to the blog channel!
Hello. Add your message here.