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 de aplicativo fornecidos e ao escopo de armazenamento isolado.
Sobrecargas
| Nome | Description |
|---|---|
| GetStore(IsolatedStorageScope, Object) |
Obtém o armazenamento isolado correspondente à identidade do aplicativo fornecida. |
| 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 domínio de aplicativo fornecidos. |
| GetStore(IsolatedStorageScope, Type, Type) |
Obtém o armazenamento isolado correspondente ao escopo de armazenamento isolado dado os tipos de evidência de assembly e domínio do aplicativo. |
| GetStore(IsolatedStorageScope, Evidence, Type, Evidence, Type) |
Obtém o armazenamento isolado correspondente ao domínio de aplicativo fornecido e aos objetos e tipos de evidência do assembly. |
GetStore(IsolatedStorageScope, Object)
Obtém o armazenamento isolado correspondente à identidade do aplicativo fornecida.
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 para a identidade do aplicativo.
Retornos
Um objeto que representa os parâmetros.
Exceções
Permissões de armazenamento isoladas suficientes não foram concedidas.
A applicationIdentity identidade não foi passada.
O scope é inválido.
Não é 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 domínio do aplicativo atual retornou null.
-ou-
scope contém o valor Domain, mas as permissões para o domínio do aplicativo não podem ser determinadas.
-ou-
scope contém o valor Assembly, mas as permissões para o assembly de chamada não podem ser determinadas.
Comentários
Note
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()
- Armazenamento isolado
Aplica-se a
GetStore(IsolatedStorageScope, Type)
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);
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 do aplicativo.
Retornos
Um objeto que representa os parâmetros.
Exceções
Permissões de armazenamento isoladas suficientes não foram concedidas.
A applicationEvidenceType identidade não foi passada.
O scope é inválido.
Não é 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 domínio do aplicativo atual retornou null.
-ou-
scope contém o valor Domain, mas as permissões para o domínio do aplicativo não podem ser determinadas.
-ou-
scope contém o valor Assembly, mas as permissões para o assembly de chamada não podem ser determinadas.
Comentários
Note
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()
- Armazenamento isolado
Aplica-se a
GetStore(IsolatedStorageScope, Object, Object)
Obtém o armazenamento isolado correspondente aos objetos de evidência de assembly e domínio de aplicativo fornecidos.
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 para a identidade de domínio do aplicativo.
- assemblyIdentity
- Object
Um objeto que contém evidências para a identidade do assembly de código.
Retornos
Um objeto que representa os parâmetros.
Exceções
Permissões de armazenamento isoladas suficientes não foram concedidas.
Nem domainIdentity nem assemblyIdentity foi passado para dentro. Isso verifica se o construtor correto está sendo usado.
-ou-
domainIdentity Ou assemblyIdentity énull.
O scope é inválido.
Não é 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 domínio do aplicativo atual retornou null.
-ou-
scope contém o valor Domain, mas as permissões para o domínio do aplicativo não podem ser determinadas.
-ou-
scope contém o valor Assembly, mas as permissões para o 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.
Note
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()
- Armazenamento isolado
Aplica-se a
GetStore(IsolatedStorageScope, Type, Type)
Obtém o armazenamento isolado correspondente ao escopo de armazenamento isolado dado os tipos de evidência de assembly e domínio do aplicativo.
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 do Evidence que você pode escolher na lista de Evidence presentes no domínio do aplicativo de chamada.
null permite que o IsolatedStorage objeto escolha a evidência.
- assemblyEvidenceType
- Type
O tipo do Evidence que você pode escolher na lista de Evidence presentes no domínio do aplicativo de chamada.
null permite que o IsolatedStorage objeto escolha a evidência.
Retornos
Um objeto que representa os parâmetros.
Exceções
Permissões de armazenamento isoladas suficientes não foram concedidas.
O scope é inválido.
O tipo de evidência fornecido está ausente na lista de evidências do assembly.
-ou-
Não é 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 domínio do aplicativo atual retornou null.
-ou-
scope contém o valor Domain, mas as permissões para o domínio do aplicativo não podem ser determinadas.
-ou-
scope contém Assembly, mas as permissões para o assembly de chamada não podem ser determinadas.
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(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 abre GetStore um repositório isolado para os tipos de evidência que são passados.
Note
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()
- Armazenamento isolado
Aplica-se a
GetStore(IsolatedStorageScope, Evidence, Type, Evidence, Type)
Obtém o armazenamento isolado correspondente ao domínio de aplicativo fornecido e aos objetos e tipos 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
Uma combinação bit a bit dos valores de enumeração.
- domainEvidence
- Evidence
Um objeto que contém a identidade de domínio do aplicativo.
- domainEvidenceType
- Type
O tipo de identidade a ser escolhido na evidência de 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 na evidência do assembly de código do aplicativo.
Retornos
Um objeto que representa os parâmetros.
Exceções
Permissões de armazenamento isoladas suficientes não foram concedidas.
A domainEvidence identidade ou assemblyEvidence a identidade não foi passada.
O scope é inválido.
Não é 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 domínio do aplicativo atual retornou null.
-ou-
scope contém o valor Domain, mas as permissões para o domínio do aplicativo não podem ser determinadas.
-ou-
scope contém o valor Assembly, mas as permissões para o assembly de chamada não podem ser determinadas.
Exemplos
O exemplo de código a seguir obtém o armazenamento com base nas 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
Note
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()
- Armazenamento isolado