I am trying to use SHGetFolderPath() to determine the path of the user profiles folder. The documentation states that CSIDL_PROFILES defines this folder:
CSIDL_PROFILES (0x003e) Version 6.0. The file system directory containing user profile folders. A typical path is C:\Documents and Settings.
I am using Visual Studio 2005 SP1, and I cannot locate the definition of the constant CSIDL_PROFILES in the Platform SDK include files? Do I need a new version of the Platform SDK?
So I did some more experimenting by using the ID 0x3e in place of the symbol. However, it looks like 0x3e is not a valid argument to the shell functions that accept CSIDL_* arguments (an invalid argument error is returned).
So I guess CSIDL_PROFILES is not a valid argument and the at least some of the MSDN pages on the subject are incorrect when they mention this symbol. I have to say in all my years of working with the Win32/MSDN documentation I can't remember a similar situation.