IsolatedStorageFile.GetStore Método
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Obtém o armazenamento isolado correspondente aos objetos de evidência de assembly e domínio do aplicativo e escopo de armazenamento isolado.
Sobrecargas
GetStore(IsolatedStorageScope, Object) |
Obtém o armazenamento isolado que corresponde à identidade de determinado aplicativo. |
GetStore(IsolatedStorageScope, Type) |
Obtém o armazenamento isolado correspondente ao escopo de isolamento e ao objeto de identidade do aplicativo. |
GetStore(IsolatedStorageScope, Object, Object) |
Obtém o armazenamento isolado correspondente aos objetos de evidência de assembly e o domínio de aplicativo determinado. |
GetStore(IsolatedStorageScope, Type, Type) |
Obtém o armazenamento isolado correspondente ao escopo do armazenamento isolado considerando o domínio do aplicativo e os tipos de evidência de assembly. |
GetStore(IsolatedStorageScope, Evidence, Type, Evidence, Type) |
Obtém o armazenamento isolado correspondente ao domínio do aplicativo determinado e aos tipos e objetos de evidência do assembly. |
GetStore(IsolatedStorageScope, Object)
- Origem:
- IsolatedStorageFile.cs
- Origem:
- IsolatedStorageFile.cs
- Origem:
- IsolatedStorageFile.cs
Obtém o armazenamento isolado que corresponde à identidade de determinado aplicativo.
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
Um combinação bit a bit dos valores de enumeração.
- applicationIdentity
- Object
Um objeto que contém evidência para a identidade do aplicativo.
Retornos
Um objeto que representa os parâmetros.
Exceções
Não foram concedidas permissões de armazenamento isolado suficientes.
A applicationIdentity
identidade não foi passada.
O scope
é inválido.
Não foi possível inicializar um local de armazenamento isolado.
- ou -
scope
contém o valor Applicationde enumeração , mas a identidade do aplicativo do chamador não pode ser determinada, porque o ActivationContext para o domínio do aplicativo atual retornou null
.
- ou -
scope
contém o valor Domain, mas não é possível determinar as permissões do domínio do aplicativo.
- ou -
scope
contém o valor Assembly, mas as permissões do assembly de chamada não podem ser determinadas.
Comentários
Observação
Se o scope
parâmetro for IsolatedStorageScope.Application e o domínio do aplicativo no qual o assembly está instalado não tiver IsolatedStorageFilePermission, o GetStore método retornará um IsolatedStorageFile objeto sem uma cota. Posteriormente, as tentativas de criar um IsolatedStorageFile objeto usando o IsolatedStorageFile objeto que não tem uma cota falharão com um IsolatedStorageException.
Confira também
- GetUserStoreForDomain()
- GetUserStoreForApplication()
- GetUserStoreForAssembly()
- Armazenamentos isolado
Aplica-se a
GetStore(IsolatedStorageScope, Type)
- Origem:
- IsolatedStorageFile.cs
- Origem:
- IsolatedStorageFile.cs
- Origem:
- IsolatedStorageFile.cs
Obtém o armazenamento isolado correspondente ao escopo de isolamento e ao objeto de identidade do aplicativo.
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
Um combinação bit a bit dos valores de enumeração.
- applicationEvidenceType
- Type
Um objeto que contém a identidade do aplicativo.
Retornos
Um objeto que representa os parâmetros.
Exceções
Não foram concedidas permissões de armazenamento isolado suficientes.
A applicationEvidence
identidade não foi passada.
O scope
é inválido.
Não foi possível inicializar um local de armazenamento isolado.
- ou -
scope
contém o valor Applicationde enumeração , mas a identidade do aplicativo do chamador não pode ser determinada, porque o ActivationContext para o domínio do aplicativo atual retornou null
.
- ou -
scope
contém o valor Domain, mas não é possível determinar as permissões do domínio do aplicativo.
- ou -
scope
contém o valor Assembly, mas as permissões do assembly de chamada não podem ser determinadas.
Comentários
Observação
Se o scope
parâmetro for Application e o domínio do aplicativo no qual o assembly está instalado não tiver IsolatedStorageFilePermission, o GetStore método retornará um IsolatedStorageFile objeto sem uma cota. Posteriormente, as tentativas de criar um IsolatedStorageFile objeto usando o IsolatedStorageFile objeto que não tem uma cota falharão com um IsolatedStorageException.
Confira também
- GetUserStoreForDomain()
- GetUserStoreForApplication()
- GetUserStoreForAssembly()
- Armazenamentos isolado
Aplica-se a
GetStore(IsolatedStorageScope, Object, Object)
- Origem:
- IsolatedStorageFile.cs
- Origem:
- IsolatedStorageFile.cs
- Origem:
- IsolatedStorageFile.cs
Obtém o armazenamento isolado correspondente aos objetos de evidência de assembly e o domínio de aplicativo determinado.
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
Um combinação bit a bit dos valores de enumeração.
- domainIdentity
- Object
Um objeto que contém evidência para a identidade de domínio do aplicativo.
- assemblyIdentity
- Object
Um objeto que contém evidência para a identidade do assembly de código.
Retornos
Um objeto que representa os parâmetros.
Exceções
Não foram concedidas permissões de armazenamento isolado suficientes.
Nem domainIdentity
nem assemblyIdentity
foi passado. Isso verifica se o construtor correto está sendo usado.
- ou -
O domainIdentity
ou assemblyIdentity
é null
.
O scope
é inválido.
Não foi possível inicializar um local de armazenamento isolado.
- ou -
scope
contém o valor Applicationde enumeração , mas a identidade do aplicativo do chamador não pode ser determinada, porque o ActivationContext para o domínio do aplicativo atual retornou null
.
- ou -
scope
contém o valor Domain, mas não é possível determinar as permissões do domínio do aplicativo.
- ou -
scope
contém o valor Assembly, mas as permissões do assembly de chamada não podem ser determinadas.
Comentários
Essa forma de GetStore
é mais útil para o código administrativo que precisa abrir um repositório como se fosse outro assembly. O repositório é aberto para as evidências fornecidas e não para o assembly em execução no momento.
Observação
Se o scope
parâmetro for Domain e o domínio do aplicativo no qual o assembly está instalado não tiver IsolatedStorageFilePermission, o GetStore método retornará um IsolatedStorageFile objeto sem uma cota. Posteriormente, as tentativas de criar um IsolatedStorageFile objeto usando o IsolatedStorageFile objeto que não tem uma cota falharão com um IsolatedStorageException.
Confira também
- GetUserStoreForDomain()
- GetUserStoreForApplication()
- GetUserStoreForAssembly()
- Armazenamentos isolado
Aplica-se a
GetStore(IsolatedStorageScope, Type, Type)
- Origem:
- IsolatedStorageFile.cs
- Origem:
- IsolatedStorageFile.cs
- Origem:
- IsolatedStorageFile.cs
Obtém o armazenamento isolado correspondente ao escopo do armazenamento isolado considerando o domínio do aplicativo e os tipos de evidência de assembly.
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
Um combinação bit a bit dos valores de enumeração.
- domainEvidenceType
- Type
O tipo do Evidence que pode ser escolhido na lista de Evidence presente no domínio do aplicativo de chamada.
null
permite que o objeto IsolatedStorage escolha a evidência.
- assemblyEvidenceType
- Type
O tipo do Evidence que pode ser escolhido na lista de Evidence presente no domínio do aplicativo de chamada.
null
permite que o objeto IsolatedStorage escolha a evidência.
Retornos
Um objeto que representa os parâmetros.
Exceções
Não foram concedidas permissões de armazenamento isolado suficientes.
O scope
é inválido.
O tipo de evidência fornecido está ausente da lista de evidências do assembly.
- ou -
Não foi possível inicializar um local de armazenamento isolado.
- ou -
scope
contém o valor Applicationde enumeração , mas a identidade do aplicativo do chamador não pode ser determinada, porque o ActivationContext para o domínio do aplicativo atual retornou null
.
- ou -
scope
contém o valor Domain, mas não é possível determinar as permissões do domínio do aplicativo.
- ou -
scope
contém Assembly, mas não é possível determinar as permissões do assembly de chamada.
Exemplos
O exemplo de código a seguir demonstra o GetStore método . Para obter o contexto completo deste exemplo, consulte a IsolatedStorageFile visão geral.
// 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)
Comentários
Essa é a sobrecarga mais provável de GetStore ser chamada do código do aplicativo.
Essa sobrecarga de GetStore abre um repositório isolado para os tipos de evidência que são passados.
Observação
Se o scope
parâmetro for Domain e o domínio do aplicativo no qual o assembly estiver instalado não tiver IsolatedStorageFilePermission, o GetStore método retornará um IsolatedStorageFile objeto sem uma cota. Posteriormente, as tentativas de criar um IsolatedStorageFile objeto usando o IsolatedStorageFile objeto que não tem uma cota falharão com um IsolatedStorageException.
Confira também
- GetUserStoreForDomain()
- GetUserStoreForApplication()
- GetUserStoreForAssembly()
- Armazenamentos isolado
Aplica-se a
GetStore(IsolatedStorageScope, Evidence, Type, Evidence, Type)
Obtém o armazenamento isolado correspondente ao domínio do aplicativo determinado e aos tipos e objetos de evidência do assembly.
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
Um combinação bit a bit dos valores de enumeração.
- domainEvidence
- Evidence
Um objeto que contém a identidade do domínio do aplicativo.
- domainEvidenceType
- Type
O tipo de identidade a ser escolhido da evidência do domínio do aplicativo.
- assemblyEvidence
- Evidence
Um objeto que contém a identidade do assembly de código.
- assemblyEvidenceType
- Type
O tipo de identidade a ser escolhido da evidência do assembly do código do aplicativo.
Retornos
Um objeto que representa os parâmetros.
Exceções
Não foram concedidas permissões de armazenamento isolado suficientes.
A identidade domainEvidence
ou assemblyEvidence
não foi enviada.
O scope
é inválido.
Não foi possível inicializar um local de armazenamento isolado.
- ou -
scope
contém o valor Applicationde enumeração , mas a identidade do aplicativo do chamador não pode ser determinada, porque o ActivationContext para o domínio do aplicativo atual retornou null
.
- ou -
scope
contém o valor Domain, mas não é possível determinar as permissões do domínio do aplicativo.
- ou -
scope
contém o valor Assembly, mas as permissões do assembly de chamada não podem ser determinadas.
Exemplos
O exemplo de código a seguir obtém armazenamento com base em evidências do editor.
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
Comentários
Observação
Se o scope
parâmetro for Domain e o domínio do aplicativo no qual o assembly estiver instalado não tiver IsolatedStorageFilePermission, o GetStore método retornará um IsolatedStorageFile objeto sem uma cota. Posteriormente, as tentativas de criar um IsolatedStorageFile objeto usando o IsolatedStorageFile objeto que não tem uma cota falharão com um IsolatedStorageException.
Confira também
- GetUserStoreForDomain()
- GetUserStoreForApplication()
- GetUserStoreForAssembly()
- Armazenamentos isolado