Key Points
- Customize Windows “New” Context Menu via Registry:
Learn how to add or remove file types (e.g., .txt, .md, .log) from the New context menu using HKEY_CLASSES_ROOT\<extension>\ShellNew, enabling streamlined workflows for IT pros and MSPs. - Safe Registry Editing Practices:
Back up the registry key before edits (via File → Export) and create a system restore point. Always restart File Explorer after making changes (via Task Manager). - Common Registry Values for “New” Entries:
Use NullFile for empty files, FileName for templates, and Command for running custom operations when creating a new file via the menu. - Special Cases: Office Templates & ZIP Files
- .xlsx/.pptx: Require valid Office template files (e.g., excel12.xltx, powerpoint12.potx) or the “New” option won’t appear.
- .zip: Uses the CLSID-based CompressedFolder key with a Data binary value—not NullFile. NinjaOne+1
- Scaling Across Environments:
Deploy changes via .reg files, PowerShell scripts, or Group Policy Preferences. Be aware that user-level overrides under HKEY_CURRENT_USER\Software\Classes can take precedence over system-wide settings.
If you’ve ever wanted to add a new file in File Explorer, you’d probably use the context menu, “New” option. This Windows 10 element allows you to conveniently create new files and folders by simply right-clicking on File Explorer, scrolling down to the option “New”, and creating certain file types you want.
While it’s useful, it may be distracting or even cumbersome in managed environments. For IT professionals and managed service providers (MSPs), customizing the “New” context menu is recommended to streamline workflows and enforce consistency across environments.
For a visual guide, watch How to Add or Remove Default New Context Menu Items in Windows 10.
What is the “New” context menu in Windows 10?
The “New” context menu is the submenu that appears when you right-click on File Explorer and hover over the “New” option. It allows you to quickly create new items such as text documents, folders, and other file types registered on the system.
These entries are controlled through the Windows Registry, specifically through keys located under the HKEY_CLASSES_ROOT hive for each file extension.
How to remove items from the “New” context menu
Using the Registry Editor
⚠️ Remember: Making changes to the Registry Editor can lead to system instability if done incorrectly. We strongly recommend backing up your Registry before proceeding.
In addition to creating a system restore point, you should export any registry key before deleting or editing it. To do this, right-click the key in Registry Editor, select Export, and save it as a .reg file. You can restore it later by double-clicking the backup file.
- Press Windows + R, type regedit, and press Enter.
- Navigate to the following path:
- HKEY_CLASSES_ROOT\.file_extension (Replace .file_extension with the actual extension of the file type you want to remove, such as .bmp, .rtf, or .zip.)
- Under the selected file extension key, look for the subkey ShellNew. Right-click it and choose Delete. Confirm the action when prompted.
- Restart File Explorer to apply the changes.
- To do this:
- Open Task Manager (Ctrl + Shift + Esc)
- Look for Windows Explorer under Processes,
- Right-click on it, and choose Restart.
- To do this:
How to add items to the “New” context menu
If you want to add a custom file type to the “New” menu, such as .log, .md, or any custom file format used by your organization, you’ll need to manually create the appropriate registry key and values.
- Press Windows + R, type regedit, and press Enter.
- Navigate to the following path: HKEY_CLASSES_ROOT
- Right-click on HKEY_CLASSES_ROOT, select New > Key, and name it with the file extension you want to add, including the dot (for example, .log).
- Right-click on the file extension (for example, .log), select New > Key, and name the new key ShellNew.
- Inside the ShellNew key, you’ll need to create a value that defines how the new file is created. Command value types include:
- NullFile: Adds the entry and creates an empty file when selected. To use it, create a new string value, name it NullFile, and leave the value data blank.
- FileName: uses a template file.
- Command: Runs a custom command when the item is selected.
- Restart File Explorer to apply the changes.
For example, to add a new .txt file option, navigate to HKEY_CLASSES_ROOT\.txt\ShellNew, create the NullFile string value, and leave the value blank.
Examples of Registry paths for common file types
File Type | Registry Path | Value Type |
| Text Document | HKEY_CLASSES_ROOT\.txt\ShellNew | NullFile |
| Bitmap Image | HKEY_CLASSES_ROOT\.bmp\ShellNew | NullFile |
| Word Document | HKEY_CLASSES_ROOT\.docx\ShellNew | FileName |
| Rich Text Document | HKEY_CLASSES_ROOT\.rtf\ShellNew | NullFile |
| Compressed Folder | HKEY_CLASSES_ROOT\.zip\CompressedFolder\ShellNew | Data |
| Excel Spreadsheet | HKEY_CLASSES_ROOT\.xlsx\ShellNew | FileName |
| PowerPoint Presentation | HKEY_CLASSES_ROOT\.pptx\ShellNew | FileName |
| HTML File | HKEY_CLASSES_ROOT\.html\ShellNew | NullFile |
| XML Document | HKEY_CLASSES_ROOT\.xml\ShellNew | NullFile |
| JSON File | HKEY_CLASSES_ROOT\.json\ShellNew | NullFile |
| Markdown File (.md) | HKEY_CLASSES_ROOT\.md\ShellNew | NullFile |
| Log File (.log) | HKEY_CLASSES_ROOT\.log\ShellNew | NullFile |
| Batch Script (.bat) | HKEY_CLASSES_ROOT\.bat\ShellNew | NullFile |
| JavaScript File (.js) | HKEY_CLASSES_ROOT\.js\ShellNew | NullFile |
| Registry File (.reg) | HKEY_CLASSES_ROOT\.reg\ShellNew | NullFile |
Why modify the context menu, “New”?
While convenient, MSPs and IT enterprises may want to customize the entries that appear under “New”, such as:
- Minimize visual clutter: Reducing the number of available options keeps the menu tidy and improves usability.
- Improve productivity: Adding shortcuts saves time, particularly for file types that your organization frequently uses.
- Standardize user environments: Tailoring the context menu to include only the relevant file types encourages consistency across all endpoints.
- Enforce security or policy controls: Removing potentially risky file types (such as scripts) from the menu can help prevent unauthorized usage or policy violations.
Troubleshooting & tips for the “New” context menu in Windows 10
Missing file extension keys in the Registry
Some file types (particularly custom ones) might not have a predefined key under HKEY_CLASSES_ROOT. If you don’t see a key for the extension you want to modify, you can safely create one manually.
To do this:
- Right-click on the path HKEY_CLASSES_ROOT
- Choose New > Key, and name it with the full extension (including the period/dot before the file path).
- Then, add the ShellNew subkey as usual.
Registry changes not saving or reverting automatically
This is most likely because you lack sufficient permissions to make changes in the Registry. Make sure that you run Registry Editor as an administrator or ask your IT team to create the changes for you.
Additionally, take note that some antivirus software or endpoint protection tools may block registry changes. If needed, you can temporarily disable them to make the necessary changes.
“New” menu still showing old entries after deletion
Sometimes, File Explorer caches the context menu, and your changes won’t take effect until after you’ve restarted it. To do this, open Task Manager (Ctrl + Shift + Esc), locate Windows Explorer under Processes, right-click it, and press Restart.
If the problem persists, log off from your company and log back in. You can also try rebooting the machine to clear the cache and apply the Registry changes.
When to use NullFile vs. FileName
As its name suggests, a NullFile is useful for scenarios where you want to create a system object but discard all written data. It is recommended for basic formats such as .txt, .md, or .log.
In contrast, FileName is recommended when you want consistency in file content, such as preformatted Word or Excel documents. Just be sure that the template file is accessible at the specified path and remains static.
Deploying changes across multiple machines
For MSPs managing dozens (or hundreds) of devices, manually editing each Registry may be inefficient. If you need to apply Registry changes across your entire environment, we recommend creating a .reg file with your changes and using scripts, Group Policy Preferences, or endpoint management tools like NinjaOne to deploy it.
Want more control over your IT environment? NinjaOne IT Asset Management makes it easy to track assets, enforce consistency, and automate deployment—helping you reduce risk and improve operations.
Want to avoid Registry Editor
If you’re uncomfortable using the Registry Editor, you can use tools like ShellMenuView to modify or disable “New” menu entries. This tool simplifies the process of configuring the “New” context menu and reduces the risk of accidental misconfigurations, especially for less experienced IT personnel.
Accidentally deleted the wrong ShellNew key
If you’ve mistakenly removed a ShellNew key for a file type you still want, you can restore the option. To do this, recreate the key under the appropriate extension and re-add the necessary value (for example, NullFile or FileName). We recommend checking out the instructions listed above for further information.
If you managed to export the key before making changes, you can try reimporting it by double-clicking the .reg backup file.
Changes work for one user but not another
Registry modifications under HKEY_CLASSES_ROOT typically apply system-wide, but, in some cases, user-level overrides under HKEY_CURRENT_USER\Software\Classes may take precedence.
If your changes aren’t showing for a specific user, double-check that the user’s corresponding Registry hive and ensure it doesn’t have conflicting settings. You may need to apply changes at both levels for consistency.
Quick-Start Guide
While NinjaOne doesn’t have a direct native script specifically for adding or removing default context menu items in Windows 10, you have several options:
1. Scripting Capabilities:
NinjaOne supports custom scripts, including PowerShell and Registry modifications, which can be used to add or remove context menu items.
2. Existing Related Scripts:
– The platform has a script to “Enable or Disable Show File Extensions” which modifies Windows Explorer context menu options.
– You can create custom scripts to modify the registry and manipulate context menu items.
3. Recommended Approach:
– Use a PowerShell or Registry script to add/remove specific context menu items
– Deploy the script through NinjaOne’s Automation Library
– You can target specific devices or apply the script across multiple machines
For the most precise implementation, I recommend:
– Creating a custom PowerShell script that modifies the Windows Registry
– Using NinjaOne’s script deployment to apply changes
– Testing thoroughly before wide deployment
Using the context menu, “New”, correctly
We often take the many built-in elements in Windows 10 for granted. A perfect example is the “New” context menu, which we frequently use but rarely consider. Even so, customizing this element is a simple but powerful way to streamline your user experience.
For IT professionals or MSPs, customizing the “New” context menu may be useful in decluttering interfaces, standardizing workflows, and improving system usability.
