My application needs to read and write files to a directory of audio files that must be shared among users on the same computer.
I cannot use a subdirectory of the "commonApplicationDataDirectory" returned by File::getSpecialLocation() because it is read-only both on MacOS X and Windows, but I found that such a writable shared directory exists both on MacOS X on Windows, and I think that it would be a good idea to add that to the locations that can be obtained by File::getSpecialLocation ().
The writable path shared among users is:
"/Users/Shared" on MacOS X, at least since Leopard (10.5)
"C:\Users\Public\Documents" in Windows Vista and above
"C:\Documents And Settings\All Users\Documents" in XP and below
On Windows, the correct path can be obtained by calling the function SHGetFolderPath asking for the CSIDL_COMMON_DOCUMENTS path, as written here
As for the naming of such getSpecialLocation entry, maybe commonWritableApplicationDataDirectory? or userSharedApplicationDataDirectory? userSharedDocumentsDirectory? sharedDocumentsDirectory?