IsolatedStorageFile.GetStore Método
Definição
Importante
Algumas informações dizem respeito a um produto pré-lançado que pode ser substancialmente modificado antes de ser lançado. A Microsoft não faz garantias, de forma expressa ou implícita, em relação à informação aqui apresentada.
Obtém armazenamento isolado correspondente ao domínio de aplicação e objetos de evidência em assembly, bem como o âmbito de armazenamento isolado.
Sobrecargas
| Name | Description |
|---|---|
| GetStore(IsolatedStorageScope, Object) |
Obtém armazenamento isolado correspondente à identidade da aplicação dada. |
| GetStore(IsolatedStorageScope, Type) |
Obtém armazenamento isolado correspondente ao âmbito de isolamento e ao objeto identidade da aplicação. |
| GetStore(IsolatedStorageScope, Object, Object) |
Obtém o armazenamento isolado correspondente ao domínio de aplicação dado e aos objetos de evidência em assembly. |
| GetStore(IsolatedStorageScope, Type, Type) |
Obtém armazenamento isolado correspondente ao âmbito de armazenamento isolado dado o domínio de aplicação e os tipos de evidência em assembly. |
| GetStore(IsolatedStorageScope, Evidence, Type, Evidence, Type) |
Obtém armazenamento isolado correspondente ao domínio de aplicação dado e aos objetos e tipos de evidência em assembly. |
GetStore(IsolatedStorageScope, Object)
Obtém armazenamento isolado correspondente à identidade da aplicação 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);
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
Uma combinação bit a bit dos valores de enumeração.
- applicationIdentity
- Object
Um objeto que contém evidências da identidade da aplicação.
Devoluções
Um objeto que representa os parâmetros.
Exceções
Não foram concedidas permissões suficientes de armazenamento isolado.
A applicationIdentity identidade não foi transmitida.
É scope inválido.
Um local de armazenamento isolado não pode ser inicializado.
-ou-
scope contém o valor Applicationde enumeração , mas a identidade da aplicação do chamador não pode ser determinada, porque para ActivationContext o domínio de aplicação atual devolveu null.
-ou-
scope contém o valor Domain, mas as permissões para o domínio da aplicação não podem ser determinadas.
-ou-
scope contém o valor Assembly, mas as permissões para o assembly chamador não podem ser determinadas.
Observações
Note
Se o scope parâmetro for IsolatedStorageScope.Application e o domínio de aplicação onde a montagem está instalada não tiver IsolatedStorageFilePermission, o GetStore método devolverá um IsolatedStorageFile objeto sem quota. Tentativas posteriores de criar um IsolatedStorageFile objeto usando o IsolatedStorageFile objeto que não tem quota falharão com um IsolatedStorageException.
Ver também
- GetUserStoreForDomain()
- GetUserStoreForApplication()
- GetUserStoreForAssembly()
- Armazenamento isolado
Aplica-se a
GetStore(IsolatedStorageScope, Type)
Obtém armazenamento isolado correspondente ao âmbito de isolamento e ao objeto identidade da aplicação.
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
Uma combinação bit a bit dos valores de enumeração.
- applicationEvidenceType
- Type
Um objeto que contém a identidade da aplicação.
Devoluções
Um objeto que representa os parâmetros.
Exceções
Não foram concedidas permissões suficientes de armazenamento isolado.
A applicationEvidenceType identidade não foi transmitida.
É scope inválido.
Um local de armazenamento isolado não pode ser inicializado.
-ou-
scope contém o valor Applicationde enumeração , mas a identidade da aplicação do chamador não pode ser determinada, porque para o ActivationContext domínio de aplicação atual devolveu null.
-ou-
scope contém o valor Domain, mas as permissões para o domínio da aplicação não podem ser determinadas.
-ou-
scope contém o valor Assembly, mas as permissões para o assembly chamador não podem ser determinadas.
Observações
Note
Se o scope parâmetro for Application e o domínio de aplicação onde a montagem está instalada não tiver IsolatedStorageFilePermission, o GetStore método devolverá um IsolatedStorageFile objeto sem quota. Tentativas posteriores de criar um IsolatedStorageFile objeto usando o IsolatedStorageFile objeto que não tem quota falharão com um IsolatedStorageException.
Ver também
- GetUserStoreForDomain()
- GetUserStoreForApplication()
- GetUserStoreForAssembly()
- Armazenamento isolado
Aplica-se a
GetStore(IsolatedStorageScope, Object, Object)
Obtém o armazenamento isolado correspondente ao domínio de aplicação dado e aos objetos de evidência em assembly.
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
Uma combinação bit a bit dos valores de enumeração.
- domainIdentity
- Object
Um objeto que contém evidências da identidade do domínio de aplicação.
- assemblyIdentity
- Object
Um objeto que contém evidências da identidade do assembly de código.
Devoluções
Um objeto que representa os parâmetros.
Exceções
Não foram concedidas permissões suficientes de armazenamento isolado.
Nenhum domainIdentity deles foi aprovado assemblyIdentity . Isto verifica se o construtor correto está a ser utilizado.
-ou-
Ou domainIdentity é assemblyIdentitynull.
É scope inválido.
Um local de armazenamento isolado não pode ser inicializado.
-ou-
scope contém o valor Applicationde enumeração , mas a identidade da aplicação do chamador não pode ser determinada, porque para o ActivationContext domínio de aplicação atual devolveu null.
-ou-
scope contém o valor Domain, mas as permissões para o domínio da aplicação não podem ser determinadas.
-ou-
scope contém o valor Assembly, mas as permissões para o assembly chamador não podem ser determinadas.
Observações
Esta forma de GetStore é mais útil para código administrativo que precisa de abrir uma loja como se fosse outra assembleia. A loja é aberta para as provas apresentadas e não para a assembleia que está a executar.
Note
Se o scope parâmetro for Domain e o domínio de aplicação onde a montagem está instalada não tiver IsolatedStorageFilePermission, o GetStore método devolverá um IsolatedStorageFile objeto sem quota. Tentativas posteriores de criar um IsolatedStorageFile objeto usando o IsolatedStorageFile objeto que não tem quota falharão com um IsolatedStorageException.
Ver também
- GetUserStoreForDomain()
- GetUserStoreForApplication()
- GetUserStoreForAssembly()
- Armazenamento isolado
Aplica-se a
GetStore(IsolatedStorageScope, Type, Type)
Obtém armazenamento isolado correspondente ao âmbito de armazenamento isolado dado o domínio de aplicação e os tipos de evidência em 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);
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
Uma combinação bit a bit dos valores de enumeração.
- domainEvidenceType
- Type
O tipo de Evidence que pode escolher da lista de Evidence presentes no domínio da aplicação que chama.
null Deixa o IsolatedStorage objeto escolher a prova.
- assemblyEvidenceType
- Type
O tipo de Evidence que pode escolher da lista de Evidence presentes no domínio da aplicação que chama.
null Deixa o IsolatedStorage objeto escolher a prova.
Devoluções
Um objeto que representa os parâmetros.
Exceções
Não foram concedidas permissões suficientes de armazenamento isolado.
É scope inválido.
O tipo de prova fornecido está em falta na lista de provas da assembleia.
-ou-
Um local de armazenamento isolado não pode ser inicializado.
-ou-
scope contém o valor Applicationde enumeração , mas a identidade da aplicação do chamador não pode ser determinada, porque para o ActivationContext domínio de aplicação atual devolveu null.
-ou-
scope contém o valor Domain, mas as permissões para o domínio da aplicação não podem ser determinadas.
-ou-
scope contém Assembly, mas as permissões para a assembleia que chama não podem ser determinadas.
Exemplos
O seguinte exemplo de código demonstra o GetStore método. Para o contexto completo deste exemplo, veja a IsolatedStorageFile visão geral.
// 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)
Observações
Esta é a sobrecarga da GetStore maioria das mais prováveis a ser chamadas a partir do código da aplicação.
Esta sobrecarga de GetStore abre um armazenamento isolado para os tipos de evidências que são entregues.
Note
Se o scope parâmetro for Domain e o domínio de aplicação onde a montagem está instalada não tiver IsolatedStorageFilePermission, o GetStore método devolverá um IsolatedStorageFile objeto sem quota. Tentativas posteriores de criar um IsolatedStorageFile objeto usando o IsolatedStorageFile objeto que não tem quota falharão com um IsolatedStorageException.
Ver também
- GetUserStoreForDomain()
- GetUserStoreForApplication()
- GetUserStoreForAssembly()
- Armazenamento isolado
Aplica-se a
GetStore(IsolatedStorageScope, Evidence, Type, Evidence, Type)
Obtém armazenamento isolado correspondente ao domínio de aplicação dado e aos objetos e tipos de evidência em 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
Uma combinação bit a bit dos valores de enumeração.
- domainEvidence
- Evidence
Um objeto que contém a identidade do domínio de aplicação.
- domainEvidenceType
- Type
O tipo de identidade a escolher entre as provas do domínio da aplicação.
- assemblyEvidence
- Evidence
Um objeto que contém a identidade assembly do código.
- assemblyEvidenceType
- Type
O tipo de identidade a escolher entre as evidências de assembly do código da aplicação.
Devoluções
Um objeto que representa os parâmetros.
Exceções
Não foram concedidas permissões suficientes de armazenamento isolado.
A domainEvidence identidade de Or assemblyEvidence não foi transmitida.
É scope inválido.
Um local de armazenamento isolado não pode ser inicializado.
-ou-
scope contém o valor Applicationde enumeração , mas a identidade da aplicação do chamador não pode ser determinada, porque para o ActivationContext domínio de aplicação atual devolveu null.
-ou-
scope contém o valor Domain, mas as permissões para o domínio da aplicação não podem ser determinadas.
-ou-
scope contém o valor Assembly, mas as permissões para o assembly chamador não podem ser determinadas.
Exemplos
O seguinte exemplo de código 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
Observações
Note
Se o scope parâmetro for Domain e o domínio de aplicação onde a montagem está instalada não tiver IsolatedStorageFilePermission, o GetStore método devolverá um IsolatedStorageFile objeto sem quota. Tentativas posteriores de criar um IsolatedStorageFile objeto usando o IsolatedStorageFile objeto que não tem quota falharão com um IsolatedStorageException.
Ver também
- GetUserStoreForDomain()
- GetUserStoreForApplication()
- GetUserStoreForAssembly()
- Armazenamento isolado