If you frequently need to open files without file name extension in Windows, such as the hosts file or some Linux files, you might have found out that its pretty tedious work.
First, you cannot directly associate file without extension to a program, like the obvious Notepad choice. Even if you use the Open with.. option you will see that the box for "Always use the selected program to open this kind of file" is grayed out for files with no extension.
Second, files like hosts file needs administrative right to be edited/saved and for some reason (probably security), you cannot set Notepad so it's always opened with administrator rights, like you can do with other programs. So you need to do it the other way, and first launch Notepad with administrative rights and then browse to the hosts file to edit it.
For something that trivial, pretty heavy load of work. But, we have found a way how to make this much easier and finally Associate file with no extension to a program!
Associating file with no extension to a program
It's really simple and quick solution. Simply copy and paste the following lines to a newly created text file on your desktop, save it, and rename the extension to REG, so you can import it to Windows Registry. Our example is for Notepad++ installed in its default location. Change it to whatever text editor or other program you want files with no extension to be associated with.
Because you cannot launch Windows Notepad with administrator rights by default, it is best to pick another program like Notepad++, PSPad etc. where you can set it, so you can easily use it to edit system protected files like the hosts file.
@="<C:\Program Files (x86)\Notepad++\notepad++.exe> %1"
When your file is ready, double click on it, to add it to your Windows Registry - and that's it. When you now open file with no extension it will by opened by the default program.
NOTE: "NoExtFile" is not a predefined name, and therefore it can be anything. Adding other shell extensions is similar to adding shell extensions for file names with extensions.
@="<path to your notepad.exe or other text editor> %1"