Хранение параметров настройки консоли
Хранение параметров настройки консоли
Стоит еще сказать о хранении настроек консоли. Если вы думаете, что настройки консоли хранятся в реестре, то это не так. На самом деле все настройки консолей содержатся в самих файлах консолей. Это легко понять на примере консоли, открытой в редакторе, подобном Блокноту. Это довольно важная особенность работы консоли, понимание которой очень важно для правильного ее использования.
Рассмотрим простой пример. Допустим, есть консоль, содержимое которой было скрыто с помощью диалога Параметры (рис. 9.4). Другими словами, все флажки, которые находятся в этом диалоге, были сняты.
Рис. 9.4. Использование диалога Параметры для скрытия возможности настройки вида консоли
Если вы используете такой метод скрытия возможности изменения вида консоли, то посмотрим на содержимое данного файла консоли, открытого в Блокноте (рис. 9.5).
Рис. 9.5. Форматирование консоли
Как можно заметить, файлы консоли являются обычными файлами XML. А теперь посмотрите на нижнюю строку на рис. 9.5 — в этой строке определяется содержимое тега ViewOptions. Данный тег имеет следующие важные параметры:
? NoStdMenus — если значение равно true, то в меню консоли будут скрыты меню Действие, Вид и Избранное;
? NoStdButtons — если значение параметра равно true, то в консоли будет скрыта панель инструментов;
? NoSnapinMenus — если значение равно true, то меню оснасток будут скрыты (если, конечно, они имеют меню);
? NoSnapinButtons — если значение параметра равно true, то панели инструментов оснасток будут скрыты;
? NoStatusBar — если значение равно true, то строка состояния консоли будет скрыта;
? NoTaskpadTabs — если значение данного параметра равно true, то вкладки панели задач консоли будут скрыты;
? DescriptionBarVisible — если значение равно false, то область описания консоли будет скрыта.
Например, если присвоить параметру NoStdMenus значение false, то при следующем открытии данной оснастки меню Действие, Вид и Избранное опять отобразятся в строке меню.
Рассмотрим другой пример. В этом примере для ограничения возможностей работы консоли воспользуемся не только диалогом Параметры из меню Вид, но и диалогом Параметры, открыть который можно с помощью команды Параметры меню Консоль (рис. 9.6). С помощью данного диалога можно изменить значок консоли, а также определить режим ее отображения (список Режим консоли): Авторский, Пользовательский — полный доступ, Пользовательский — ограниченный доступ, много окон, Пользовательский — ограниченный доступ, одно окно. Режим Авторский используется по умолчанию и позволяет выполнять любые команды, доступные с помощью консоли. Режим Пользовательский — полный доступ позволяет выполнить любые доступные в консоли возможности, но запрещает добавление в консоль новых оснасток. Режим Пользовательский — ограниченный доступ, много окон запрещает добавление в консоль новых оснасток, а также закрытие окон консоли (при этом новые окна будет разрешено создавать). Режим Пользовательский — ограниченный доступ, одно окно запрещает добавление в консоль новых оснасток, а также использование в консоли более одного окна.
Рис. 9.6. Диалог настройки ограничений консоли
Если будет выбран один из пользовательских режимов отображения консоли, то в диалоге Параметры также станут доступны флажки Не сохранять изменения для этой консоли и Разрешить пользователю настраивать вид консоли. Из названия флажков понятно, для ограничения чего они используются.
На рис. 9.7 можно увидеть результат использования режима Пользовательский — ограниченный доступ, одно окно. Как можно заметить, возможность добавления и удаления оснасток, а также возможность создания новых окон были скрыты. Тем не менее команда Параметры из меню Консоль осталась, но при ее открытии окажется, что она не будет содержать вкладки Консоль.
Рис. 9.7. Применение пользовательского режима
Итак, что же изменилось при использовании режима Пользовательский — ограниченный доступ, одно окно в содержимом файла консоли? На рис. 9.8 можно увидеть изменения, которые произошли в верхнем теге MMC_ConsoleFile. Одним из его параметров является ProgramMode, который в данном случае равен UserSDI. Следует заметить, что при авторском режиме доступа к оснастке этот параметр равен Author. Другими словами, если вы измените значение параметра ProgramMode на Author, то при следующем запуске консоли попадете в авторский режим с возможностью добавления новых оснасток.
Как можно заметить, параметры ограничений консолей обходятся довольно просто. Поэтому если вы будете создавать ограниченные оснастки для пользователей (как советуют многие администраторы), то не забудьте установить с помощью ACL (вкладка Безопасность диалога свойств оснастки) только доступ на чтение и исполнение консоли для пользователя, которому создаете оснастку (если, конечно, консоль не помещается в папку, от которой она будет наследовать такие права).
Рис. 9.8. Применение пользовательского режима консоли