Файловая система Windows 8

Источник: windows-eight

В Windows 8, как ни странно, используется NTFS. В то же время подобие смартфоновской системы не ограничивается только пользовательским интерфейсом; приложения Windows Store имеют такой же ограниченный доступ к файловой системе, как приложения Windows Phone, то есть выполняются в песочнице. Таким образом, каждое приложение имеет свое изолированное хранилище.

Расширение по сравнению со смартфоновской ОС - это отдельное хранилище для каждого зарегистрированного в системе юзера, имеющего доступ к приложению. Каждое изолированное хранилище содержит три папки:

  • LocalFolder - предназначена для хранения служебных файлов;
  • RoamingFolder - хранит файлы, синхронизируемые на всех девайсах, на которых пользователь использует данное приложение;
  • TemporaryFolder - в ней сохраняются временные файлы определенного приложения, но не стоит здесь сохранять что-то ценное, поскольку операционная система время от времени эту папку чистит.

Каждая из перечисленных папок может содержать подкаталоги.

Для сохранения настроек приложение предоставляет хранилища LocalSettings и RoamingSettings: в первом хранятся локальные данные, а второе используется для синхронизации настроек между различными девайсами. Для примера сохраним данные для подключения к веб-ресурсу нашего гипотетического приложения. Добавь на форму два элемента типа TextBox, соответственно для ввода логина и пароля, а также две кнопки (Button): Save и Load. В обработчике первой для сохранения значения напиши (код сокращен):

1 2 Windows. Storage. ApplicationData. Current. LocalSettings. _ Values["Login"] = LoginBox.Text;

Чтобы загрузить значение в обработчике нажатия второй кнопки, осуществим обратный процесс, проверив сперва присутствие значения:

1 2 3 4 5 6 var store = Windows.Storage.ApplicationData.Current. LocalSettings; if (store.Values.ContainsKey("Login")) { LoginBox.Text = (string)Windows. Storage. _ ApplicationData.Current.LocalSettings.Values["Login"]; }

Сохранение данных в отдельное хранилище определенной программы напомнило мне былые времена, когда в Windows отсутствовал реестр и каждое отдельно взятое приложение хранило свои данные в ini-файле. Чтобы получить из приложения доступ к таким системным папкам, как "Документы", "Изображения", "Видео" и другие, нужно объявить об этом в манифесте приложения, открыв файл Package.appxmanifest.

В манифесте приложения настраивается широкий диапазон параметров, сгруппированных и разделенных по вкладкам: "Интерфейс приложения" - здесь настраиваются поддерживаемые ориентации экрана, язык, имя, точка входа, начальная заставка и эмблема; на вкладке "Возможности" как раз присутствуют переключатели для включения доступа к нужным системным папкам, устройствам (камере, микрофону, внешним накопителям]. На вкладке "Объявления" регистрируются события, на которые может отвечать приложение, кроме того, здесь указываются разрешения на выполнение действий. Список "Доступных объявлений" довольно-таки исчерпывающий. И на закладке "Упаковка" указывается имя пакета, версия, семейство и издатель.


Страница сайта http://www.interface.ru
Оригинал находится по адресу http://www.interface.ru/home.asp?artId=32325