IsolatedStorageFile.GetStore Метод
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Получает изолированное хранилище, соответствующее данным объектам свидетельств сборки и домена приложения и изолированной области хранения.
Перегрузки
GetStore(IsolatedStorageScope, Object) |
Получает изолированное хранение, соответствующее данному удостоверению приложения. |
GetStore(IsolatedStorageScope, Type) |
Получает изолированное хранение, соответствующее области изоляции и объекту удостоверения приложения. |
GetStore(IsolatedStorageScope, Object, Object) |
Возвращает изолированное хранение, соответствующее объектам данного домена приложения и свидетельства сборки. |
GetStore(IsolatedStorageScope, Type, Type) |
Получает изолированное хранение, соответствующее области ограниченного действия изолированного хранения, предоставляющей типы домена приложения и свидетельства сборки. |
GetStore(IsolatedStorageScope, Evidence, Type, Evidence, Type) |
Возвращает изолированное хранение, соответствующее объектам и типам данного домена приложения и свидетельства сборки. |
GetStore(IsolatedStorageScope, Object)
- Исходный код:
- IsolatedStorageFile.cs
- Исходный код:
- IsolatedStorageFile.cs
- Исходный код:
- IsolatedStorageFile.cs
Получает изолированное хранение, соответствующее данному удостоверению приложения.
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
Параметры
- scope
- IsolatedStorageScope
Побитовое сочетание значений перечисления.
- applicationIdentity
- Object
Объект, содержащий свидетельство для удостоверения приложения.
Возвращаемое значение
Объект, представляющий параметры.
Исключения
Недостаточно разрешений для изолированного хранения.
Удостоверение applicationIdentity
не было передано.
scope
не является допустимым.
Расположение изолированного хранилища не может быть инициализировано.
-или-
scope
содержит значение Applicationперечисления , но идентификатор приложения вызывающего объекта не может быть определен, так как ActivationContext для текущего домена приложения возвращено null
значение .
-или-
scope
содержит значение Domain, но разрешения для домена приложения не могут быть определены.
-или-
scope
содержит значение Assembly, но разрешения для вызывающей сборки не могут быть определены.
Комментарии
Примечание
scope
Если параметр имеет значение , IsolatedStorageScope.Application а домен приложения, в котором установлена сборка, не имеет IsolatedStorageFilePermission, GetStore метод вернет IsolatedStorageFile объект без квоты. Последующие попытки создать IsolatedStorageFile объект с помощью IsolatedStorageFile объекта, который не имеет квоты, завершатся ошибкой IsolatedStorageExceptionс .
См. также раздел
- GetUserStoreForDomain()
- GetUserStoreForApplication()
- GetUserStoreForAssembly()
- Изолированное хранилище
Применяется к
GetStore(IsolatedStorageScope, Type)
- Исходный код:
- IsolatedStorageFile.cs
- Исходный код:
- IsolatedStorageFile.cs
- Исходный код:
- IsolatedStorageFile.cs
Получает изолированное хранение, соответствующее области изоляции и объекту удостоверения приложения.
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
Параметры
- scope
- IsolatedStorageScope
Побитовое сочетание значений перечисления.
- applicationEvidenceType
- Type
Объект , который содержит удостоверение приложения.
Возвращаемое значение
Объект, представляющий параметры.
Исключения
Недостаточно разрешений для изолированного хранения.
Удостоверение applicationEvidence
не было передано.
scope
не является допустимым.
Расположение изолированного хранилища не может быть инициализировано.
-или-
scope
содержит значение Applicationперечисления , но идентификатор приложения вызывающего объекта не может быть определен, так как ActivationContext для текущего домена приложения возвращено null
значение .
-или-
scope
содержит значение Domain, но разрешения для домена приложения не могут быть определены.
-или-
scope
содержит значение Assembly, но разрешения для вызывающей сборки не могут быть определены.
Комментарии
Примечание
scope
Если параметр имеет значение , Application а домен приложения, в котором установлена сборка, не имеет IsolatedStorageFilePermission, GetStore метод вернет IsolatedStorageFile объект без квоты. Последующие попытки создать IsolatedStorageFile объект с помощью IsolatedStorageFile объекта, который не имеет квоты, завершатся ошибкой IsolatedStorageExceptionс .
См. также раздел
- GetUserStoreForDomain()
- GetUserStoreForApplication()
- GetUserStoreForAssembly()
- Изолированное хранилище
Применяется к
GetStore(IsolatedStorageScope, Object, Object)
- Исходный код:
- IsolatedStorageFile.cs
- Исходный код:
- IsolatedStorageFile.cs
- Исходный код:
- IsolatedStorageFile.cs
Возвращает изолированное хранение, соответствующее объектам данного домена приложения и свидетельства сборки.
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
Параметры
- scope
- IsolatedStorageScope
Побитовое сочетание значений перечисления.
- domainIdentity
- Object
Объект, содержащий свидетельство для удостоверения домена приложения.
- assemblyIdentity
- Object
Объект, содержащий свидетельство для удостоверения сборки кода.
Возвращаемое значение
Объект, представляющий параметры.
Исключения
Недостаточно разрешений для изолированного хранения.
Ни domainIdentity
, ни assemblyIdentity
не были переданы. Проверяет правильность используемого конструктора.
-или-
Либо domainIdentity
, либо assemblyIdentity
имеет значение null
.
scope
не является допустимым.
Расположение изолированного хранилища не может быть инициализировано.
-или-
scope
содержит значение Applicationперечисления , но идентификатор приложения вызывающего объекта не может быть определен, так как ActivationContext для текущего домена приложения возвращено null
значение .
-или-
scope
содержит значение Domain, но разрешения для домена приложения не могут быть определены.
-или-
scope
содержит значение Assembly, но разрешения для вызывающей сборки не могут быть определены.
Комментарии
Эта форма наиболее полезна для административного GetStore
кода, который должен открыть хранилище, как если бы это была другая сборка. Хранилище открывается для предоставленных доказательств, а не для текущей выполняемой сборки.
Примечание
scope
Если параметр имеет значение , Domain а домен приложения, в котором установлена сборка, не имеет IsolatedStorageFilePermission, GetStore метод вернет IsolatedStorageFile объект без квоты. Последующие попытки создать IsolatedStorageFile объект с помощью IsolatedStorageFile объекта, который не имеет квоты, завершатся ошибкой IsolatedStorageExceptionс .
См. также раздел
- GetUserStoreForDomain()
- GetUserStoreForApplication()
- GetUserStoreForAssembly()
- Изолированное хранилище
Применяется к
GetStore(IsolatedStorageScope, Type, Type)
- Исходный код:
- IsolatedStorageFile.cs
- Исходный код:
- IsolatedStorageFile.cs
- Исходный код:
- IsolatedStorageFile.cs
Получает изолированное хранение, соответствующее области ограниченного действия изолированного хранения, предоставляющей типы домена приложения и свидетельства сборки.
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
Параметры
- scope
- IsolatedStorageScope
Побитовое сочетание значений перечисления.
- domainEvidenceType
- Type
Тип свидетельства Evidence, которое можно выбрать из списка свидетельств Evidence, присутствующих в домене вызывающего приложения. Значение null
позволяет объекту IsolatedStorage выбирать свидетельство.
- assemblyEvidenceType
- Type
Тип свидетельства Evidence, которое можно выбрать из списка свидетельств Evidence, присутствующих в домене вызывающего приложения. Значение null
позволяет объекту IsolatedStorage выбирать свидетельство.
Возвращаемое значение
Объект, представляющий параметры.
Исключения
Недостаточно разрешений для изолированного хранения.
scope
не является допустимым.
Предоставленный тип свидетельства отсутствует в списке свидетельства сборки.
-или-
Расположение изолированного хранилища не может быть инициализировано.
-или-
scope
содержит значение Applicationперечисления , но идентификатор приложения вызывающего объекта не может быть определен, так как ActivationContext для текущего домена приложения возвращено null
значение .
-или-
scope
содержит значение Domain, но разрешения для домена приложения не могут быть определены.
-или-
scope
содержит значение Assembly, но разрешения для вызывающей сборки не могут быть определены.
Примеры
В следующем примере кода демонстрируется GetStore метод . Полный контекст этого примера см. в обзоре IsolatedStorageFile .
// 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)
Комментарии
Это перегрузка, GetStore которая, скорее всего, будет вызвана из кода приложения.
Эта перегрузка GetStore открывает изолированное хранилище для передаваемых типов доказательств.
Примечание
scope
Если параметр имеет значение , Domain а домен приложения, в котором установлена сборка, не имеет IsolatedStorageFilePermission, GetStore метод вернет IsolatedStorageFile объект без квоты. Последующие попытки создать IsolatedStorageFile объект с помощью IsolatedStorageFile объекта, который не имеет квоты, завершатся ошибкой IsolatedStorageExceptionс .
См. также раздел
- GetUserStoreForDomain()
- GetUserStoreForApplication()
- GetUserStoreForAssembly()
- Изолированное хранилище
Применяется к
GetStore(IsolatedStorageScope, Evidence, Type, Evidence, Type)
Возвращает изолированное хранение, соответствующее объектам и типам данного домена приложения и свидетельства сборки.
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
Параметры
- scope
- IsolatedStorageScope
Побитовое сочетание значений перечисления.
- domainEvidence
- Evidence
Объект, который содержит удостоверение домена приложения.
- domainEvidenceType
- Type
Тип-идентификатор для выбора из свидетельства домена приложения.
- assemblyEvidence
- Evidence
Объект, который содержит удостоверение сборки кода.
- assemblyEvidenceType
- Type
Тип-идентификатор для выбора из свидетельства сборки кода приложения.
Возвращаемое значение
Объект, представляющий параметры.
Исключения
Недостаточно разрешений для изолированного хранения.
Удостоверение domainEvidence
или assemblyEvidence
не было передано.
scope
не является допустимым.
Расположение изолированного хранилища не может быть инициализировано.
-или-
scope
содержит значение Applicationперечисления , но идентификатор приложения вызывающего объекта не может быть определен, так как ActivationContext для текущего домена приложения возвращено null
значение .
-или-
scope
содержит значение Domain, но разрешения для домена приложения не могут быть определены.
-или-
scope
содержит значение Assembly, но разрешения для вызывающей сборки не могут быть определены.
Примеры
В следующем примере кода выполняется получение хранилища на основе свидетельства издателя.
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
Комментарии
Примечание
scope
Если параметр имеет значение , Domain а домен приложения, в котором установлена сборка, не имеет IsolatedStorageFilePermission, GetStore метод вернет IsolatedStorageFile объект без квоты. Последующие попытки создать IsolatedStorageFile объект с помощью IsolatedStorageFile объекта, который не имеет квоты, завершатся ошибкой IsolatedStorageExceptionс .
См. также раздел
- GetUserStoreForDomain()
- GetUserStoreForApplication()
- GetUserStoreForAssembly()
- Изолированное хранилище