Windows (Xp and following)
Based on:
These locations assume that Windows is installed on the C: disk.
Append your own directory with game name or game company then game name to these directories.
If you use Window 8 Metro-style application, you'll have to use a specific API instead of trying to reach directories. Read:
Player's game data
Windows Vista et suivants:
C: \ Utilisateurs \ {nom d'utilisateur} \ AppData \ Roaming
Windows XP:
C: \ Documents and Settings \ {nom d'utilisateur} \ Données d'application
Vous pouvez automatiquement obtenir la bonne adresse dépendante du nom d'utilisateur en récupérant la APPDATA
variable d'environnement .
Standard C (tous les compilateurs):
char* appdata = getenv("APPDATA");
Visual Studio 20xx ( évitez que getenv () ne soit averti que ce n'est pas sûr ) - Style non métropolitain:
char *pValue;
size_t len;
errno_t err = _dupenv_s( &pValue, &len, "APPDATA" );
Utilisateurs Boost : au moment où j'écris ce fichier boost.filesystem (c'est aussi un brouillon de la bibliothèque de système de fichiers proposée au prochain standard C ++) n'implémente pas encore une fonction pour fournir le bon répertoire. Cependant, il y a eu des discussions à ce sujet auparavant . N'hésitez pas à mettre à jour cette section si les choses ont changé.
Données de jeu partagées
Windows Vista et suivants:
C: \ ProgramData
Windows XP:
C: \ Documents and Settings \ Tous les utilisateurs
You can automatically get the right address by getting the PROGRAMDATA
environment variable.
Standard C (all compilers):
char* appdata = getenv("PROGRAMDATA");
Visual Studio 20xx (avoid getenv() warning saying it's not safe) - non Metro Style:
char *pValue;
size_t len;
errno_t err = _dupenv_s( &pValue, &len, "PROGRAMDATA" );
Boost users: at the moment I write this boost.filesystem (that is also a draft of the filesystem library proposed to the next C++ standard) doesn't implement yet a function to provide the right directory. However, there have been discussions about this before. Please feel free to update this section if things changed.
Temporary game data
Windows Vista and following:
C:\ProgramData
Windows Xp:
C:\Documents and Settings\{username}\Local Settings\Temp
You can automatically get the right address by getting the TEMP
environment variable.
C++ Boost users: there is a simple cross-platform boost.filesystem function for this
namespace bfs = boost::filesystem;
const bfs::path TEMP_DIR = bfs::system_complete( bfs::temp_directory_path() ); // system_complete() call is optional
Standard C (all compilers):
char* appdata = getenv("TEMP");
Visual Studio 20xx (avoid getenv() warning saying it's not safe) - non Metro Style:
char *pValue;
size_t len;
errno_t err = _dupenv_s( &pValue, &len, "TEMP" );