Compartir vía


IsolatedStorageFile.GetMachineStoreForDomain Método

Definición

Obtiene el almacenamiento aislado del ámbito del equipo que se corresponde con la identidad de dominio de la aplicación y la identidad de ensamblado.

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

Devoluciones

Un objeto que se corresponde con IsolatedStorageScope, basándose en una combinación de la identidad de dominio de la aplicación y la identidad de ensamblado.

Excepciones

No se han concedido permisos suficientes de almacenamiento aislado.

Se ha producido un error al abrir el almacén.

o bien

El ensamblado especificado no tiene permisos suficientes para crear almacenes aislados.

o bien

No se puede determinar los permisos para el dominio de aplicación.

o bien

No se puede inicializar una ubicación del almacenamiento aislado.

Ejemplos

En el ejemplo de código siguiente se muestra el GetUserStoreForDomain método . Para obtener el contexto completo de este ejemplo, consulte la IsolatedStorageFile información general.

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

Comentarios

El mismo código de ensamblado usará almacenes aislados diferentes cuando se usen en el contexto de diferentes aplicaciones.

GetMachineStoreForDomain es funcionalmente equivalente al código siguiente:

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)

Los distintos ensamblados que se ejecutan en el mismo dominio de aplicación siempre tienen almacenes aislados distintos.

Nota

GetUserStoreForDomain devolverá un IsolatedStorageFile objeto sin cuota si el dominio de aplicación en el que está instalado el ensamblado no tiene IsolatedStorageFilePermission. Los intentos posteriores de crear un IsolatedStorageFile objeto mediante el IsolatedStorageFile objeto que no tiene una cuota producirán un error con .IsolatedStorageException

Se aplica a

Consulte también