I haven't found where the actual translation happens yet, but the directory itself seems to be retrieved by SHGetSpecialFolderPath with CSIDL_RESOURCES (which is currently flagged FIXME). However the current implementation of that function requires some registry info in CSIDL_Data, but I haven't been able to find any registry settings that affect this value under XP.
Through some digging with strings, I found that shell32.dll has a string "ResourceDir", which I was hopeing would be the registry value that may be used, but setting that value in all the normal locations in the registry had no affect whatsoever. I havent found any other promising values to try.
Would it be acceptable to add a special case for SHGetSpecialFolderPath where szDefaultPath is returned without attempt to retrieve this value from the registry first?
On Friday 12 December 2003 04:06 pm, Alexandre Julliard wrote:
Kevin Koltzau kevin@plop.org writes:
Many registry keys under XP refer to a %ResourceDir% env that points to the path where windows themes are located.
In case any apps refer to this, or if someone loads a registry export from XP this should be available in wine also
Interestingly, windows doesn't actually have this env set..my guess is ExpandEnvironmentStrings has a special case to handle this particular name
I seriously doubt that; most likely it's something that is either handled internally in uxtheme, or uxtheme defines the variable before expanding the string. I think this needs more investigation, but it doesn't seem to be something that should be handled in kernel.