# These entries must apparently exist in any win95-compatible registry.

# Shell Folders. The purpose of these are pretty self-evident.
# Primarily used by installation programs and the Explorer.

[HKEY_USERS\.Default\Software\Microsoft\Windows\CurrentVersion\Explorer\Shell Folders]
"Favorites"="C:\WINDOWS\Favorites"
"StartUp"="C:\WINDOWS\Start Menu\Programs\Startup"
"Desktop"="C:\WINDOWS\Desktop"
"Programs"="C:\WINDOWS\Start Menu\Programs"
"Fonts"="C:\WINDOWS\Fonts"
"SendTo"="C:\WINDOWS\SendTo"
"Start Menu"="C:\WINDOWS\Start Menu"
"Templates"="C:\WINDOWS\ShellNew"
"Recent"="C:\WINDOWS\Recent"
"NetHood"="C:\WINDOWS\NetHood"
"Personal"="C:\My Documents"

[HKEY_USERS\.Default\Software\Microsoft\Windows\CurrentVersion\Explorer\User Shell Folders]
"Personal"="C:\My Documents"
"Favorites"="C:\WINDOWS\Favorites"

# Same as above, but for HKEY_CURRENT_USER, not HKEY_USERS\.Default

[HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\Shell Folders]
"Favorites"="C:\WINDOWS\Favorites"
"StartUp"="C:\WINDOWS\Start Menu\Programs\Startup"
"Desktop"="C:\WINDOWS\Desktop"
"Programs"="C:\WINDOWS\Start Menu\Programs"
"Fonts"="C:\WINDOWS\Fonts"
"SendTo"="C:\WINDOWS\SendTo"
"Start Menu"="C:\WINDOWS\Start Menu"
"Templates"="C:\WINDOWS\ShellNew"
"Recent"="C:\WINDOWS\Recent"
"NetHood"="C:\WINDOWS\NetHood"
"Personal"="C:\My Documents"

[HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\User Shell Folders]
"Personal"="C:\My Documents"
"Favorites"="C:\WINDOWS\Favorites"

# The classfactory(?) entry for shortcuts (aka *.lnk files), used on the desktop and in the Start Menu.
# Used by installation programs to create shortcuts.

[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\CLSID\{00021401-0000-0000-C000-000000000046}]
@="Shortcut"

[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\CLSID\{00021401-0000-0000-C000-000000000046}\InProcServer32]
@="shell32.dll"
"ThreadingModel"="Apartment"

[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\CLSID\{00021401-0000-0000-C000-000000000046}\shellex\MayChangeDefaultMenu]
@=""

# Entries for DirectX. Used by high-performance multimedia applications, like games.

[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\CLSID\{D7B70EE0-4340-11CF-B063-0020AFC2CD35}]
@="DirectDraw Object"

[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\CLSID\{D7B70EE0-4340-11CF-B063-0020AFC2CD35}\InprocServer32]
@="ddraw.dll"
"ThreadingModel"="Both"

[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\CLSID\{593817A0-7DB3-11CF-A2DE-00AA00B93356}]
@="DirectDraw Clipper Object"

[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\CLSID\{593817A0-7DB3-11CF-A2DE-00AA00B93356}\InprocServer32]
@="ddraw.dll"
"ThreadingModel"="Both"

[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\CLSID\{47D4D946-62E8-11cf-93BC-444553540000}]
@="DirectSound Object"

[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\CLSID\{47D4D946-62E8-11cf-93BC-444553540000}\InprocServer32]
@="dsound.dll"
"ThreadingModel"="Both"

