mirror of
https://github.com/reactos/reactos.git
synced 2024-09-28 13:34:53 +00:00
a83e40f6d1
Fixes the reg class key order for FS items. The existing code was close, but for some reason used `//` as the path separator for SystemFileAssociations! - Fixed SystemFileAssociations. - Swapped the order of `*` and `AllFilesystemObjects`. This is the documented order and can also be observed in Process Monitor. https://learn.microsoft.com/en-us/windows/win32/shell/fa-associationarray#about-association-arrays - Removed `(..., L"%s//%s", extension, wszClass)`, this does not seem to be a valid thing (`.TestAAExtWeird` in my tests). - Adds the `Unknown` class when appropriate. Not adding the `openas` verb to `Unknown` rgs registration now to mimic Windows, because ROS `CDefaultContextMenu` lacks verb de-duplication and the menu would end up with two "Open With" entries. This just uses `(cidl == 1)` to simulate Windows, while Windows on NT6 uses `MultiSelectModel=Single`, a NT6 feature not implemented in ROS. - The class order for folders was wrong and is still "wrong" in this PR, but I chose to use the Windows menu display order until the exact mechanics required in `CDefaultContextMenu` can be understood. - Extracts the extension from ANSI PIDLs. |
||
---|---|---|
.. | ||
CAdminToolsFolder.cpp | ||
CAdminToolsFolder.h | ||
CControlPanelFolder.cpp | ||
CControlPanelFolder.h | ||
CDesktopFolder.cpp | ||
CDesktopFolder.h | ||
CDrivesFolder.cpp | ||
CDrivesFolder.h | ||
CFontsFolder.cpp | ||
CFontsFolder.h | ||
CFSFolder.cpp | ||
CFSFolder.h | ||
CMyDocsFolder.cpp | ||
CMyDocsFolder.h | ||
CNetFolder.cpp | ||
CNetFolder.h | ||
CPrinterFolder.cpp | ||
CPrinterFolder.h | ||
CRecycleBin.cpp | ||
CRecycleBin.h | ||
CRegFolder.cpp |