This is a repeat from February.  I'm repeating since it is still an issue in Amaya 8.0.  Basically amaya 8.0 is not using the proper location for the user's configuration directory.  See below...

PLEASE make this single change to the next version of Amaya and I can recommend it to the network administrators to add to their campus-wide lab image (with roaming user profiles).

And thank you for making the www a better place.

More details...

My amaya is using C:\AMAYA as it's user configuration directory. This will ruin any chance of using amaya with either multiple users on one machine, or with network roaming user profiles.
Actually, on the 'General Preferences' panel it shows 'C:\\amaya' for the 'Amaya user directory'. Why the double \\ ?  I'm using WindowsXP.

To my original proposition, Brant replied:

Date: Thu, 20 Feb 2003 15:55:06 -0500
From: Brant Langer Gurganus <>
Subject: more profile directory information

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 and doing a search for "CSIDL Values". The following is a list of several significant CLSID values.

I think Brant Langer Gurganus is on the right track. The one and only CSIDL you want to use is CSIDL_APPDATA (0x001a):
Version 4.71.
The file system directory that serves as a common repository for application-specific data. A typical path is C:\Documents and Settings\username\Application Data. This CSIDL is supported by the redistributable Shfolder.dll for systems that do not have the Microsoft® Internet Explorer 4.0 integrated Shell installed.

Basically 'Version 4.71' means it will work in any version of Windows except Win95. And it will work in Win95 if the user has the IE4 integrated shell. In the rare case of Win95 without the IE 4 shell, MS provides Shfolder.dll.

- Charles Allen
  Mathematical Sciences TSP, Clemson University

About Clemson's parking problem: