Hello, in my application I need to store settings that are 'global' (i.e. not user specific) in a known and predictable location.
I want the application to be able to be run from anywhere (as a standard user, NOT administrator), including multiple copies from different locations and be able to read and write the saved config files.
The data needs to have read and write access granted for ALL standard users, not just one.
With that in mind, the four options noted here are inappropriate: http://msdn.microsoft.com/en-us/library/bb206295%28VS.85%29.aspx#ID0E1BA
So what are my alternatives?
My application is written in C++ and for Windows only. I need to support Windows XP and above.
Thanks.
EDIT:
To clarify, ignore race conditions caused by multiple instances. This question is solely to do with WHERE TO STORE THE DATA. I can't see anywhere suitable that is:
- Predictable (e.g. %APPDATA%\Foo is a 'predictable' path, but unfortunately user-specific)
- Global (e.g. %PROGRAMDATA%\Foo is a global path but unfortunately only the creating user has write-access)
- Accessible (a standard user needs to be able to create new files in the given directory, this applies to all users on the system)