Configuring Windows Explorer
Registry Overview - Some Keys Related to File Associations

This page is based on data from Windows 95.

*.txt | *.bat | *.exe | *.htm | *.html

HKCR is an abreviation for HKEY_CLASSES_ROOT

*.txt - Text Document

HKCR\.1st                        Default="txtfile"
HKCR\.DIC                        Default="txtfile"
HKCR\.exc                        Default="txtfile"

HKCR\.txt                        Default="txtfile"
                                 Content Type="text/plain"

HKCR\txtfile                     Default="Text Document"
                                 EditFlags=hex:00,00,01,00

HKCR\txtfile\DefaultIcon         Default="C:\WINDOWS\SYSTEM\shell32.dll,-152"

HKCR\txtfile\shell\open\command  Default="c:\windows\notepad.exe %1"
HKCR\txtfile\shell\print\command Default="C:\WINDOWS\NOTEPAD.EXE /p %1"

4 extensions are treated as Text Documents. The *.ini settings are almost identical except that icon -151 is used.

*.bat - MS-DOS Batch File

HKCR\.bat                        Default="batfile"

HKCR\batfile                     Default="MS-DOS Batch File"
                                 EditFlags=hex:D0,04,00,00

HKCR\batfile\DefaultIcon         Default="C:\WINDOWS\SYSTEM\shell32.dll,-153"

HKCR\batfile\shell\edit          Default="&Edit"
HKCR\batfile\shell\edit\command  Default="C:\WINDOWS\NOTEPAD.EXE %1"

HKCR\batfile\shell\open          EditFlags=hex:00,00,00,00
HKCR\batfile\shell\open\command  Default=""%1" %*"

HKCR\batfile\shell\print\command Default="C:\WINDOWS\NOTEPAD.EXE /p %1"

HKCR\batfile\shellex\PropertySheetHandlers\{86F19A00-42A0-1069-A2E9-08002B30309D}

*.exe - Application

HKCR\.exe                        Default="exefile"
                                 Content Type="application/x-msdownload"

HKCR\exefile                     Default="Application"
                                 EditFlags=hex:D8,07,00,00

HKCR\exefile\DefaultIcon         Default="%1"

HKCR\exefile\shell\open          EditFlags=hex:00,00,00,00
HKCR\exefile\shell\open\command  Default=""%1" %*"

HKCR\exefile\shell\VirusScan     Default="Scan for &Viruses"
HKCR\exefile\shell\VirusScan\command 
                                 Default="C:\Program Files\McAfee\VirusScan95\SCAN95.EXE"
HKCR\exefile\shell\VirusScan\ddeexec 
                                 Default="[ScanVirus("%1",%I)]"
HKCR\exefile\shell\VirusScan\ddeexec\application 
                                 Default="VirusScan"
HKCR\exefile\shell\VirusScan\ddeexec\topic 
                                 Default="AppProperties"

HKCR\exefile\shellex\PropertySheetHandlers\{86F19A00-42A0-1069-A2E9-08002B30309D}


*.htm & *.html - WWW Hypertext Document

HKCR\.htm                            Default="WWW_Hypertext_Document"
                                     Content Type="text/html"
HKCR\.html                           Default="WWW_Hypertext_Document"
                                     Content Type="text/html"

HKCR\WWW_Hypertext_Document          Default="WWW Hypertext Document"
                                     EditFlags=hex:00,00,00,00

HKCR\WWW_Hypertext_Document\shell    Default="Edit_in_Notepad"

..\shell\Browse_in_IE_2.0            Default="Browse in IE 2.0"
..\shell\Browse_in_IE_2.0\command    Default=""C:\Program Files\PLUS!\Microsoft Internet\ie20.exe" %1"

..\shell\Browse_in_IE_3.0            Default="Browse in IE 3.0"
..\shell\Browse_in_IE_3.0\command    Default=""C:\Program Files\Microsoft Internet\Iexplore.exe" %1"

..\shell\Browse_in_Netscape          Default="Browse in Netscape"
..\shell\Browse_in_Netscape\command  Default=""C:\Program Files\WorldNet\Program\Program\netscape.exe" %1"

..\shell\Edit_in_Notepad             Default="Edit in Notepad"
..\shell\Edit_in_Notepad\command     Default="c:\windows\notepad.exe "%1""

 And many more keys below this.

Yes, I have made a few changes here. Notice first that the example is not complete. If it where, it would be way too confusing. For an accurate representation, check your own registry. Notice that when a path contains spaces, it needs 2 sets of double quotes.

The default association is to htmlfile (Internet Document), not WWW_Hypertext_Document (WWW Hypertext Document). I changed this partly because I do not like working with DDE definitions, and partly to learn how the registry is used. Have fun.