Compartir a través de


IsolatedStorageFile.GetStore Método

Definición

Obtiene el almacenamiento aislado que se corresponde con el dominio de la aplicación dada, con los objetos de evidencia del ensamblado y con el ámbito de almacenamiento aislado.

Sobrecargas

GetStore(IsolatedStorageScope, Object)

Obtiene el almacenamiento aislado correspondiente a la identidad de aplicación dada.

GetStore(IsolatedStorageScope, Type)

Obtiene el almacenamiento aislado correspondiente al ámbito de aislamiento y al objeto de identidad de aplicación.

GetStore(IsolatedStorageScope, Object, Object)

Obtiene el almacenamiento aislado que se corresponde con el dominio de la aplicación dada y con los objetos de evidencia del ensamblado.

GetStore(IsolatedStorageScope, Type, Type)

Obtiene el almacenamiento aislado que se corresponde con el ámbito de almacenamiento aislado para el dominio de aplicación y los tipos de evidencia de ensamblado dados.

GetStore(IsolatedStorageScope, Evidence, Type, Evidence, Type)

Obtiene el almacenamiento aislado que se corresponde con el dominio de la aplicación dada y con los tipos y objetos de evidencia del ensamblado.

GetStore(IsolatedStorageScope, Object)

Source:
IsolatedStorageFile.cs
Source:
IsolatedStorageFile.cs
Source:
IsolatedStorageFile.cs

Obtiene el almacenamiento aislado correspondiente a la identidad de aplicación dada.

public:
 static System::IO::IsolatedStorage::IsolatedStorageFile ^ GetStore(System::IO::IsolatedStorage::IsolatedStorageScope scope, System::Object ^ applicationIdentity);
public static System.IO.IsolatedStorage.IsolatedStorageFile GetStore (System.IO.IsolatedStorage.IsolatedStorageScope scope, object? applicationIdentity);
public static System.IO.IsolatedStorage.IsolatedStorageFile GetStore (System.IO.IsolatedStorage.IsolatedStorageScope scope, object applicationIdentity);
static member GetStore : System.IO.IsolatedStorage.IsolatedStorageScope * obj -> System.IO.IsolatedStorage.IsolatedStorageFile
Public Shared Function GetStore (scope As IsolatedStorageScope, applicationIdentity As Object) As IsolatedStorageFile

Parámetros

scope
IsolatedStorageScope

Combinación bit a bit de los valores de la enumeración.

applicationIdentity
Object

Objeto que contiene la evidencia de la identidad de aplicación.

Devoluciones

Objeto que representa los parámetros.

Excepciones

No se han concedido permisos suficientes de almacenamiento aislado.

No se ha pasado la applicationIdentity identidad.

scope no es válido.

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

o bien

scope contiene el valor Applicationde enumeración , pero no se puede determinar la identidad de la aplicación del autor de la llamada, ya que para ActivationContext el dominio de aplicación actual devolvió null.

o bien

scope contiene el valor Domain, pero no se puede determinar los permisos para el dominio de aplicación.

o bien

scope contiene el valor Assembly, pero no se puede determinar los permisos para el ensamblado de llamada.

Comentarios

Nota

Si el scope parámetro es IsolatedStorageScope.Application y el dominio de aplicación en el que está instalado el ensamblado no tiene IsolatedStorageFilePermission, el GetStore método devolverá un IsolatedStorageFile objeto sin cuota. Los intentos posteriores de crear un IsolatedStorageFile objeto mediante el IsolatedStorageFile objeto que no tiene una cuota producirán un error con .IsolatedStorageException

Consulte también

Se aplica a

GetStore(IsolatedStorageScope, Type)

Source:
IsolatedStorageFile.cs
Source:
IsolatedStorageFile.cs
Source:
IsolatedStorageFile.cs

Obtiene el almacenamiento aislado correspondiente al ámbito de aislamiento y al objeto de identidad de aplicación.

public:
 static System::IO::IsolatedStorage::IsolatedStorageFile ^ GetStore(System::IO::IsolatedStorage::IsolatedStorageScope scope, Type ^ applicationEvidenceType);
public static System.IO.IsolatedStorage.IsolatedStorageFile GetStore (System.IO.IsolatedStorage.IsolatedStorageScope scope, Type? applicationEvidenceType);
public static System.IO.IsolatedStorage.IsolatedStorageFile GetStore (System.IO.IsolatedStorage.IsolatedStorageScope scope, Type applicationEvidenceType);
static member GetStore : System.IO.IsolatedStorage.IsolatedStorageScope * Type -> System.IO.IsolatedStorage.IsolatedStorageFile
Public Shared Function GetStore (scope As IsolatedStorageScope, applicationEvidenceType As Type) As IsolatedStorageFile

Parámetros

scope
IsolatedStorageScope

Combinación bit a bit de los valores de la enumeración.

applicationEvidenceType
Type

Objeto que contiene la identidad de la aplicación.

Devoluciones

Objeto que representa los parámetros.

Excepciones

No se han concedido permisos suficientes de almacenamiento aislado.

No se ha pasado la applicationEvidence identidad.

scope no es válido.

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

o bien

scope contiene el valor Applicationde enumeración , pero no se puede determinar la identidad de la aplicación del autor de la llamada, ya que para ActivationContext el dominio de aplicación actual devolvió null.

o bien

scope contiene el valor Domain, pero no se puede determinar los permisos para el dominio de aplicación.

o bien

scope contiene el valor Assembly, pero no se puede determinar los permisos para el ensamblado de llamada.

Comentarios

Nota

Si el scope parámetro es Application y el dominio de aplicación en el que está instalado el ensamblado no tiene IsolatedStorageFilePermission, el GetStore método devolverá un IsolatedStorageFile objeto sin cuota. Los intentos posteriores de crear un IsolatedStorageFile objeto mediante el IsolatedStorageFile objeto que no tiene una cuota producirán un error con .IsolatedStorageException

Consulte también

Se aplica a

GetStore(IsolatedStorageScope, Object, Object)

Source:
IsolatedStorageFile.cs
Source:
IsolatedStorageFile.cs
Source:
IsolatedStorageFile.cs

Obtiene el almacenamiento aislado que se corresponde con el dominio de la aplicación dada y con los objetos de evidencia del ensamblado.

public:
 static System::IO::IsolatedStorage::IsolatedStorageFile ^ GetStore(System::IO::IsolatedStorage::IsolatedStorageScope scope, System::Object ^ domainIdentity, System::Object ^ assemblyIdentity);
public static System.IO.IsolatedStorage.IsolatedStorageFile GetStore (System.IO.IsolatedStorage.IsolatedStorageScope scope, object? domainIdentity, object? assemblyIdentity);
public static System.IO.IsolatedStorage.IsolatedStorageFile GetStore (System.IO.IsolatedStorage.IsolatedStorageScope scope, object domainIdentity, object assemblyIdentity);
static member GetStore : System.IO.IsolatedStorage.IsolatedStorageScope * obj * obj -> System.IO.IsolatedStorage.IsolatedStorageFile
Public Shared Function GetStore (scope As IsolatedStorageScope, domainIdentity As Object, assemblyIdentity As Object) As IsolatedStorageFile

Parámetros

scope
IsolatedStorageScope

Combinación bit a bit de los valores de la enumeración.

domainIdentity
Object

Objeto que contiene la evidencia de la identidad de dominio de la aplicación.

assemblyIdentity
Object

Objeto que contiene la evidencia de la identidad de ensamblado del código.

Devoluciones

Objeto que representa los parámetros.

Excepciones

No se han concedido permisos suficientes de almacenamiento aislado.

Ni domainIdentity ni assemblyIdentity se han pasado. Esto comprueba que se usa el constructor correcto.

o bien

domainIdentity o assemblyIdentity es null.

scope no es válido.

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

o bien

scope contiene el valor Applicationde enumeración , pero no se puede determinar la identidad de la aplicación del autor de la llamada, ya que para ActivationContext el dominio de aplicación actual devolvió null.

o bien

scope contiene el valor Domain, pero no se puede determinar los permisos para el dominio de aplicación.

o bien

scope contiene el valor Assembly, pero no se puede determinar los permisos para el ensamblado de llamada.

Comentarios

Esta forma de GetStore es más útil para el código administrativo que necesita abrir un almacén como si fuera otro ensamblado. El almacén se abre para la evidencia proporcionada y no para el ensamblado que se está ejecutando actualmente.

Nota

Si el scope parámetro es Domain y el dominio de aplicación en el que está instalado el ensamblado no tiene IsolatedStorageFilePermission, el GetStore método devolverá un IsolatedStorageFile objeto sin cuota. Los intentos posteriores de crear un IsolatedStorageFile objeto mediante el IsolatedStorageFile objeto que no tiene una cuota producirán un error con .IsolatedStorageException

Consulte también

Se aplica a

GetStore(IsolatedStorageScope, Type, Type)

Source:
IsolatedStorageFile.cs
Source:
IsolatedStorageFile.cs
Source:
IsolatedStorageFile.cs

Obtiene el almacenamiento aislado que se corresponde con el ámbito de almacenamiento aislado para el dominio de aplicación y los tipos de evidencia de ensamblado dados.

public:
 static System::IO::IsolatedStorage::IsolatedStorageFile ^ GetStore(System::IO::IsolatedStorage::IsolatedStorageScope scope, Type ^ domainEvidenceType, Type ^ assemblyEvidenceType);
public static System.IO.IsolatedStorage.IsolatedStorageFile GetStore (System.IO.IsolatedStorage.IsolatedStorageScope scope, Type? domainEvidenceType, Type? assemblyEvidenceType);
public static System.IO.IsolatedStorage.IsolatedStorageFile GetStore (System.IO.IsolatedStorage.IsolatedStorageScope scope, Type domainEvidenceType, Type assemblyEvidenceType);
static member GetStore : System.IO.IsolatedStorage.IsolatedStorageScope * Type * Type -> System.IO.IsolatedStorage.IsolatedStorageFile
Public Shared Function GetStore (scope As IsolatedStorageScope, domainEvidenceType As Type, assemblyEvidenceType As Type) As IsolatedStorageFile

Parámetros

scope
IsolatedStorageScope

Combinación bit a bit de los valores de la enumeración.

domainEvidenceType
Type

El tipo del objeto Evidence que se puede elegir en la lista de Evidence presente en el dominio de la aplicación que realiza la llamada. null permite que el objeto IsolatedStorage elija las pruebas.

assemblyEvidenceType
Type

El tipo del objeto Evidence que se puede elegir en la lista de Evidence presente en el dominio de la aplicación que realiza la llamada. null permite que el objeto IsolatedStorage elija las pruebas.

Devoluciones

Objeto que representa los parámetros.

Excepciones

No se han concedido permisos suficientes de almacenamiento aislado.

scope no es válido.

El tipo de evidencia proporcionado no figura en la lista de evidencias del ensamblado.

o bien

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

o bien

scope contiene el valor Applicationde enumeración , pero no se puede determinar la identidad de la aplicación del autor de la llamada, ya que para ActivationContext el dominio de aplicación actual devolvió null.

o bien

scope contiene el valor Domain, pero no se puede determinar los permisos para el dominio de aplicación.

o bien

scope contiene Assembly, pero no se pueden determinar los permisos para el ensamblado de llamada.

Ejemplos

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

// Retrieve an IsolatedStorageFile for the current Domain and Assembly.
IsolatedStorageFile^ isoFile = IsolatedStorageFile::GetStore( static_cast<IsolatedStorageScope>(IsolatedStorageScope::User | IsolatedStorageScope::Assembly | IsolatedStorageScope::Domain), (Type^)nullptr, nullptr );
IsolatedStorageFileStream^ isoStream = gcnew IsolatedStorageFileStream( this->userName,FileMode::Open,FileAccess::ReadWrite,isoFile );

// Retrieve an IsolatedStorageFile for the current Domain and Assembly.
IsolatedStorageFile isoFile =
    IsolatedStorageFile.GetStore(IsolatedStorageScope.User |
    IsolatedStorageScope.Assembly |
    IsolatedStorageScope.Domain,
    null,
    null);

IsolatedStorageFileStream isoStream =
    new IsolatedStorageFileStream("substituteUsername",
    System.IO.FileMode.Open,
    System.IO.FileAccess.Read,
     System.IO.FileShare.Read);
' Retrieve an IsolatedStorageFile for the current Domain and Assembly.
Dim isoFile As IsolatedStorageFile = _
    IsolatedStorageFile.GetStore(IsolatedStorageScope.User _
    Or IsolatedStorageScope.Assembly _
    Or IsolatedStorageScope.Domain, Nothing, Nothing)

Dim isoStream As New IsolatedStorageFileStream("substituteUsername", System.IO.FileMode.Open, _
    System.IO.FileAccess.Read, System.IO.FileShare.Read)

Comentarios

Esta es la sobrecarga de GetStore la que es más probable que se llame desde el código de la aplicación.

Esta sobrecarga de GetStore abre un almacén aislado para los tipos de evidencia que se pasan.

Nota

Si el scope parámetro es Domain y el dominio de aplicación en el que está instalado el ensamblado no tiene IsolatedStorageFilePermission, el GetStore método devolverá un IsolatedStorageFile objeto sin cuota. Los intentos posteriores de crear un IsolatedStorageFile objeto mediante el IsolatedStorageFile objeto que no tiene una cuota producirán un error con .IsolatedStorageException

Consulte también

Se aplica a

GetStore(IsolatedStorageScope, Evidence, Type, Evidence, Type)

Obtiene el almacenamiento aislado que se corresponde con el dominio de la aplicación dada y con los tipos y objetos de evidencia del ensamblado.

public:
 static System::IO::IsolatedStorage::IsolatedStorageFile ^ GetStore(System::IO::IsolatedStorage::IsolatedStorageScope scope, System::Security::Policy::Evidence ^ domainEvidence, Type ^ domainEvidenceType, System::Security::Policy::Evidence ^ assemblyEvidence, Type ^ assemblyEvidenceType);
public static System.IO.IsolatedStorage.IsolatedStorageFile GetStore (System.IO.IsolatedStorage.IsolatedStorageScope scope, System.Security.Policy.Evidence domainEvidence, Type domainEvidenceType, System.Security.Policy.Evidence assemblyEvidence, Type assemblyEvidenceType);
static member GetStore : System.IO.IsolatedStorage.IsolatedStorageScope * System.Security.Policy.Evidence * Type * System.Security.Policy.Evidence * Type -> System.IO.IsolatedStorage.IsolatedStorageFile
Public Shared Function GetStore (scope As IsolatedStorageScope, domainEvidence As Evidence, domainEvidenceType As Type, assemblyEvidence As Evidence, assemblyEvidenceType As Type) As IsolatedStorageFile

Parámetros

scope
IsolatedStorageScope

Combinación bit a bit de los valores de la enumeración.

domainEvidence
Evidence

Objeto que contiene la identidad de dominio de la aplicación.

domainEvidenceType
Type

Tipo de identidad que se elige en la evidencia de dominio de la aplicación.

assemblyEvidence
Evidence

Objeto que contiene la identidad de ensamblado del código.

assemblyEvidenceType
Type

Tipo de identidad que se elige en la evidencia de ensamblado de código de la aplicación.

Devoluciones

Objeto que representa los parámetros.

Excepciones

No se han concedido permisos suficientes de almacenamiento aislado.

No se ha pasado la identidad de domainEvidence o de assemblyEvidence.

scope no es válido.

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

o bien

scope contiene el valor Applicationde enumeración , pero no se puede determinar la identidad de la aplicación del autor de la llamada, porque para ActivationContext el dominio de aplicación actual devolvió null.

o bien

scope contiene el valor Domain, pero no se puede determinar los permisos para el dominio de aplicación.

o bien

scope contiene el valor Assembly, pero no se puede determinar los permisos para el ensamblado de llamada.

Ejemplos

En el ejemplo de código siguiente se obtiene el almacenamiento en función de la evidencia del publicador.

using System;
using System.IO;
using System.IO.IsolatedStorage;
using System.Security;
using System.Security.Policy;
using System.Security.Permissions;
using System.Security.Cryptography.X509Certificates;

class Program
{
    static void Main(string[] args)
    {
        try
        {

            if (Test())
            {
                Console.WriteLine("PASSED.");
                Environment.ExitCode = 100;
            }
            else
            {
                Console.WriteLine("FAILED.");
                Environment.ExitCode = 101;
            }
        }
        catch (Exception e)
        {
            Console.Write("Exception occurred: {0}", e.ToString());
            Environment.ExitCode = 101;
        }
        return;
    }

    public static Boolean Test()
    {
        Boolean bRes = true;

        Evidence evidence1 = GetTestEvidence();
        Evidence evidence2 = GetTestEvidence();

        IsolatedStorageFile isf = IsolatedStorageFile.GetStore(
                                    IsolatedStorageScope.User | IsolatedStorageScope.Assembly,
                                    evidence1,
                                    typeof(System.Security.Policy.Publisher),
                                    evidence2,
                                    typeof(System.Security.Policy.Publisher));

        IsolatedStorageFileStream isfs = new IsolatedStorageFileStream("AdminEvd1.testfile", FileMode.OpenOrCreate, isf);
        isfs.WriteByte(5);
        isfs.Flush();
        isfs.Close();

        return bRes;
    }

    public static Evidence GetTestEvidence()
    {
        // For demonsration purposes, use a blank certificate.
        Publisher pub = new Publisher(new X509Certificate(new Byte[64]));
        Object[] arrObj = new Object[1];
        arrObj[0] = (Object)pub;
        return new Evidence(arrObj, arrObj);
    }
}
Imports System.IO
Imports System.IO.IsolatedStorage
Imports System.Security
Imports System.Security.Policy
Imports System.Security.Permissions
Imports System.Security.Cryptography.X509Certificates

Class Program

    Public Shared Sub Main(ByVal args() As String)
        Try
            If Test Then
                Console.WriteLine("PASSED.")
                Environment.ExitCode = 100
            Else
                Console.WriteLine("FAILED.")
                Environment.ExitCode = 101
            End If
        Catch e As Exception
            Console.Write("Exception occurred: {0}", e.ToString)
            Environment.ExitCode = 101
        End Try
        Return
    End Sub

    Public Shared Function Test() As Boolean
        Dim bRes As Boolean = True
        Dim evidence1 As Evidence = GetTestEvidence
        Dim evidence2 As Evidence = GetTestEvidence
        Dim isf As IsolatedStorageFile = IsolatedStorageFile.GetStore((IsolatedStorageScope.User _
         Or IsolatedStorageScope.Assembly), _
         evidence1, _
         GetType(System.Security.Policy.Publisher), _
         evidence2, _
         GetType(System.Security.Policy.Publisher))
        Dim isfs As IsolatedStorageFileStream = New IsolatedStorageFileStream("AdminEvd1.testfile", _
         FileMode.OpenOrCreate, isf)
        isfs.WriteByte(5)
        isfs.Flush()
        isfs.Close()
        Return bRes
    End Function

    Public Shared Function GetTestEvidence() As Evidence

        ' For demonsration purposes, use a blank certificate.
        Dim CertTemp(63) As Byte
        Dim pub As Publisher = New Publisher(New X509Certificate(CertTemp))
        Dim arrObj(0) As Object
        arrObj(0) = CType(pub, Object)
        Return New Evidence(arrObj, arrObj)
    End Function
End Class

Comentarios

Nota

Si el scope parámetro es Domain y el dominio de aplicación en el que está instalado el ensamblado no tiene IsolatedStorageFilePermission, el GetStore método devolverá un IsolatedStorageFile objeto sin cuota. Los intentos posteriores de crear un IsolatedStorageFile objeto mediante el IsolatedStorageFile objeto que no tiene una cuota producirán un error con .IsolatedStorageException

Consulte también

Se aplica a