O'Reilly logo

C# in a Nutshell by Peter Drayton, Ted Neward, Ben Albahari

Stay ahead with the world's most comprehensive technology and business learning platform.

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, tutorials, and more.

Start Free Trial

No credit card required

Isolated Storage

The .NET Framework’s isolated storage classes create and manipulate data compartments that are unique to a user and an assembly. For example, suppose that the user joe runs the .NET application someapp.exe. If someapp.exe uses isolated storage to create directories and files, the .NET runtime guarantees that another program (such as anotherapp.exe) cannot access those files, even if joe runs anotherapp.exe. Further, if another user, bob, runs someapp.exe, he won’t be able to access the files that someapp.exe created when joe ran it.

Isolated storage is limited by a quota, so even if it’s manipulated by untrusted mobile code, you don’t need to worry about that code performing a denial-of-service attack by filling your disk with useless data.

Where does isolated storage live? This depends on your operating system, but in Windows 2000 and XP, it is either found in \Documents and Settings\<username>\Local Settings\Application Data\Microsoft\IsolatedStorage (the nonroaming profile) or in \Documents and Settings\<username>\Application Data\Microsoft\IsolatedStorage (the roaming profile). For other operating systems, such as Windows NT 4.0 or Windows 98, see Introduction to Isolated Storage in the .NET Framework SDK documentation.

Reading and Writing Isolated Storage

To create or access a file in isolated storage, create an instance of IsolatedStorageFileStream (pass in the desired filename and combination of FileMode constants). If your assembly doesn’t currently have an ...

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, interactive tutorials, and more.

Start Free Trial

No credit card required