IsolatedStorageFile.GetMachineStoreForDomain Metoda
Definicja
Ważne
Niektóre informacje odnoszą się do produktu w wersji wstępnej, który może zostać znacząco zmodyfikowany przed wydaniem. Firma Microsoft nie udziela żadnych gwarancji, jawnych lub domniemanych, w odniesieniu do informacji podanych w tym miejscu.
Uzyskuje izolowany magazyn o zakresie maszyn odpowiadający tożsamości domeny aplikacji i tożsamości zestawu.
public:
static System::IO::IsolatedStorage::IsolatedStorageFile ^ GetMachineStoreForDomain();
public static System.IO.IsolatedStorage.IsolatedStorageFile GetMachineStoreForDomain ();
static member GetMachineStoreForDomain : unit -> System.IO.IsolatedStorage.IsolatedStorageFile
Public Shared Function GetMachineStoreForDomain () As IsolatedStorageFile
Zwraca
Obiekt odpowiadający obiektowi IsolatedStorageScope, na podstawie kombinacji tożsamości domeny aplikacji i tożsamości zestawu.
Wyjątki
Nie udzielono wystarczających izolowanych uprawnień magazynu.
Nie można otworzyć magazynu.
-lub-
Określony zestaw ma niewystarczające uprawnienia do tworzenia izolowanych magazynów.
-lub-
Nie można określić uprawnień do domeny aplikacji.
-lub-
Nie można zainicjować izolowanej lokalizacji magazynu.
Przykłady
Poniższy przykład kodu przedstawia metodę GetUserStoreForDomain . Pełny kontekst tego przykładu IsolatedStorageFile zawiera omówienie.
IsolatedStorageFile^ isoFile;
isoFile = IsolatedStorageFile::GetUserStoreForDomain();
// Open or create a writable file.
IsolatedStorageFileStream^ isoStream = gcnew IsolatedStorageFileStream( this->userName,FileMode::OpenOrCreate,FileAccess::Write,isoFile );
StreamWriter^ writer = gcnew StreamWriter( isoStream );
writer->WriteLine( this->NewsUrl );
writer->WriteLine( this->SportsUrl );
// Calculate the amount of space used to record the user's preferences.
double d = isoFile->CurrentSize / isoFile->MaximumSize;
Console::WriteLine( "CurrentSize = {0}", isoFile->CurrentSize.ToString() );
Console::WriteLine( "MaximumSize = {0}", isoFile->MaximumSize.ToString() );
writer->Close();
isoFile->Close();
isoStream->Close();
return d;
IsolatedStorageFile isoFile;
isoFile = IsolatedStorageFile.GetUserStoreForDomain();
// Open or create a writable file.
IsolatedStorageFileStream isoStream =
new IsolatedStorageFileStream(this.userName,
FileMode.OpenOrCreate,
FileAccess.Write,
isoFile);
StreamWriter writer = new StreamWriter(isoStream);
writer.WriteLine(this.NewsUrl);
writer.WriteLine(this.SportsUrl);
// Calculate the amount of space used to record the user's preferences.
double d = isoFile.CurrentSize / isoFile.MaximumSize;
Console.WriteLine("CurrentSize = " + isoFile.CurrentSize.ToString());
Console.WriteLine("MaximumSize = " + isoFile.MaximumSize.ToString());
// StreamWriter.Close implicitly closes isoStream.
writer.Close();
isoFile.Dispose();
isoFile.Close();
return d;
Dim isoFile As IsolatedStorageFile
isoFile = IsolatedStorageFile.GetUserStoreForDomain()
' Open or create a writable file.
Dim isoStream As New IsolatedStorageFileStream(Me.userName, FileMode.OpenOrCreate, _
FileAccess.Write, isoFile)
Dim writer As New StreamWriter(isoStream)
writer.WriteLine(Me.NewsUrl)
writer.WriteLine(Me.SportsUrl)
' Calculate the amount of space used to record the user's preferences.
Dim d As Double = Convert.ToDouble(isoFile.CurrentSize) / Convert.ToDouble(isoFile.MaximumSize)
Console.WriteLine(("CurrentSize = " & isoFile.CurrentSize.ToString()))
Console.WriteLine(("MaximumSize = " & isoFile.MaximumSize.ToString()))
' StreamWriter.Close implicitly closes isoStream.
writer.Close()
isoFile.Dispose()
isoFile.Close()
Return d
Uwagi
Ten sam kod zestawu będzie używać różnych izolowanych magazynów, gdy są używane w kontekście różnych aplikacji.
GetMachineStoreForDomain jest funkcjonalnie równoważny z następującym kodem:
isoFile = IsolatedStorageFile::GetStore(IsolatedStorageScope::Assembly |
IsolatedStorageScope::Domain | IsolatedStorageScope::Machine,
(Type^)nullptr, (Type^)nullptr);
isoFile = IsolatedStorageFile.GetStore(IsolatedStorageScope.Assembly |
IsolatedStorageScope.Domain | IsolatedStorageScope.Machine,
null, null);
isoFile = IsolatedStorageFile.GetStore(IsolatedStorageScope.Assembly Or _
IsolatedStorageScope.Domain Or IsolatedStorageScope.Machine, _
Nothing, Nothing)
Różne zestawy uruchomione w tej samej domenie aplikacji zawsze mają odrębne izolowane magazyny.
Uwaga
GetUserStoreForDomain Metoda zwróci IsolatedStorageFile obiekt bez limitu przydziału, jeśli domena aplikacji, do której zainstalowano zestaw, nie ma elementu IsolatedStorageFilePermission. Późniejsze próby utworzenia IsolatedStorageFile obiektu przy użyciu IsolatedStorageFile obiektu, który nie ma przydziału, zakończy się niepowodzeniem z powodu .IsolatedStorageException