- From: Brant Langer Gurganus <brantgurganus2001@cherokeescouting.org>
- Date: Thu, 20 Feb 2003 15:55:06 -0500
- To: Amaya Mailing List <www-amaya@w3.org>
- Message-ID: <3E5540AA.2040904@cherokeescouting.org>
From the Designed for Windows XP Application Specification:
LINK="#333399" DIR="LTR">
F1.6 Use SHGetFolderPath to determine special folder paths
*SHGetFolderPath* is the preferred method of retrieving paths for
specific situations in several of the requirements. There are many other
special folders that you can access from *SHGetFolderPath*.
Whenever you access any of the special folders (see the implementation
details), the application should use the Win32 APIs to dynamically
obtain the proper language-specific folder names. The preferred way to
do this is using the *SHGetFolderPath* API with the appropriate CSIDL
constant. This function behaves consistently across Windows 95, Windows
98, Windows Me, Windows NT 4.0, Windows 2000, and Windows XP.
*Implementation Details – S4.6*
This API is redistributable through the Shfolder.dll. Software vendors
are encouraged to redistribute this component as much as possible to
enable this support on versions of Windows operating systems earlier
than Windows XP. Windows 2000 includes this DLL as a protected system
file and, as such, this DLL cannot be replaced on Windows 2000 or later.
To help ensure that the application can run on Windows 95/98, Windows
Me, Windows NT 4.0, Windows 2000, and Windows XP, always link to the
*SHGetFolderPath* implementation in Shfolder.dll. Windows 2000 and
Windows XP natively implement *SHGetFolderPath* in Shell32.dll, but
other versions of Windows do not include *SHGetFolderPath* in Shell32.dll.
For full descriptions of all CLSID values, see the article titled "CSIDL
Values" in the MSDN Library. You can find it and other references by
going to http://msdn.microsoft.com/library/default.asp and doing a
search for "CSIDL Values". The following is a list of several
significant CLSID values.
*Standard folder*
*CSIDL constant name*
Documents folder ([user] profile)
CSIDL_MYDOCUMENTS
Music folder ([user] profile)
CSIDL_MYMUSIC
Video folder ([user] profile)
CSIDL_MYVIDEO
Desktop folder ([user] profile)
CSIDL_DESKTOPDIRECTORY
Start menu ([user] profile)
CSIDL_STARTMENU
Programs folder (under Start menu in [user] profile)
CSIDL_PROGRAMS
Application Data ([user] profile)
CSIDL_APPDATA
Documents folder (All Users Profile)
CSIDL_COMMON_DOCUMENTS
Music folder (All Users Profile)
CSIDL_COMMON_MUSIC
Video folder (All Users Profile)
CSIDL_COMMON_VIDEO
Start menu (All Users profile)
CSIDL_COMMON_STARTMENU
Programs folder (under Start menu in All Users profile)
CSIDL_COMMON_PROGRAMS
Application Data (All Users Profile)
CSIDL_COMMON_APPDATA
Local (non-roaming) data repository for apps
CSIDL_LOCAL_APPDATA
--
Brant Langer Gurganus
http://www.cherokeescouting.org/OtherUnits/Troop545IIN/brant.xhtml
If "Actions speak louder than words," how is that "The pen is mightier than the sword."?
Received on Thursday, 20 February 2003 15:56:18 UTC