IsolatedStorageFile.GetStore Método
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
Obtiene el almacenamiento aislado correspondiente al dominio de aplicación y a los objetos de evidencia de ensamblado y al ámbito de almacenamiento aislado especificados.
Sobrecargas
| Nombre | Description |
|---|---|
| GetStore(IsolatedStorageScope, Object) |
Obtiene el almacenamiento aislado correspondiente a la identidad de aplicación especificada. |
| GetStore(IsolatedStorageScope, Type) |
Obtiene el almacenamiento aislado correspondiente al ámbito de aislamiento y al objeto de identidad de la aplicación. |
| GetStore(IsolatedStorageScope, Object, Object) |
Obtiene el almacenamiento aislado correspondiente al dominio de aplicación y a los objetos de evidencia de ensamblado especificados. |
| GetStore(IsolatedStorageScope, Type, Type) |
Obtiene el almacenamiento aislado correspondiente al ámbito de almacenamiento aislado dados los tipos de evidencia de ensamblado y dominio de aplicación. |
| GetStore(IsolatedStorageScope, Evidence, Type, Evidence, Type) |
Obtiene el almacenamiento aislado correspondiente al dominio de aplicación especificado y a los objetos y tipos de evidencia de ensamblado. |
GetStore(IsolatedStorageScope, Object)
Obtiene el almacenamiento aislado correspondiente a la identidad de aplicación especificada.
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);
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 enumeración.
- applicationIdentity
- Object
Objeto que contiene evidencia para la identidad de la aplicación.
Devoluciones
Objeto que representa los parámetros.
Excepciones
No se han concedido permisos de almacenamiento aislado suficientes.
No se ha pasado la applicationIdentity identidad.
No scope es válido.
No se puede inicializar una ubicación de almacenamiento aislada.
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 pueden determinar los permisos para el dominio de aplicación.
O bien
scope contiene el valor Assembly, pero no se pueden determinar los permisos para el ensamblado que llama.
Comentarios
Note
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 IsolatedStorageExceptionerror con .
Consulte también
- GetUserStoreForDomain()
- GetUserStoreForApplication()
- GetUserStoreForAssembly()
- Almacenamiento aislado
Se aplica a
GetStore(IsolatedStorageScope, Type)
Obtiene el almacenamiento aislado correspondiente al ámbito de aislamiento y al objeto de identidad de la 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);
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 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 de almacenamiento aislado suficientes.
No se ha pasado la applicationEvidenceType identidad.
No scope es válido.
No se puede inicializar una ubicación de almacenamiento aislada.
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 pueden determinar los permisos para el dominio de aplicación.
O bien
scope contiene el valor Assembly, pero no se pueden determinar los permisos para el ensamblado que llama.
Comentarios
Note
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 IsolatedStorageExceptionerror con .
Consulte también
- GetUserStoreForDomain()
- GetUserStoreForApplication()
- GetUserStoreForAssembly()
- Almacenamiento aislado
Se aplica a
GetStore(IsolatedStorageScope, Object, Object)
Obtiene el almacenamiento aislado correspondiente al dominio de aplicación y a los objetos de evidencia de ensamblado especificados.
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);
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 enumeración.
- domainIdentity
- Object
Objeto que contiene evidencias para la identidad del dominio de aplicación.
- assemblyIdentity
- Object
Objeto que contiene evidencia para la identidad del ensamblado de código.
Devoluciones
Objeto que representa los parámetros.
Excepciones
No se han concedido permisos de almacenamiento aislado suficientes.
Ni ni domainIdentityassemblyIdentity se han pasado. Esto comprueba que se está usando el constructor correcto.
O bien
o domainIdentityassemblyIdentity es null.
No scope es válido.
No se puede inicializar una ubicación de almacenamiento aislada.
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 pueden determinar los permisos para el dominio de aplicación.
O bien
scope contiene el valor Assembly, pero no se pueden determinar los permisos para el ensamblado que llama.
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.
Note
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 IsolatedStorageExceptionerror con .
Consulte también
- GetUserStoreForDomain()
- GetUserStoreForApplication()
- GetUserStoreForAssembly()
- Almacenamiento aislado
Se aplica a
GetStore(IsolatedStorageScope, Type, Type)
Obtiene el almacenamiento aislado correspondiente al ámbito de almacenamiento aislado dados los tipos de evidencia de ensamblado y dominio de aplicación.
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 enumeración.
- domainEvidenceType
- Type
Tipo del Evidence que puede elegir de la lista de Evidence presentes en el dominio de la aplicación que llama.
null permite que el IsolatedStorage objeto elija la evidencia.
- assemblyEvidenceType
- Type
Tipo del Evidence que puede elegir de la lista de Evidence presentes en el dominio de la aplicación que llama.
null permite que el IsolatedStorage objeto elija la evidencia.
Devoluciones
Objeto que representa los parámetros.
Excepciones
No se han concedido permisos de almacenamiento aislado suficientes.
No scope es válido.
Falta el tipo de evidencia proporcionado en la lista de evidencias de ensamblado.
O bien
No se puede inicializar una ubicación de almacenamiento aislada.
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 pueden determinar los permisos para el dominio de aplicación.
O bien
scope contiene Assembly, pero no se pueden determinar los permisos para el ensamblado que llama.
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(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.
Note
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 IsolatedStorageExceptionerror con .
Consulte también
- GetUserStoreForDomain()
- GetUserStoreForApplication()
- GetUserStoreForAssembly()
- Almacenamiento aislado
Se aplica a
GetStore(IsolatedStorageScope, Evidence, Type, Evidence, Type)
Obtiene el almacenamiento aislado correspondiente al dominio de aplicación especificado y a los objetos y tipos de evidencia de 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 enumeración.
- domainEvidence
- Evidence
Objeto que contiene la identidad del dominio de aplicación.
- domainEvidenceType
- Type
Tipo de identidad que se va a elegir entre la evidencia del dominio de aplicación.
- assemblyEvidence
- Evidence
Objeto que contiene la identidad del ensamblado de código.
- assemblyEvidenceType
- Type
Tipo de identidad que se va a elegir entre la evidencia del ensamblado de código de aplicación.
Devoluciones
Objeto que representa los parámetros.
Excepciones
No se han concedido permisos de almacenamiento aislado suficientes.
La domainEvidence identidad o assemblyEvidence no se ha pasado.
No scope es válido.
No se puede inicializar una ubicación de almacenamiento aislada.
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 pueden determinar los permisos para el dominio de aplicación.
O bien
scope contiene el valor Assembly, pero no se pueden determinar los permisos para el ensamblado que llama.
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
Note
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 IsolatedStorageExceptionerror con .
Consulte también
- GetUserStoreForDomain()
- GetUserStoreForApplication()
- GetUserStoreForAssembly()
- Almacenamiento aislado