In the begining:
Game developers would install to the C: drive, and store their save game files, preferences and lord knows what else in C:\MyGame
Times have changed however, and I'm happy to say that I've changed with them, even if it has been late in coming =)
The new world:
For those of you that don't know I'm talking about storing settings and files in a windows friendly way. Most of us know that we install to C:\Program Files
but most of us also store save-games, and settings in there too, while this is convienent it's not the 'best' method.
Optimaly your game should be windows-user-aware. This means that is is fine to have read-only settings queried from Program Files, but everything you store (Screen Format, mouse speed, UI positions, save games, text speed, etc.) should be saved user-local.
That is:
C:\Documents and Settings\username\Application Data\my company name\my product name
this path can be aquired via the Shell API functions such as SHGetFolderPath
by storing your default settings in program files, and storing/reading your user settings from there, your game now has custom settings for each user.
Save Games
In the case of save-games, there a times where you want to keep your save game private, or availible to everyone, this can be achived by asking the user which they would like before they save.
If they choose 'save for everyone'
you save to:
C:\Documents and Settings\all users\Application Data\my company name\my product name
again this directory can be aquired via the shell functions
If they choose 'save for only me'
you save to:
C:\Documents and Settings\username\Application Data\my company name\my product name
An alternative approach is somtimes games will save to:
C:\Documents and Settings\username\My Documents\My Games\my product
this is a valid approach, but only really useful if there is a reason to allow normal and frequent moving of game files.
Conclusion:
Making your game aware of the current user and storing settings relative to them gives your game more robust operation. While it means little for single user machines, machines with multiple users will appreciate these added features.