2011-03-05 2 views
3

Использование IsolatedStorage с IE Защищенный режим.IsolatedStorage не работает с защищенным режимом IE? C#

Я строю C# .NET (VS2010) IE8 надстройки на приложение, но у меня возникают некоторые экономии неприятности данных с использованием IsolatedStorage на 7 64-битной машине Windows, , когда по умолчанию в Internet Explorer защищенный режим.

(я переключение на этот метод с использованием параметров, как Properties.Settings.Default.Save();.., Который также не удалось с IE Protected Mode на я также пытался сохранять файлы в LocalLow без везения либо)

Может ли кто-нибудь указать, как я могу изменить следующий код, чтобы включить его в IE с защищенным режимом? Я пробовал так много идей и ничего до сих пор не работал. Конечно, должен быть способ сохранить данные?

//FileIOPermission perm = new FileIOPermission(PermissionState.Unrestricted); 
    //perm.Assert(); 
    //perm.Demand(); 

//---Write--- 
IsolatedStorageFile app_isoStore = IsolatedStorageFile.GetStore(
    IsolatedStorageScope.User | IsolatedStorageScope.Assembly, null, null); 
IsolatedStorageFileStream isoStream = new IsolatedStorageFileStream(
    "app_started.txt", FileMode.OpenOrCreate, FileAccess.Write, app_isoStore); 

StreamWriter iswriter = new StreamWriter(isoStream); 
iswriter.WriteLine("Run"); 
iswriter.Close(); 

//app_isoStore.Dispose(); 
app_isoStore.Close(); 

//---Read--- 
IsolatedStorageFile app_isoStoreCheck = IsolatedStorageFile.GetStore(
    IsolatedStorageScope.User | IsolatedStorageScope.Assembly, null, null); 
IsolatedStorageFileStream isoReadStream = new IsolatedStorageFileStream(
    "app_started.txt", FileMode.Open, FileAccess.Read, app_isoStoreCheck); 

StreamReader isreader = new StreamReader(isoReadStream); 
string rdata = isreader.ReadToEnd(); 
isreader.Close(); 

//app_isoStoreCheck.Dispose(); 
app_isoStoreCheck.Close(); 
+0

Я скопировал ваш код точно так же, как вы его написали в своем примере, и он отлично работает. Он считывает значение «Выполнить» из файла. Он также работает, если я закрою программу, закомментирую часть, которая пишет, а затем снова запустите программу, чтобы прочитать данные. Работает так, как ожидалось. Попробуйте выполнить однократную настройку своей программы, чтобы убедиться, что она работает или не работает. –

+0

Подождите, вы сказали «Приложение IE8». Это веб-сервис? Я сделал свою программу как отдельную консольную программу. Полагаю, что есть какая-то разница. У меня нет возможности легко проверить это как веб-сервис или страницу ASP.NET, или что-то еще. –

+0

Благодарим вас за тестирование. Я попытался сделать вывод после каждой строки, и это не вызвало исключения, поэтому оказалось, что он должен сработать. Я просто не понимаю, почему это не так. – Donna

ответ

1

Вы не предоставляете никаких доказательств.

Вы пробовали следующие перегруженные вместо GetStore:

  • GetUserStoreForApplication
  • GetUserStoreForUser
  • GetUserStoreForDomain
  • GetMachineStoreForApplication
  • GetMachineStoreForUser
  • GetMachineStoreForDomain

Какая операционная система вы используете? Какую версию .NET вы используете? Какой тип файловой системы вы выполняете? Вы администратор машины? Какова политика IsolatedStorage на машине? Включено ли это? Сколько места у каждого пользователя?

Вы видите файл, созданный в соответствующем каталоге? Если нет, то вы также можете иметь проблемы разрешений ... NTFS ACL и т.д. ...

http://msdn.microsoft.com/en-us/library/3ak841sy(v=vs.80).aspx

лишь некоторые предложения.

HTH

+0

Благодарим вас за ответ. Я использую .NET Framework 4.0. Ошибка GetUserStoreForUser() с исключением. Файл не создается. Проблема возникает на 64-битной машине Windows 7 с NTFS.Я не изучал политику, так как я только начал использовать IsolStorage, поскольку мне сказали, что это метод, который всегда будет работать, и что я должен переключиться на него вместо использования метода настройки Visual Studio, который оказался не в состоянии работать под умолчанию Защищенный режим IE. – Donna

+0

Изолированное хранилище не всегда будет работать. Пользователь может заблокировать его, а также другие причины. –

+0

Есть ли что-нибудь, что сработает? – Donna

Смежные вопросы