Game Development Reference
Every user gets a collection of isolated storages, which are contained in a unique
directory on the hard drive. This prevents interference between different users.
Remember that the physical location of isolated storage files varies among operat-
ing systems, but typically they can usually be found at:
\Documents and Settings\<username>\Local Settings\Application Data\IsolatedStorage
Each record in isolated storage is referenced by a tag. If the assembly is signed, then
this tag is the strong name as described by the Global Assembly Cache (GAC), and its
location on the hard drive is not used for association. If the assembly is not signed,
then the tag is the URL to where the assembly resides on the hard drive. Two identi-
cal copies of an assembly residing in different directories will be allotted separate iso-
lated storages. This does mean that if an unsigned assembly is moved, the association
to that assembly is broken and a new isolated storage will be created for it.
At this point, you may be wondering about the dangers of sharing assemblies
between multiple applications, and corrupting data that does not belong to you.
Another type of identification used by the framework for associations is at the
domain ( AppDomain ) level. This level refers to the location where the code was exe-
cuted from. A program executed from the local hard drive will have the same
domain as the assembly tag. A program downloaded from the web would have a
domain that is the URL where the program was downloaded from.
Management and Debugging
Isolated storage enforces a 10 MB data size limit per assembly, but it is still impor-
tant to clean up data when it is no longer needed. There is a tool provided with the
.NET framework that handles administration of isolated storage for each user.
This tool is very simple and only offers limited functionality, but it is useful when
debugging your storage.
Typing the command storeadm /help will produce the following usage text:
Microsoft (R) .NET Framework Store Admin 2.0.50215.44
Copyright (C) Microsoft Corporation. All rights reserved.
Usage : StoreAdm [options]
options : [/LIST] [/REMOVE] [/ROAMING | /MACHINE] [/QUIET]
/LIST : Displays the existing isolated storage for the current user.
/REMOVE : Removes all existing isolated storage for the current user.
/ROAMING : Select the roaming store.
/QUIET : Only error messages will be output.
/MACHINE : Select the machine store.