shell32/tests: Support alternate parent folders.

This commit is contained in:
Andrew Eikum 2015-03-11 12:12:54 -05:00 committed by Alexandre Julliard
parent 122f71866e
commit fdbdad03f3
1 changed files with 114 additions and 114 deletions

View File

@ -888,8 +888,8 @@ if (0) { /* crashes */
/* Standard CSIDL values (and their flags) uses only two less-significant bytes */ /* Standard CSIDL values (and their flags) uses only two less-significant bytes */
#define NO_CSIDL 0x10000 #define NO_CSIDL 0x10000
#define WINE_ATTRIBUTES_OPTIONAL 0x20000 #define WINE_ATTRIBUTES_OPTIONAL 0x20000
#define KNOWN_FOLDER(id, csidl, name, category, parent, relative_path, parsing_name, attributes, definitionFlags) \ #define KNOWN_FOLDER(id, csidl, name, category, parent1, parent2, relative_path, parsing_name, attributes, definitionFlags) \
{ &id, # id, csidl, # csidl, name, category, &parent, # parent, relative_path, parsing_name, attributes, definitionFlags, __LINE__ } { &id, # id, csidl, # csidl, name, category, {&parent1, &parent2}, relative_path, parsing_name, attributes, definitionFlags, __LINE__ }
/* non-published known folders test */ /* non-published known folders test */
static const GUID _FOLDERID_CryptoKeys = {0xB88F4DAA, 0xE7BD, 0x49A9, {0xB7, 0x4D, 0x02, 0x88, 0x5A, 0x5D, 0xC7, 0x65} }; static const GUID _FOLDERID_CryptoKeys = {0xB88F4DAA, 0xE7BD, 0x49A9, {0xB7, 0x4D, 0x02, 0x88, 0x5A, 0x5D, 0xC7, 0x65} };
@ -904,8 +904,7 @@ struct knownFolderDef {
const char *sCsidl; const char *sCsidl;
const char *sName; const char *sName;
const KF_CATEGORY category; const KF_CATEGORY category;
const KNOWNFOLDERID *fidParent; const KNOWNFOLDERID *fidParents[2];
const char *sParent;
const char *sRelativePath; const char *sRelativePath;
const char *sParsingName; const char *sParsingName;
const DWORD attributes; const DWORD attributes;
@ -927,7 +926,7 @@ static const struct knownFolderDef known_folders[] = {
NO_CSIDL, NO_CSIDL,
"AddNewProgramsFolder", "AddNewProgramsFolder",
KF_CATEGORY_VIRTUAL, KF_CATEGORY_VIRTUAL,
GUID_NULL, GUID_NULL, GUID_NULL,
NULL, NULL,
"::{21EC2020-3AEA-1069-A2DD-08002B30309D}\\::{15eae92e-f17a-4431-9f28-805e482dafd4}\0" "::{21EC2020-3AEA-1069-A2DD-08002B30309D}\\::{15eae92e-f17a-4431-9f28-805e482dafd4}\0"
"shell:::{26EE0668-A00A-44D7-9371-BEB064C98683}\\0\\::{15eae92e-f17a-4431-9f28-805e482dafd4}\0\0" /* 6.1 */, "shell:::{26EE0668-A00A-44D7-9371-BEB064C98683}\\0\\::{15eae92e-f17a-4431-9f28-805e482dafd4}\0\0" /* 6.1 */,
@ -937,7 +936,7 @@ static const struct knownFolderDef known_folders[] = {
CSIDL_ADMINTOOLS, CSIDL_ADMINTOOLS,
"Administrative Tools", "Administrative Tools",
KF_CATEGORY_PERUSER, KF_CATEGORY_PERUSER,
FOLDERID_Programs, FOLDERID_Programs, GUID_NULL,
"Administrative Tools", "Administrative Tools",
NULL, NULL,
FILE_ATTRIBUTE_READONLY, FILE_ATTRIBUTE_READONLY,
@ -946,7 +945,7 @@ static const struct knownFolderDef known_folders[] = {
NO_CSIDL, NO_CSIDL,
"AppUpdatesFolder", "AppUpdatesFolder",
KF_CATEGORY_VIRTUAL, KF_CATEGORY_VIRTUAL,
GUID_NULL, GUID_NULL, GUID_NULL,
NULL, NULL,
"::{21EC2020-3AEA-1069-A2DD-08002B30309D}\\::{7b81be6a-ce2b-4676-a29e-eb907a5126c5}\\::{d450a8a1-9568-45c7-9c0e-b4f9fb4537bd}\0" "::{21EC2020-3AEA-1069-A2DD-08002B30309D}\\::{7b81be6a-ce2b-4676-a29e-eb907a5126c5}\\::{d450a8a1-9568-45c7-9c0e-b4f9fb4537bd}\0"
"::{26EE0668-A00A-44D7-9371-BEB064C98683}\\0\\::{7b81be6a-ce2b-4676-a29e-eb907a5126c5}\\::{d450a8a1-9568-45c7-9c0e-b4f9fb4537bd}\0\0" /* 6.1 */, "::{26EE0668-A00A-44D7-9371-BEB064C98683}\\0\\::{7b81be6a-ce2b-4676-a29e-eb907a5126c5}\\::{d450a8a1-9568-45c7-9c0e-b4f9fb4537bd}\0\0" /* 6.1 */,
@ -956,7 +955,7 @@ static const struct knownFolderDef known_folders[] = {
CSIDL_CDBURN_AREA, CSIDL_CDBURN_AREA,
"CD Burning", "CD Burning",
KF_CATEGORY_PERUSER, KF_CATEGORY_PERUSER,
FOLDERID_LocalAppData, FOLDERID_LocalAppData, GUID_NULL,
"Microsoft\\Windows\\Burn\\Burn", "Microsoft\\Windows\\Burn\\Burn",
NULL, NULL,
FILE_ATTRIBUTE_READONLY, FILE_ATTRIBUTE_READONLY,
@ -965,7 +964,7 @@ static const struct knownFolderDef known_folders[] = {
NO_CSIDL, NO_CSIDL,
"ChangeRemoveProgramsFolder", "ChangeRemoveProgramsFolder",
KF_CATEGORY_VIRTUAL, KF_CATEGORY_VIRTUAL,
GUID_NULL, GUID_NULL, GUID_NULL,
NULL, NULL,
"::{21EC2020-3AEA-1069-A2DD-08002B30309D}\\::{7b81be6a-ce2b-4676-a29e-eb907a5126c5}\0" "::{21EC2020-3AEA-1069-A2DD-08002B30309D}\\::{7b81be6a-ce2b-4676-a29e-eb907a5126c5}\0"
"::{26EE0668-A00A-44D7-9371-BEB064C98683}\\0\\::{7b81be6a-ce2b-4676-a29e-eb907a5126c5}\0\0" /* 6.1 */, "::{26EE0668-A00A-44D7-9371-BEB064C98683}\\0\\::{7b81be6a-ce2b-4676-a29e-eb907a5126c5}\0\0" /* 6.1 */,
@ -975,7 +974,7 @@ static const struct knownFolderDef known_folders[] = {
CSIDL_COMMON_ADMINTOOLS, CSIDL_COMMON_ADMINTOOLS,
"Common Administrative Tools", "Common Administrative Tools",
KF_CATEGORY_COMMON, KF_CATEGORY_COMMON,
FOLDERID_CommonPrograms, FOLDERID_CommonPrograms, GUID_NULL,
"Administrative Tools", "Administrative Tools",
NULL, NULL,
FILE_ATTRIBUTE_READONLY, FILE_ATTRIBUTE_READONLY,
@ -983,7 +982,7 @@ static const struct knownFolderDef known_folders[] = {
KNOWN_FOLDER(FOLDERID_CommonOEMLinks, KNOWN_FOLDER(FOLDERID_CommonOEMLinks,
CSIDL_COMMON_OEM_LINKS,"OEM Links", CSIDL_COMMON_OEM_LINKS,"OEM Links",
KF_CATEGORY_COMMON, KF_CATEGORY_COMMON,
FOLDERID_ProgramData, FOLDERID_ProgramData, GUID_NULL,
"OEM Links", "OEM Links",
NULL, NULL,
0, 0,
@ -992,7 +991,7 @@ static const struct knownFolderDef known_folders[] = {
CSIDL_COMMON_PROGRAMS, CSIDL_COMMON_PROGRAMS,
"Common Programs", "Common Programs",
KF_CATEGORY_COMMON, KF_CATEGORY_COMMON,
FOLDERID_CommonStartMenu, FOLDERID_CommonStartMenu, GUID_NULL,
"Programs", "Programs",
NULL, NULL,
FILE_ATTRIBUTE_READONLY, FILE_ATTRIBUTE_READONLY,
@ -1001,7 +1000,7 @@ static const struct knownFolderDef known_folders[] = {
CSIDL_COMMON_STARTMENU, CSIDL_COMMON_STARTMENU,
"Common Start Menu", "Common Start Menu",
KF_CATEGORY_COMMON, KF_CATEGORY_COMMON,
FOLDERID_ProgramData, FOLDERID_ProgramData, GUID_NULL,
"Microsoft\\Windows\\Start Menu\0", "Microsoft\\Windows\\Start Menu\0",
NULL, NULL,
FILE_ATTRIBUTE_READONLY, FILE_ATTRIBUTE_READONLY,
@ -1010,7 +1009,7 @@ static const struct knownFolderDef known_folders[] = {
CSIDL_COMMON_STARTUP, CSIDL_COMMON_STARTUP,
"Common Startup", "Common Startup",
KF_CATEGORY_COMMON, KF_CATEGORY_COMMON,
FOLDERID_CommonPrograms, FOLDERID_CommonPrograms, GUID_NULL,
"StartUp", "StartUp",
NULL, NULL,
FILE_ATTRIBUTE_READONLY, FILE_ATTRIBUTE_READONLY,
@ -1019,7 +1018,7 @@ static const struct knownFolderDef known_folders[] = {
CSIDL_COMMON_TEMPLATES, CSIDL_COMMON_TEMPLATES,
"Common Templates", "Common Templates",
KF_CATEGORY_COMMON, KF_CATEGORY_COMMON,
FOLDERID_ProgramData, FOLDERID_ProgramData, GUID_NULL,
"Microsoft\\Windows\\Templates\0", "Microsoft\\Windows\\Templates\0",
NULL, NULL,
0, 0,
@ -1028,7 +1027,7 @@ static const struct knownFolderDef known_folders[] = {
CSIDL_DRIVES, CSIDL_DRIVES,
"MyComputerFolder", "MyComputerFolder",
KF_CATEGORY_VIRTUAL, KF_CATEGORY_VIRTUAL,
GUID_NULL, GUID_NULL, GUID_NULL,
NULL, NULL,
"::{20D04FE0-3AEA-1069-A2D8-08002B30309D}\0\0", "::{20D04FE0-3AEA-1069-A2D8-08002B30309D}\0\0",
0, 0,
@ -1037,7 +1036,7 @@ static const struct knownFolderDef known_folders[] = {
NO_CSIDL, NO_CSIDL,
"ConflictFolder", "ConflictFolder",
KF_CATEGORY_VIRTUAL, KF_CATEGORY_VIRTUAL,
GUID_NULL, GUID_NULL, GUID_NULL,
NULL, NULL,
"::{21EC2020-3AEA-1069-A2DD-08002B30309D}\\::{9C73F5E5-7AE7-4E32-A8E8-8D23B85255BF}\\::{E413D040-6788-4C22-957E-175D1C513A34},\0" "::{21EC2020-3AEA-1069-A2DD-08002B30309D}\\::{9C73F5E5-7AE7-4E32-A8E8-8D23B85255BF}\\::{E413D040-6788-4C22-957E-175D1C513A34},\0"
"::{26EE0668-A00A-44D7-9371-BEB064C98683}\\0\\::{9C73F5E5-7AE7-4E32-A8E8-8D23B85255BF}\\::{E413D040-6788-4C22-957E-175D1C513A34},\0\0" /* 6.1 */, "::{26EE0668-A00A-44D7-9371-BEB064C98683}\\0\\::{9C73F5E5-7AE7-4E32-A8E8-8D23B85255BF}\\::{E413D040-6788-4C22-957E-175D1C513A34},\0\0" /* 6.1 */,
@ -1047,7 +1046,7 @@ static const struct knownFolderDef known_folders[] = {
CSIDL_CONNECTIONS, CSIDL_CONNECTIONS,
"ConnectionsFolder", "ConnectionsFolder",
KF_CATEGORY_VIRTUAL, KF_CATEGORY_VIRTUAL,
GUID_NULL, GUID_NULL, GUID_NULL,
NULL, NULL,
"::{21EC2020-3AEA-1069-A2DD-08002B30309D}\\::{7007ACC7-3202-11D1-AAD2-00805FC1270E}\0" "::{21EC2020-3AEA-1069-A2DD-08002B30309D}\\::{7007ACC7-3202-11D1-AAD2-00805FC1270E}\0"
"::{26EE0668-A00A-44D7-9371-BEB064C98683}\\0\\::{7007ACC7-3202-11D1-AAD2-00805FC1270E}\0\0" /* 6.1 */, "::{26EE0668-A00A-44D7-9371-BEB064C98683}\\0\\::{7007ACC7-3202-11D1-AAD2-00805FC1270E}\0\0" /* 6.1 */,
@ -1057,7 +1056,7 @@ static const struct knownFolderDef known_folders[] = {
NO_CSIDL, NO_CSIDL,
"Contacts", "Contacts",
KF_CATEGORY_PERUSER, KF_CATEGORY_PERUSER,
FOLDERID_Profile, FOLDERID_Profile, GUID_NULL,
"Contacts", "Contacts",
"::{59031a47-3f72-44a7-89c5-5595fe6b30ee}\\{56784854-C6CB-462B-8169-88E350ACB882}\0\0", "::{59031a47-3f72-44a7-89c5-5595fe6b30ee}\\{56784854-C6CB-462B-8169-88E350ACB882}\0\0",
FILE_ATTRIBUTE_READONLY, FILE_ATTRIBUTE_READONLY,
@ -1066,7 +1065,7 @@ static const struct knownFolderDef known_folders[] = {
CSIDL_CONTROLS, CSIDL_CONTROLS,
"ControlPanelFolder", "ControlPanelFolder",
KF_CATEGORY_VIRTUAL, KF_CATEGORY_VIRTUAL,
GUID_NULL, GUID_NULL, GUID_NULL,
NULL, NULL,
"::{21EC2020-3AEA-1069-A2DD-08002B30309D}\0" "::{21EC2020-3AEA-1069-A2DD-08002B30309D}\0"
"::{26EE0668-A00A-44D7-9371-BEB064C98683}\\0\0\0" /* 6.1 */, "::{26EE0668-A00A-44D7-9371-BEB064C98683}\\0\0\0" /* 6.1 */,
@ -1076,7 +1075,7 @@ static const struct knownFolderDef known_folders[] = {
CSIDL_COOKIES, CSIDL_COOKIES,
"Cookies", "Cookies",
KF_CATEGORY_PERUSER, KF_CATEGORY_PERUSER,
FOLDERID_RoamingAppData, FOLDERID_RoamingAppData, FOLDERID_LocalAppData,
"Microsoft\\Windows\\Cookies\0Microsoft\\Windows\\INetCookies\0" /* win8 */, "Microsoft\\Windows\\Cookies\0Microsoft\\Windows\\INetCookies\0" /* win8 */,
NULL, NULL,
0, 0,
@ -1085,7 +1084,7 @@ static const struct knownFolderDef known_folders[] = {
CSIDL_DESKTOP, CSIDL_DESKTOP,
"Desktop", "Desktop",
KF_CATEGORY_PERUSER, KF_CATEGORY_PERUSER,
FOLDERID_Profile, FOLDERID_Profile, GUID_NULL,
"Desktop", "Desktop",
NULL, NULL,
FILE_ATTRIBUTE_READONLY, FILE_ATTRIBUTE_READONLY,
@ -1094,7 +1093,7 @@ static const struct knownFolderDef known_folders[] = {
NO_CSIDL, NO_CSIDL,
"Device Metadata Store", "Device Metadata Store",
KF_CATEGORY_COMMON, KF_CATEGORY_COMMON,
FOLDERID_ProgramData, FOLDERID_ProgramData, GUID_NULL,
"Microsoft\\Windows\\DeviceMetadataStore\0", "Microsoft\\Windows\\DeviceMetadataStore\0",
NULL, NULL,
0, 0,
@ -1103,7 +1102,7 @@ static const struct knownFolderDef known_folders[] = {
CSIDL_MYDOCUMENTS, CSIDL_MYDOCUMENTS,
"Personal", "Personal",
KF_CATEGORY_PERUSER, KF_CATEGORY_PERUSER,
FOLDERID_Profile, FOLDERID_Profile, GUID_NULL,
"Documents\0", "Documents\0",
"::{59031a47-3f72-44a7-89c5-5595fe6b30ee}\\{FDD39AD0-238F-46AF-ADB4-6C85480369C7}\0shell:::{20D04FE0-3AEA-1069-A2D8-08002B30309D}\\::{A8CDFF1C-4878-43be-B5FD-F8091C1C60D0}\0\0", /* win8 */ "::{59031a47-3f72-44a7-89c5-5595fe6b30ee}\\{FDD39AD0-238F-46AF-ADB4-6C85480369C7}\0shell:::{20D04FE0-3AEA-1069-A2D8-08002B30309D}\\::{A8CDFF1C-4878-43be-B5FD-F8091C1C60D0}\0\0", /* win8 */
FILE_ATTRIBUTE_READONLY, FILE_ATTRIBUTE_READONLY,
@ -1112,7 +1111,7 @@ static const struct knownFolderDef known_folders[] = {
NO_CSIDL, NO_CSIDL,
"DocumentsLibrary", "DocumentsLibrary",
KF_CATEGORY_PERUSER, KF_CATEGORY_PERUSER,
FOLDERID_Libraries, FOLDERID_Libraries, GUID_NULL,
"Documents.library-ms\0", "Documents.library-ms\0",
"::{031E4825-7B94-4dc3-B131-E946B44C8DD5}\\{7b0db17d-9cd2-4a93-9733-46cc89022e7c}\0\0", "::{031E4825-7B94-4dc3-B131-E946B44C8DD5}\\{7b0db17d-9cd2-4a93-9733-46cc89022e7c}\0\0",
0, 0,
@ -1121,7 +1120,7 @@ static const struct knownFolderDef known_folders[] = {
NO_CSIDL, NO_CSIDL,
"Downloads", "Downloads",
KF_CATEGORY_PERUSER, KF_CATEGORY_PERUSER,
FOLDERID_Profile, FOLDERID_Profile, GUID_NULL,
"Downloads\0", "Downloads\0",
"(null)\0shell:::{20D04FE0-3AEA-1069-A2D8-08002B30309D}\\::{374DE290-123F-4565-9164-39C4925E467B}\0\0", /* win8 */ "(null)\0shell:::{20D04FE0-3AEA-1069-A2D8-08002B30309D}\\::{374DE290-123F-4565-9164-39C4925E467B}\0\0", /* win8 */
FILE_ATTRIBUTE_READONLY, FILE_ATTRIBUTE_READONLY,
@ -1130,7 +1129,7 @@ static const struct knownFolderDef known_folders[] = {
CSIDL_FAVORITES, CSIDL_FAVORITES,
"Favorites", "Favorites",
KF_CATEGORY_PERUSER, KF_CATEGORY_PERUSER,
FOLDERID_Profile, FOLDERID_Profile, GUID_NULL,
"Favorites\0", "Favorites\0",
NULL, NULL,
FILE_ATTRIBUTE_READONLY, FILE_ATTRIBUTE_READONLY,
@ -1139,7 +1138,7 @@ static const struct knownFolderDef known_folders[] = {
CSIDL_FONTS, CSIDL_FONTS,
"Fonts", "Fonts",
KF_CATEGORY_FIXED, KF_CATEGORY_FIXED,
FOLDERID_Windows, FOLDERID_Windows, GUID_NULL,
NULL, NULL,
NULL, NULL,
0, 0,
@ -1148,7 +1147,7 @@ static const struct knownFolderDef known_folders[] = {
NO_CSIDL, NO_CSIDL,
"Games", "Games",
KF_CATEGORY_VIRTUAL, KF_CATEGORY_VIRTUAL,
GUID_NULL, GUID_NULL, GUID_NULL,
NULL, NULL,
"::{ED228FDF-9EA8-4870-83b1-96b02CFE0D52}\0\0", "::{ED228FDF-9EA8-4870-83b1-96b02CFE0D52}\0\0",
0, 0,
@ -1157,7 +1156,7 @@ static const struct knownFolderDef known_folders[] = {
NO_CSIDL, NO_CSIDL,
"GameTasks", "GameTasks",
KF_CATEGORY_PERUSER, KF_CATEGORY_PERUSER,
FOLDERID_LocalAppData, FOLDERID_LocalAppData, GUID_NULL,
"Microsoft\\Windows\\GameExplorer\0", "Microsoft\\Windows\\GameExplorer\0",
NULL, NULL,
0, 0,
@ -1166,7 +1165,7 @@ static const struct knownFolderDef known_folders[] = {
CSIDL_HISTORY, CSIDL_HISTORY,
"History", "History",
KF_CATEGORY_PERUSER, KF_CATEGORY_PERUSER,
FOLDERID_LocalAppData, FOLDERID_LocalAppData, GUID_NULL,
"Microsoft\\Windows\\History\0", "Microsoft\\Windows\\History\0",
NULL, NULL,
0, 0,
@ -1175,7 +1174,7 @@ static const struct knownFolderDef known_folders[] = {
NO_CSIDL, NO_CSIDL,
"HomeGroupFolder", "HomeGroupFolder",
KF_CATEGORY_VIRTUAL, KF_CATEGORY_VIRTUAL,
GUID_NULL, GUID_NULL, GUID_NULL,
NULL, NULL,
"::{B4FB3F98-C1EA-428d-A78A-D1F5659CBA93}\0\0", "::{B4FB3F98-C1EA-428d-A78A-D1F5659CBA93}\0\0",
0, 0,
@ -1184,7 +1183,7 @@ static const struct knownFolderDef known_folders[] = {
NO_CSIDL, NO_CSIDL,
"ImplicitAppShortcuts", "ImplicitAppShortcuts",
KF_CATEGORY_PERUSER, KF_CATEGORY_PERUSER,
FOLDERID_UserPinned, FOLDERID_UserPinned, GUID_NULL,
"ImplicitAppShortcuts\0", "ImplicitAppShortcuts\0",
NULL, NULL,
0, 0,
@ -1193,7 +1192,7 @@ static const struct knownFolderDef known_folders[] = {
CSIDL_INTERNET_CACHE, CSIDL_INTERNET_CACHE,
"Cache", "Cache",
KF_CATEGORY_PERUSER, KF_CATEGORY_PERUSER,
FOLDERID_LocalAppData, FOLDERID_LocalAppData, GUID_NULL,
"Microsoft\\Windows\\Temporary Internet Files\0Microsoft\\Windows\\INetCache\0\0", /* win8 */ "Microsoft\\Windows\\Temporary Internet Files\0Microsoft\\Windows\\INetCache\0\0", /* win8 */
NULL, NULL,
0, 0,
@ -1202,7 +1201,7 @@ static const struct knownFolderDef known_folders[] = {
CSIDL_INTERNET, CSIDL_INTERNET,
"InternetFolder", "InternetFolder",
KF_CATEGORY_VIRTUAL, KF_CATEGORY_VIRTUAL,
GUID_NULL, GUID_NULL, GUID_NULL,
NULL, NULL,
"::{871C5380-42A0-1069-A2EA-08002B30309D}\0\0", "::{871C5380-42A0-1069-A2EA-08002B30309D}\0\0",
0, 0,
@ -1211,7 +1210,7 @@ static const struct knownFolderDef known_folders[] = {
NO_CSIDL, NO_CSIDL,
"Libraries", "Libraries",
KF_CATEGORY_PERUSER, KF_CATEGORY_PERUSER,
FOLDERID_RoamingAppData, FOLDERID_RoamingAppData, GUID_NULL,
"Microsoft\\Windows\\Libraries\0", "Microsoft\\Windows\\Libraries\0",
NULL, NULL,
0, 0,
@ -1220,7 +1219,7 @@ static const struct knownFolderDef known_folders[] = {
NO_CSIDL, NO_CSIDL,
"Links", "Links",
KF_CATEGORY_PERUSER, KF_CATEGORY_PERUSER,
FOLDERID_Profile, FOLDERID_Profile, GUID_NULL,
"Links\0", "Links\0",
"::{59031a47-3f72-44a7-89c5-5595fe6b30ee}\\{bfb9d5e0-c6a9-404c-b2b2-ae6db6af4968}\0\0", "::{59031a47-3f72-44a7-89c5-5595fe6b30ee}\\{bfb9d5e0-c6a9-404c-b2b2-ae6db6af4968}\0\0",
FILE_ATTRIBUTE_READONLY, FILE_ATTRIBUTE_READONLY,
@ -1229,7 +1228,7 @@ static const struct knownFolderDef known_folders[] = {
CSIDL_LOCAL_APPDATA, CSIDL_LOCAL_APPDATA,
"Local AppData", "Local AppData",
KF_CATEGORY_PERUSER, KF_CATEGORY_PERUSER,
FOLDERID_Profile, FOLDERID_Profile, GUID_NULL,
"AppData\\Local\0", "AppData\\Local\0",
NULL, NULL,
0, 0,
@ -1238,7 +1237,7 @@ static const struct knownFolderDef known_folders[] = {
NO_CSIDL, NO_CSIDL,
"LocalAppDataLow", "LocalAppDataLow",
KF_CATEGORY_PERUSER, KF_CATEGORY_PERUSER,
FOLDERID_Profile, FOLDERID_Profile, GUID_NULL,
"AppData\\LocalLow\0", "AppData\\LocalLow\0",
NULL, NULL,
FILE_ATTRIBUTE_NOT_CONTENT_INDEXED, FILE_ATTRIBUTE_NOT_CONTENT_INDEXED,
@ -1247,7 +1246,7 @@ static const struct knownFolderDef known_folders[] = {
CSIDL_RESOURCES_LOCALIZED, CSIDL_RESOURCES_LOCALIZED,
"LocalizedResourcesDir", "LocalizedResourcesDir",
KF_CATEGORY_FIXED, KF_CATEGORY_FIXED,
GUID_NULL, GUID_NULL, GUID_NULL,
NULL, NULL,
NULL, NULL,
0, 0,
@ -1256,7 +1255,7 @@ static const struct knownFolderDef known_folders[] = {
CSIDL_MYMUSIC, CSIDL_MYMUSIC,
"My Music", "My Music",
KF_CATEGORY_PERUSER, KF_CATEGORY_PERUSER,
FOLDERID_Profile, FOLDERID_Profile, GUID_NULL,
"Music\0", "Music\0",
"::{59031a47-3f72-44a7-89c5-5595fe6b30ee}\\{4BD8D571-6D19-48D3-BE97-422220080E43}\0shell:::{20D04FE0-3AEA-1069-A2D8-08002B30309D}\\::{1CF1260C-4DD0-4EBB-811F-33C572699FDE}\0\0", /* win8 */ "::{59031a47-3f72-44a7-89c5-5595fe6b30ee}\\{4BD8D571-6D19-48D3-BE97-422220080E43}\0shell:::{20D04FE0-3AEA-1069-A2D8-08002B30309D}\\::{1CF1260C-4DD0-4EBB-811F-33C572699FDE}\0\0", /* win8 */
FILE_ATTRIBUTE_READONLY, FILE_ATTRIBUTE_READONLY,
@ -1265,7 +1264,7 @@ static const struct knownFolderDef known_folders[] = {
NO_CSIDL, NO_CSIDL,
"MusicLibrary", "MusicLibrary",
KF_CATEGORY_PERUSER, KF_CATEGORY_PERUSER,
FOLDERID_Libraries, FOLDERID_Libraries, GUID_NULL,
"Music.library-ms\0", "Music.library-ms\0",
"::{031E4825-7B94-4dc3-B131-E946B44C8DD5}\\{2112AB0A-C86A-4ffe-A368-0DE96E47012E}\0\0", "::{031E4825-7B94-4dc3-B131-E946B44C8DD5}\\{2112AB0A-C86A-4ffe-A368-0DE96E47012E}\0\0",
0, 0,
@ -1274,7 +1273,7 @@ static const struct knownFolderDef known_folders[] = {
CSIDL_NETHOOD, CSIDL_NETHOOD,
"NetHood", "NetHood",
KF_CATEGORY_PERUSER, KF_CATEGORY_PERUSER,
FOLDERID_RoamingAppData, FOLDERID_RoamingAppData, GUID_NULL,
"Microsoft\\Windows\\Network Shortcuts\0", "Microsoft\\Windows\\Network Shortcuts\0",
NULL, NULL,
0, 0,
@ -1283,7 +1282,7 @@ static const struct knownFolderDef known_folders[] = {
CSIDL_NETWORK, CSIDL_NETWORK,
"NetworkPlacesFolder", "NetworkPlacesFolder",
KF_CATEGORY_VIRTUAL, KF_CATEGORY_VIRTUAL,
GUID_NULL, GUID_NULL, GUID_NULL,
NULL, NULL,
"::{F02C1A0D-BE21-4350-88B0-7367FC96EF3C}\0\0", "::{F02C1A0D-BE21-4350-88B0-7367FC96EF3C}\0\0",
0, 0,
@ -1292,7 +1291,7 @@ static const struct knownFolderDef known_folders[] = {
NO_CSIDL, NO_CSIDL,
"Original Images", "Original Images",
KF_CATEGORY_PERUSER, KF_CATEGORY_PERUSER,
FOLDERID_LocalAppData, FOLDERID_LocalAppData, GUID_NULL,
"Microsoft\\Windows Photo Gallery\\Original Images\0", "Microsoft\\Windows Photo Gallery\\Original Images\0",
NULL, NULL,
0, 0,
@ -1301,7 +1300,7 @@ static const struct knownFolderDef known_folders[] = {
NO_CSIDL, NO_CSIDL,
"PhotoAlbums", "PhotoAlbums",
KF_CATEGORY_PERUSER, KF_CATEGORY_PERUSER,
FOLDERID_Pictures, FOLDERID_Pictures, GUID_NULL,
"Slide Shows\0", "Slide Shows\0",
NULL, NULL,
FILE_ATTRIBUTE_READONLY, FILE_ATTRIBUTE_READONLY,
@ -1310,7 +1309,7 @@ static const struct knownFolderDef known_folders[] = {
CSIDL_MYPICTURES, CSIDL_MYPICTURES,
"My Pictures", "My Pictures",
KF_CATEGORY_PERUSER, KF_CATEGORY_PERUSER,
FOLDERID_Profile, FOLDERID_Profile, GUID_NULL,
"Pictures\0", "Pictures\0",
"::{59031a47-3f72-44a7-89c5-5595fe6b30ee}\\{33E28130-4E1E-4676-835A-98395C3BC3BB}\0shell:::{20D04FE0-3AEA-1069-A2D8-08002B30309D}\\::{3ADD1653-EB32-4CB0-BBD7-DFA0ABB5ACCA}\0\0", /* win8 */ "::{59031a47-3f72-44a7-89c5-5595fe6b30ee}\\{33E28130-4E1E-4676-835A-98395C3BC3BB}\0shell:::{20D04FE0-3AEA-1069-A2D8-08002B30309D}\\::{3ADD1653-EB32-4CB0-BBD7-DFA0ABB5ACCA}\0\0", /* win8 */
FILE_ATTRIBUTE_READONLY, FILE_ATTRIBUTE_READONLY,
@ -1319,7 +1318,7 @@ static const struct knownFolderDef known_folders[] = {
NO_CSIDL, NO_CSIDL,
"PicturesLibrary", "PicturesLibrary",
KF_CATEGORY_PERUSER, KF_CATEGORY_PERUSER,
FOLDERID_Libraries, FOLDERID_Libraries, GUID_NULL,
"Pictures.library-ms\0", "Pictures.library-ms\0",
"::{031E4825-7B94-4dc3-B131-E946B44C8DD5}\\{A990AE9F-A03B-4e80-94BC-9912D7504104}\0\0", "::{031E4825-7B94-4dc3-B131-E946B44C8DD5}\\{A990AE9F-A03B-4e80-94BC-9912D7504104}\0\0",
0, 0,
@ -1328,7 +1327,7 @@ static const struct knownFolderDef known_folders[] = {
NO_CSIDL, NO_CSIDL,
"Playlists", "Playlists",
KF_CATEGORY_PERUSER, KF_CATEGORY_PERUSER,
FOLDERID_Music, FOLDERID_Music, GUID_NULL,
"Playlists\0", "Playlists\0",
NULL, NULL,
FILE_ATTRIBUTE_READONLY, FILE_ATTRIBUTE_READONLY,
@ -1337,7 +1336,7 @@ static const struct knownFolderDef known_folders[] = {
CSIDL_PRINTERS, CSIDL_PRINTERS,
"PrintersFolder", "PrintersFolder",
KF_CATEGORY_VIRTUAL, KF_CATEGORY_VIRTUAL,
GUID_NULL, GUID_NULL, GUID_NULL,
NULL, NULL,
"::{21EC2020-3AEA-1069-A2DD-08002B30309D}\\::{2227A280-3AEA-1069-A2DE-08002B30309D}\0\0", "::{21EC2020-3AEA-1069-A2DD-08002B30309D}\\::{2227A280-3AEA-1069-A2DE-08002B30309D}\0\0",
0, 0,
@ -1346,7 +1345,7 @@ static const struct knownFolderDef known_folders[] = {
CSIDL_PRINTHOOD, CSIDL_PRINTHOOD,
"PrintHood", "PrintHood",
KF_CATEGORY_PERUSER, KF_CATEGORY_PERUSER,
FOLDERID_RoamingAppData, FOLDERID_RoamingAppData, GUID_NULL,
"Microsoft\\Windows\\Printer Shortcuts\0", "Microsoft\\Windows\\Printer Shortcuts\0",
NULL, NULL,
0, 0,
@ -1355,7 +1354,7 @@ static const struct knownFolderDef known_folders[] = {
CSIDL_PROFILE, CSIDL_PROFILE,
"Profile", "Profile",
KF_CATEGORY_FIXED, KF_CATEGORY_FIXED,
GUID_NULL, GUID_NULL, GUID_NULL,
NULL, NULL,
NULL, NULL,
0, 0,
@ -1364,7 +1363,7 @@ static const struct knownFolderDef known_folders[] = {
CSIDL_COMMON_APPDATA, CSIDL_COMMON_APPDATA,
"Common AppData", "Common AppData",
KF_CATEGORY_FIXED, KF_CATEGORY_FIXED,
GUID_NULL, GUID_NULL, GUID_NULL,
NULL, NULL,
NULL, NULL,
0, 0,
@ -1373,7 +1372,7 @@ static const struct knownFolderDef known_folders[] = {
CSIDL_PROGRAM_FILES, CSIDL_PROGRAM_FILES,
"ProgramFiles", "ProgramFiles",
KF_CATEGORY_FIXED, KF_CATEGORY_FIXED,
GUID_NULL, GUID_NULL, GUID_NULL,
NULL, NULL,
NULL, NULL,
FILE_ATTRIBUTE_READONLY, FILE_ATTRIBUTE_READONLY,
@ -1383,7 +1382,7 @@ static const struct knownFolderDef known_folders[] = {
CSIDL_PROGRAM_FILES_COMMON, CSIDL_PROGRAM_FILES_COMMON,
"ProgramFilesCommon", "ProgramFilesCommon",
KF_CATEGORY_FIXED, KF_CATEGORY_FIXED,
GUID_NULL, GUID_NULL, GUID_NULL,
NULL, NULL,
NULL, NULL,
0, 0,
@ -1392,7 +1391,7 @@ static const struct knownFolderDef known_folders[] = {
NO_CSIDL, NO_CSIDL,
"ProgramFilesCommonX64", "ProgramFilesCommonX64",
KF_CATEGORY_FIXED, KF_CATEGORY_FIXED,
GUID_NULL, GUID_NULL, GUID_NULL,
NULL, NULL,
NULL, NULL,
0, 0,
@ -1401,7 +1400,7 @@ static const struct knownFolderDef known_folders[] = {
NO_CSIDL, NO_CSIDL,
"ProgramFilesCommonX86", "ProgramFilesCommonX86",
KF_CATEGORY_FIXED, KF_CATEGORY_FIXED,
GUID_NULL, GUID_NULL, GUID_NULL,
NULL, NULL,
NULL, NULL,
0, 0,
@ -1410,7 +1409,7 @@ static const struct knownFolderDef known_folders[] = {
NO_CSIDL, NO_CSIDL,
"ProgramFilesX64", "ProgramFilesX64",
KF_CATEGORY_FIXED, KF_CATEGORY_FIXED,
GUID_NULL, GUID_NULL, GUID_NULL,
NULL, NULL,
NULL, NULL,
0, 0,
@ -1419,7 +1418,7 @@ static const struct knownFolderDef known_folders[] = {
CSIDL_PROGRAM_FILESX86, CSIDL_PROGRAM_FILESX86,
"ProgramFilesX86", "ProgramFilesX86",
KF_CATEGORY_FIXED, KF_CATEGORY_FIXED,
GUID_NULL, GUID_NULL, GUID_NULL,
NULL, NULL,
NULL, NULL,
FILE_ATTRIBUTE_READONLY, FILE_ATTRIBUTE_READONLY,
@ -1428,7 +1427,7 @@ static const struct knownFolderDef known_folders[] = {
CSIDL_PROGRAMS, CSIDL_PROGRAMS,
"Programs", "Programs",
KF_CATEGORY_PERUSER, KF_CATEGORY_PERUSER,
FOLDERID_StartMenu, FOLDERID_StartMenu, GUID_NULL,
"Programs\0", "Programs\0",
NULL, NULL,
FILE_ATTRIBUTE_READONLY, FILE_ATTRIBUTE_READONLY,
@ -1437,7 +1436,7 @@ static const struct knownFolderDef known_folders[] = {
NO_CSIDL, NO_CSIDL,
"Public", "Public",
KF_CATEGORY_FIXED, KF_CATEGORY_FIXED,
GUID_NULL, GUID_NULL, GUID_NULL,
NULL, NULL,
"::{4336a54d-038b-4685-ab02-99bb52d3fb8b}\0" "::{4336a54d-038b-4685-ab02-99bb52d3fb8b}\0"
"(null)\0\0" /* 6.1 */, "(null)\0\0" /* 6.1 */,
@ -1447,7 +1446,7 @@ static const struct knownFolderDef known_folders[] = {
CSIDL_COMMON_DESKTOPDIRECTORY, CSIDL_COMMON_DESKTOPDIRECTORY,
"Common Desktop", "Common Desktop",
KF_CATEGORY_COMMON, KF_CATEGORY_COMMON,
FOLDERID_Public, FOLDERID_Public, GUID_NULL,
"Desktop\0", "Desktop\0",
NULL, NULL,
FILE_ATTRIBUTE_READONLY | FILE_ATTRIBUTE_HIDDEN, FILE_ATTRIBUTE_READONLY | FILE_ATTRIBUTE_HIDDEN,
@ -1456,7 +1455,7 @@ static const struct knownFolderDef known_folders[] = {
CSIDL_COMMON_DOCUMENTS, CSIDL_COMMON_DOCUMENTS,
"Common Documents", "Common Documents",
KF_CATEGORY_COMMON, KF_CATEGORY_COMMON,
FOLDERID_Public, FOLDERID_Public, GUID_NULL,
"Documents\0", "Documents\0",
NULL, NULL,
FILE_ATTRIBUTE_READONLY, FILE_ATTRIBUTE_READONLY,
@ -1465,7 +1464,7 @@ static const struct knownFolderDef known_folders[] = {
NO_CSIDL, NO_CSIDL,
"CommonDownloads", "CommonDownloads",
KF_CATEGORY_COMMON, KF_CATEGORY_COMMON,
FOLDERID_Public, FOLDERID_Public, GUID_NULL,
"Downloads\0", "Downloads\0",
NULL, NULL,
FILE_ATTRIBUTE_READONLY, FILE_ATTRIBUTE_READONLY,
@ -1474,7 +1473,7 @@ static const struct knownFolderDef known_folders[] = {
NO_CSIDL, NO_CSIDL,
"PublicGameTasks", "PublicGameTasks",
KF_CATEGORY_COMMON, KF_CATEGORY_COMMON,
FOLDERID_ProgramData, FOLDERID_ProgramData, GUID_NULL,
"Microsoft\\Windows\\GameExplorer\0", "Microsoft\\Windows\\GameExplorer\0",
NULL, NULL,
0, 0,
@ -1483,7 +1482,7 @@ static const struct knownFolderDef known_folders[] = {
NO_CSIDL, NO_CSIDL,
"PublicLibraries", "PublicLibraries",
KF_CATEGORY_COMMON, KF_CATEGORY_COMMON,
FOLDERID_Public, FOLDERID_Public, GUID_NULL,
"Libraries\0", "Libraries\0",
NULL, NULL,
FILE_ATTRIBUTE_READONLY | FILE_ATTRIBUTE_HIDDEN, FILE_ATTRIBUTE_READONLY | FILE_ATTRIBUTE_HIDDEN,
@ -1492,7 +1491,7 @@ static const struct knownFolderDef known_folders[] = {
CSIDL_COMMON_MUSIC, CSIDL_COMMON_MUSIC,
"CommonMusic", "CommonMusic",
KF_CATEGORY_COMMON, KF_CATEGORY_COMMON,
FOLDERID_Public, FOLDERID_Public, GUID_NULL,
"Music\0", "Music\0",
NULL, NULL,
FILE_ATTRIBUTE_READONLY, FILE_ATTRIBUTE_READONLY,
@ -1501,7 +1500,7 @@ static const struct knownFolderDef known_folders[] = {
CSIDL_COMMON_PICTURES, CSIDL_COMMON_PICTURES,
"CommonPictures", "CommonPictures",
KF_CATEGORY_COMMON, KF_CATEGORY_COMMON,
FOLDERID_Public, FOLDERID_Public, GUID_NULL,
"Pictures\0", "Pictures\0",
NULL, NULL,
FILE_ATTRIBUTE_READONLY, FILE_ATTRIBUTE_READONLY,
@ -1510,7 +1509,7 @@ static const struct knownFolderDef known_folders[] = {
NO_CSIDL, NO_CSIDL,
"CommonRingtones", "CommonRingtones",
KF_CATEGORY_COMMON, KF_CATEGORY_COMMON,
FOLDERID_ProgramData, FOLDERID_ProgramData, GUID_NULL,
"Microsoft\\Windows\\Ringtones\0", "Microsoft\\Windows\\Ringtones\0",
NULL, NULL,
0, 0,
@ -1519,7 +1518,7 @@ static const struct knownFolderDef known_folders[] = {
CSIDL_COMMON_VIDEO, CSIDL_COMMON_VIDEO,
"CommonVideo", "CommonVideo",
KF_CATEGORY_COMMON, KF_CATEGORY_COMMON,
FOLDERID_Public, FOLDERID_Public, GUID_NULL,
"Videos\0", "Videos\0",
NULL, NULL,
FILE_ATTRIBUTE_READONLY, FILE_ATTRIBUTE_READONLY,
@ -1528,7 +1527,7 @@ static const struct knownFolderDef known_folders[] = {
NO_CSIDL, NO_CSIDL,
"Quick Launch", "Quick Launch",
KF_CATEGORY_PERUSER, KF_CATEGORY_PERUSER,
FOLDERID_RoamingAppData, FOLDERID_RoamingAppData, GUID_NULL,
"Microsoft\\Internet Explorer\\Quick Launch\0", "Microsoft\\Internet Explorer\\Quick Launch\0",
NULL, NULL,
0, 0,
@ -1537,7 +1536,7 @@ static const struct knownFolderDef known_folders[] = {
CSIDL_RECENT, CSIDL_RECENT,
"Recent", "Recent",
KF_CATEGORY_PERUSER, KF_CATEGORY_PERUSER,
FOLDERID_RoamingAppData, FOLDERID_RoamingAppData, GUID_NULL,
"Microsoft\\Windows\\Recent\0", "Microsoft\\Windows\\Recent\0",
NULL, NULL,
FILE_ATTRIBUTE_READONLY, FILE_ATTRIBUTE_READONLY,
@ -1546,7 +1545,7 @@ static const struct knownFolderDef known_folders[] = {
NO_CSIDL, NO_CSIDL,
"RecordedTVLibrary", "RecordedTVLibrary",
KF_CATEGORY_COMMON, KF_CATEGORY_COMMON,
FOLDERID_PublicLibraries, FOLDERID_PublicLibraries, GUID_NULL,
"RecordedTV.library-ms\0", "RecordedTV.library-ms\0",
NULL, NULL,
0, 0,
@ -1555,7 +1554,7 @@ static const struct knownFolderDef known_folders[] = {
CSIDL_BITBUCKET, CSIDL_BITBUCKET,
"RecycleBinFolder", "RecycleBinFolder",
KF_CATEGORY_VIRTUAL, KF_CATEGORY_VIRTUAL,
GUID_NULL, GUID_NULL, GUID_NULL,
NULL, NULL,
"::{645FF040-5081-101B-9F08-00AA002F954E}\0\0", "::{645FF040-5081-101B-9F08-00AA002F954E}\0\0",
0, 0,
@ -1564,7 +1563,7 @@ static const struct knownFolderDef known_folders[] = {
CSIDL_RESOURCES, CSIDL_RESOURCES,
"ResourceDir", "ResourceDir",
KF_CATEGORY_FIXED, KF_CATEGORY_FIXED,
GUID_NULL, GUID_NULL, GUID_NULL,
NULL, NULL,
NULL, NULL,
0, 0,
@ -1573,7 +1572,7 @@ static const struct knownFolderDef known_folders[] = {
NO_CSIDL, NO_CSIDL,
"Ringtones", "Ringtones",
KF_CATEGORY_PERUSER, KF_CATEGORY_PERUSER,
FOLDERID_LocalAppData, FOLDERID_LocalAppData, GUID_NULL,
"Microsoft\\Windows\\Ringtones\0", "Microsoft\\Windows\\Ringtones\0",
NULL, NULL,
0, 0,
@ -1582,7 +1581,7 @@ static const struct knownFolderDef known_folders[] = {
CSIDL_APPDATA, CSIDL_APPDATA,
"AppData", "AppData",
KF_CATEGORY_PERUSER, KF_CATEGORY_PERUSER,
FOLDERID_Profile, FOLDERID_Profile, GUID_NULL,
"AppData\\Roaming\0", "AppData\\Roaming\0",
NULL, NULL,
0, 0,
@ -1591,7 +1590,7 @@ static const struct knownFolderDef known_folders[] = {
NO_CSIDL|WINE_ATTRIBUTES_OPTIONAL /* win8 */, NO_CSIDL|WINE_ATTRIBUTES_OPTIONAL /* win8 */,
"SampleMusic", "SampleMusic",
KF_CATEGORY_COMMON, KF_CATEGORY_COMMON,
FOLDERID_PublicMusic, FOLDERID_PublicMusic, GUID_NULL,
"Sample Music\0", "Sample Music\0",
NULL, NULL,
FILE_ATTRIBUTE_READONLY, FILE_ATTRIBUTE_READONLY,
@ -1600,7 +1599,7 @@ static const struct knownFolderDef known_folders[] = {
NO_CSIDL|WINE_ATTRIBUTES_OPTIONAL /* win8 */, NO_CSIDL|WINE_ATTRIBUTES_OPTIONAL /* win8 */,
"SamplePictures", "SamplePictures",
KF_CATEGORY_COMMON, KF_CATEGORY_COMMON,
FOLDERID_PublicPictures, FOLDERID_PublicPictures, GUID_NULL,
"Sample Pictures\0", "Sample Pictures\0",
NULL, NULL,
FILE_ATTRIBUTE_READONLY, FILE_ATTRIBUTE_READONLY,
@ -1609,7 +1608,7 @@ static const struct knownFolderDef known_folders[] = {
NO_CSIDL, NO_CSIDL,
"SamplePlaylists", "SamplePlaylists",
KF_CATEGORY_COMMON, KF_CATEGORY_COMMON,
FOLDERID_PublicMusic, FOLDERID_PublicMusic, GUID_NULL,
"Sample Playlists\0", "Sample Playlists\0",
NULL, NULL,
FILE_ATTRIBUTE_READONLY, FILE_ATTRIBUTE_READONLY,
@ -1618,7 +1617,7 @@ static const struct knownFolderDef known_folders[] = {
NO_CSIDL|WINE_ATTRIBUTES_OPTIONAL /* win8 */, NO_CSIDL|WINE_ATTRIBUTES_OPTIONAL /* win8 */,
"SampleVideos", "SampleVideos",
KF_CATEGORY_COMMON, KF_CATEGORY_COMMON,
FOLDERID_PublicVideos, FOLDERID_PublicVideos, GUID_NULL,
"Sample Videos\0", "Sample Videos\0",
NULL, NULL,
FILE_ATTRIBUTE_READONLY, FILE_ATTRIBUTE_READONLY,
@ -1627,7 +1626,7 @@ static const struct knownFolderDef known_folders[] = {
NO_CSIDL, NO_CSIDL,
"SavedGames", "SavedGames",
KF_CATEGORY_PERUSER, KF_CATEGORY_PERUSER,
FOLDERID_Profile, FOLDERID_Profile, GUID_NULL,
"Saved Games\0", "Saved Games\0",
"::{59031a47-3f72-44a7-89c5-5595fe6b30ee}\\{4C5C32FF-BB9D-43b0-B5B4-2D72E54EAAA4}\0\0", "::{59031a47-3f72-44a7-89c5-5595fe6b30ee}\\{4C5C32FF-BB9D-43b0-B5B4-2D72E54EAAA4}\0\0",
FILE_ATTRIBUTE_READONLY, FILE_ATTRIBUTE_READONLY,
@ -1636,7 +1635,7 @@ static const struct knownFolderDef known_folders[] = {
NO_CSIDL, NO_CSIDL,
"Searches", "Searches",
KF_CATEGORY_PERUSER, KF_CATEGORY_PERUSER,
FOLDERID_Profile, FOLDERID_Profile, GUID_NULL,
"Searches\0", "Searches\0",
"::{59031a47-3f72-44a7-89c5-5595fe6b30ee}\\{7d1d3a04-debb-4115-95cf-2f29da2920da}\0\0", "::{59031a47-3f72-44a7-89c5-5595fe6b30ee}\\{7d1d3a04-debb-4115-95cf-2f29da2920da}\0\0",
FILE_ATTRIBUTE_READONLY, FILE_ATTRIBUTE_READONLY,
@ -1645,7 +1644,7 @@ static const struct knownFolderDef known_folders[] = {
NO_CSIDL, NO_CSIDL,
"CSCFolder", "CSCFolder",
KF_CATEGORY_VIRTUAL, KF_CATEGORY_VIRTUAL,
GUID_NULL, GUID_NULL, GUID_NULL,
NULL, NULL,
"shell:::{BD7A2E7B-21CB-41b2-A086-B309680C6B7E}\\*\0\0", "shell:::{BD7A2E7B-21CB-41b2-A086-B309680C6B7E}\\*\0\0",
0, 0,
@ -1654,7 +1653,7 @@ static const struct knownFolderDef known_folders[] = {
NO_CSIDL, NO_CSIDL,
"SearchHomeFolder", "SearchHomeFolder",
KF_CATEGORY_VIRTUAL, KF_CATEGORY_VIRTUAL,
GUID_NULL, GUID_NULL, GUID_NULL,
NULL, NULL,
"::{9343812e-1c37-4a49-a12e-4b2d810d956b}\0\0", "::{9343812e-1c37-4a49-a12e-4b2d810d956b}\0\0",
0, 0,
@ -1663,7 +1662,7 @@ static const struct knownFolderDef known_folders[] = {
NO_CSIDL, NO_CSIDL,
"MAPIFolder", "MAPIFolder",
KF_CATEGORY_VIRTUAL, KF_CATEGORY_VIRTUAL,
GUID_NULL, GUID_NULL, GUID_NULL,
NULL, NULL,
"shell:::{89D83576-6BD1-4C86-9454-BEB04E94C819}\\*\0\0", "shell:::{89D83576-6BD1-4C86-9454-BEB04E94C819}\\*\0\0",
0, 0,
@ -1672,7 +1671,7 @@ static const struct knownFolderDef known_folders[] = {
CSIDL_SENDTO, CSIDL_SENDTO,
"SendTo", "SendTo",
KF_CATEGORY_PERUSER, KF_CATEGORY_PERUSER,
FOLDERID_RoamingAppData, FOLDERID_RoamingAppData, GUID_NULL,
"Microsoft\\Windows\\SendTo\0", "Microsoft\\Windows\\SendTo\0",
NULL, NULL,
0, 0,
@ -1681,7 +1680,7 @@ static const struct knownFolderDef known_folders[] = {
NO_CSIDL, NO_CSIDL,
"Default Gadgets", "Default Gadgets",
KF_CATEGORY_COMMON, KF_CATEGORY_COMMON,
FOLDERID_ProgramFiles, FOLDERID_ProgramFiles, GUID_NULL,
"Windows Sidebar\\Gadgets\0", "Windows Sidebar\\Gadgets\0",
NULL, NULL,
0, 0,
@ -1690,7 +1689,7 @@ static const struct knownFolderDef known_folders[] = {
NO_CSIDL, NO_CSIDL,
"Gadgets", "Gadgets",
KF_CATEGORY_PERUSER, KF_CATEGORY_PERUSER,
FOLDERID_LocalAppData, FOLDERID_LocalAppData, GUID_NULL,
"Microsoft\\Windows Sidebar\\Gadgets\0", "Microsoft\\Windows Sidebar\\Gadgets\0",
NULL, NULL,
0, 0,
@ -1699,7 +1698,7 @@ static const struct knownFolderDef known_folders[] = {
CSIDL_STARTMENU, CSIDL_STARTMENU,
"Start Menu", "Start Menu",
KF_CATEGORY_PERUSER, KF_CATEGORY_PERUSER,
FOLDERID_RoamingAppData, FOLDERID_RoamingAppData, GUID_NULL,
"Microsoft\\Windows\\Start Menu\0", "Microsoft\\Windows\\Start Menu\0",
NULL, NULL,
FILE_ATTRIBUTE_READONLY, FILE_ATTRIBUTE_READONLY,
@ -1708,7 +1707,7 @@ static const struct knownFolderDef known_folders[] = {
CSIDL_STARTUP, CSIDL_STARTUP,
"Startup", "Startup",
KF_CATEGORY_PERUSER, KF_CATEGORY_PERUSER,
FOLDERID_Programs, FOLDERID_Programs, GUID_NULL,
"StartUp\0", "StartUp\0",
NULL, NULL,
FILE_ATTRIBUTE_READONLY, FILE_ATTRIBUTE_READONLY,
@ -1717,7 +1716,7 @@ static const struct knownFolderDef known_folders[] = {
NO_CSIDL, NO_CSIDL,
"SyncCenterFolder", "SyncCenterFolder",
KF_CATEGORY_VIRTUAL, KF_CATEGORY_VIRTUAL,
GUID_NULL, GUID_NULL, GUID_NULL,
NULL, NULL,
"::{21EC2020-3AEA-1069-A2DD-08002B30309D}\\::{9C73F5E5-7AE7-4E32-A8E8-8D23B85255BF}\0" "::{21EC2020-3AEA-1069-A2DD-08002B30309D}\\::{9C73F5E5-7AE7-4E32-A8E8-8D23B85255BF}\0"
"::{26EE0668-A00A-44D7-9371-BEB064C98683}\\0\\::{9C73F5E5-7AE7-4E32-A8E8-8D23B85255BF}\0\0" /* 6.1 */, "::{26EE0668-A00A-44D7-9371-BEB064C98683}\\0\\::{9C73F5E5-7AE7-4E32-A8E8-8D23B85255BF}\0\0" /* 6.1 */,
@ -1727,7 +1726,7 @@ static const struct knownFolderDef known_folders[] = {
NO_CSIDL, NO_CSIDL,
"SyncResultsFolder", "SyncResultsFolder",
KF_CATEGORY_VIRTUAL, KF_CATEGORY_VIRTUAL,
GUID_NULL, GUID_NULL, GUID_NULL,
NULL, NULL,
"::{21EC2020-3AEA-1069-A2DD-08002B30309D}\\::{9C73F5E5-7AE7-4E32-A8E8-8D23B85255BF}\\::{BC48B32F-5910-47F5-8570-5074A8A5636A},\0" "::{21EC2020-3AEA-1069-A2DD-08002B30309D}\\::{9C73F5E5-7AE7-4E32-A8E8-8D23B85255BF}\\::{BC48B32F-5910-47F5-8570-5074A8A5636A},\0"
"::{26EE0668-A00A-44D7-9371-BEB064C98683}\\0\\::{9C73F5E5-7AE7-4E32-A8E8-8D23B85255BF}\\::{BC48B32F-5910-47F5-8570-5074A8A5636A},\0\0", "::{26EE0668-A00A-44D7-9371-BEB064C98683}\\0\\::{9C73F5E5-7AE7-4E32-A8E8-8D23B85255BF}\\::{BC48B32F-5910-47F5-8570-5074A8A5636A},\0\0",
@ -1737,7 +1736,7 @@ static const struct knownFolderDef known_folders[] = {
NO_CSIDL, NO_CSIDL,
"SyncSetupFolder", "SyncSetupFolder",
KF_CATEGORY_VIRTUAL, KF_CATEGORY_VIRTUAL,
GUID_NULL, GUID_NULL, GUID_NULL,
NULL, NULL,
"::{21EC2020-3AEA-1069-A2DD-08002B30309D}\\::{9C73F5E5-7AE7-4E32-A8E8-8D23B85255BF}\\::{F1390A9A-A3F4-4E5D-9C5F-98F3BD8D935C},\0" "::{21EC2020-3AEA-1069-A2DD-08002B30309D}\\::{9C73F5E5-7AE7-4E32-A8E8-8D23B85255BF}\\::{F1390A9A-A3F4-4E5D-9C5F-98F3BD8D935C},\0"
"::{26EE0668-A00A-44D7-9371-BEB064C98683}\\0\\::{9C73F5E5-7AE7-4E32-A8E8-8D23B85255BF}\\::{F1390A9A-A3F4-4E5D-9C5F-98F3BD8D935C},\0\0" /* 6.1 */, "::{26EE0668-A00A-44D7-9371-BEB064C98683}\\0\\::{9C73F5E5-7AE7-4E32-A8E8-8D23B85255BF}\\::{F1390A9A-A3F4-4E5D-9C5F-98F3BD8D935C},\0\0" /* 6.1 */,
@ -1747,7 +1746,7 @@ static const struct knownFolderDef known_folders[] = {
CSIDL_SYSTEM, CSIDL_SYSTEM,
"System", "System",
KF_CATEGORY_FIXED, KF_CATEGORY_FIXED,
GUID_NULL, GUID_NULL, GUID_NULL,
NULL, NULL,
NULL, NULL,
0, 0,
@ -1756,7 +1755,7 @@ static const struct knownFolderDef known_folders[] = {
CSIDL_SYSTEMX86, CSIDL_SYSTEMX86,
"SystemX86", "SystemX86",
KF_CATEGORY_FIXED, KF_CATEGORY_FIXED,
GUID_NULL, GUID_NULL, GUID_NULL,
NULL, NULL,
NULL, NULL,
0, 0,
@ -1765,7 +1764,7 @@ static const struct knownFolderDef known_folders[] = {
CSIDL_TEMPLATES, CSIDL_TEMPLATES,
"Templates", "Templates",
KF_CATEGORY_PERUSER, KF_CATEGORY_PERUSER,
FOLDERID_RoamingAppData, FOLDERID_RoamingAppData, GUID_NULL,
"Microsoft\\Windows\\Templates\0", "Microsoft\\Windows\\Templates\0",
NULL, NULL,
0, 0,
@ -1774,7 +1773,7 @@ static const struct knownFolderDef known_folders[] = {
NO_CSIDL, NO_CSIDL,
"User Pinned", "User Pinned",
KF_CATEGORY_PERUSER, KF_CATEGORY_PERUSER,
FOLDERID_QuickLaunch, FOLDERID_QuickLaunch, GUID_NULL,
"User Pinned\0", "User Pinned\0",
NULL, NULL,
FILE_ATTRIBUTE_HIDDEN, FILE_ATTRIBUTE_HIDDEN,
@ -1783,7 +1782,7 @@ static const struct knownFolderDef known_folders[] = {
NO_CSIDL, NO_CSIDL,
"UserProfiles", "UserProfiles",
KF_CATEGORY_FIXED, KF_CATEGORY_FIXED,
GUID_NULL, GUID_NULL, GUID_NULL,
NULL, NULL,
NULL, NULL,
FILE_ATTRIBUTE_READONLY, FILE_ATTRIBUTE_READONLY,
@ -1792,7 +1791,7 @@ static const struct knownFolderDef known_folders[] = {
NO_CSIDL, NO_CSIDL,
"UserProgramFiles", "UserProgramFiles",
KF_CATEGORY_PERUSER, KF_CATEGORY_PERUSER,
FOLDERID_LocalAppData, FOLDERID_LocalAppData, GUID_NULL,
"Programs\0", "Programs\0",
NULL, NULL,
0, 0,
@ -1801,7 +1800,7 @@ static const struct knownFolderDef known_folders[] = {
NO_CSIDL, NO_CSIDL,
"UserProgramFilesCommon", "UserProgramFilesCommon",
KF_CATEGORY_PERUSER, KF_CATEGORY_PERUSER,
FOLDERID_UserProgramFiles, FOLDERID_UserProgramFiles, GUID_NULL,
"Common\0", "Common\0",
NULL, NULL,
0, 0,
@ -1810,7 +1809,7 @@ static const struct knownFolderDef known_folders[] = {
NO_CSIDL, NO_CSIDL,
"UsersFilesFolder", "UsersFilesFolder",
KF_CATEGORY_VIRTUAL, KF_CATEGORY_VIRTUAL,
GUID_NULL, GUID_NULL, GUID_NULL,
NULL, NULL,
"::{59031a47-3f72-44a7-89c5-5595fe6b30ee}\0\0", "::{59031a47-3f72-44a7-89c5-5595fe6b30ee}\0\0",
0, 0,
@ -1819,7 +1818,7 @@ static const struct knownFolderDef known_folders[] = {
NO_CSIDL, NO_CSIDL,
"UsersLibrariesFolder", "UsersLibrariesFolder",
KF_CATEGORY_VIRTUAL, KF_CATEGORY_VIRTUAL,
GUID_NULL, GUID_NULL, GUID_NULL,
NULL, NULL,
"::{031E4825-7B94-4dc3-B131-E946B44C8DD5}\0\0", "::{031E4825-7B94-4dc3-B131-E946B44C8DD5}\0\0",
0, 0,
@ -1828,7 +1827,7 @@ static const struct knownFolderDef known_folders[] = {
CSIDL_MYVIDEO, CSIDL_MYVIDEO,
"My Video", "My Video",
KF_CATEGORY_PERUSER, KF_CATEGORY_PERUSER,
FOLDERID_Profile, FOLDERID_Profile, GUID_NULL,
"Videos\0", "Videos\0",
"::{59031a47-3f72-44a7-89c5-5595fe6b30ee}\\{18989B1D-99B5-455B-841C-AB7C74E4DDFC}\0shell:::{20D04FE0-3AEA-1069-A2D8-08002B30309D}\\::{A0953C92-50DC-43BF-BE83-3742FED03C9C}\0\0", /* win8 */ "::{59031a47-3f72-44a7-89c5-5595fe6b30ee}\\{18989B1D-99B5-455B-841C-AB7C74E4DDFC}\0shell:::{20D04FE0-3AEA-1069-A2D8-08002B30309D}\\::{A0953C92-50DC-43BF-BE83-3742FED03C9C}\0\0", /* win8 */
FILE_ATTRIBUTE_READONLY, FILE_ATTRIBUTE_READONLY,
@ -1837,7 +1836,7 @@ static const struct knownFolderDef known_folders[] = {
NO_CSIDL, NO_CSIDL,
"VideosLibrary", "VideosLibrary",
KF_CATEGORY_PERUSER, KF_CATEGORY_PERUSER,
FOLDERID_Libraries, FOLDERID_Libraries, GUID_NULL,
"Videos.library-ms\0", "Videos.library-ms\0",
"::{031E4825-7B94-4dc3-B131-E946B44C8DD5}\\{491E922F-5643-4af4-A7EB-4E7A138D8174}\0\0", "::{031E4825-7B94-4dc3-B131-E946B44C8DD5}\\{491E922F-5643-4af4-A7EB-4E7A138D8174}\0\0",
0, 0,
@ -1846,7 +1845,7 @@ static const struct knownFolderDef known_folders[] = {
CSIDL_WINDOWS, CSIDL_WINDOWS,
"Windows", "Windows",
KF_CATEGORY_FIXED, KF_CATEGORY_FIXED,
GUID_NULL, GUID_NULL, GUID_NULL,
NULL, NULL,
NULL, NULL,
0, 0,
@ -1855,7 +1854,7 @@ static const struct knownFolderDef known_folders[] = {
NO_CSIDL, NO_CSIDL,
"CredentialManager", "CredentialManager",
KF_CATEGORY_FIXED, KF_CATEGORY_FIXED,
GUID_NULL, GUID_NULL, GUID_NULL,
NULL, NULL,
NULL, NULL,
0, 0,
@ -1864,7 +1863,7 @@ static const struct knownFolderDef known_folders[] = {
NO_CSIDL, NO_CSIDL,
"CryptoKeys", "CryptoKeys",
KF_CATEGORY_FIXED, KF_CATEGORY_FIXED,
GUID_NULL, GUID_NULL, GUID_NULL,
NULL, NULL,
NULL, NULL,
0, 0,
@ -1873,7 +1872,7 @@ static const struct knownFolderDef known_folders[] = {
NO_CSIDL, NO_CSIDL,
"DpapiKeys", "DpapiKeys",
KF_CATEGORY_FIXED, KF_CATEGORY_FIXED,
GUID_NULL, GUID_NULL, GUID_NULL,
NULL, NULL,
NULL, NULL,
0, 0,
@ -1882,12 +1881,12 @@ static const struct knownFolderDef known_folders[] = {
NO_CSIDL, NO_CSIDL,
"SystemCertificates", "SystemCertificates",
KF_CATEGORY_FIXED, KF_CATEGORY_FIXED,
GUID_NULL, GUID_NULL, GUID_NULL,
NULL, NULL,
NULL, NULL,
0, 0,
0), 0),
{ NULL, NULL, 0, NULL, NULL, 0, 0 } { 0 }
}; };
#undef KNOWN_FOLDER #undef KNOWN_FOLDER
BOOL known_folder_found[sizeof(known_folders)/sizeof(known_folders[0])-1]; BOOL known_folder_found[sizeof(known_folders)/sizeof(known_folders[0])-1];
@ -1968,9 +1967,10 @@ static void check_known_folder(IKnownFolderManager *mgr, KNOWNFOLDERID *folderId
ok_(__FILE__, known_folder->line)(kfd.category == known_folder->category, "invalid known folder category for %s: %d expected, but %d retrieved\n", known_folder->sFolderId, known_folder->category, kfd.category); ok_(__FILE__, known_folder->line)(kfd.category == known_folder->category, "invalid known folder category for %s: %d expected, but %d retrieved\n", known_folder->sFolderId, known_folder->category, kfd.category);
ok_(__FILE__, known_folder->line)(IsEqualGUID(known_folder->fidParent, &kfd.fidParent), ok_(__FILE__, known_folder->line)(IsEqualGUID(known_folder->fidParents[0], &kfd.fidParent) ||
"invalid known folder parent for %s: %s expected, but %s retrieved\n", IsEqualGUID(known_folder->fidParents[1], &kfd.fidParent),
known_folder->sFolderId, known_folder->sParent, wine_dbgstr_guid(&kfd.fidParent)); "invalid known folder parent for %s: %s retrieved\n",
known_folder->sFolderId, wine_dbgstr_guid(&kfd.fidParent));
ok_(__FILE__, known_folder->line)(is_in_strarray(kfd.pszRelativePath, known_folder->sRelativePath), "invalid known folder relative path returned for %s: %s expected, but %s retrieved\n", known_folder->sFolderId, known_folder->sRelativePath, wine_dbgstr_w(kfd.pszRelativePath)); ok_(__FILE__, known_folder->line)(is_in_strarray(kfd.pszRelativePath, known_folder->sRelativePath), "invalid known folder relative path returned for %s: %s expected, but %s retrieved\n", known_folder->sFolderId, known_folder->sRelativePath, wine_dbgstr_w(kfd.pszRelativePath));