Рассылка закрыта
При закрытии подписчики были переданы в рассылку "Всё о работе в Интернет" на которую и рекомендуем вам подписаться.
Вы можете найти рассылки сходной тематики в Каталоге рассылок.
Секреты Windows: статьи о реестре, rundll32.exe, программах Глава 3. Консоль управления Microsoft. Часть 1. Окно консоли
Другие наши рассылки:
Новости нашего сайта: Книга "Недокументированные возможности Windows XP. Библиотека пользователя", Глава 3. Консоль управления Microsoft. Часть 1. Окно консоли управления Microsoft Консоль управления Microsoft — это специальное средство для администрирования компьютера, которое, начиная с Windows NT 4.0, пришло на смену Панели управления. Если раньше Панель управления содержала в себе большую часть программ, направленных на администрирования компьютера, то теперь эти программы были преобразованы в так называемые оснастки, доступ к которым можно получить именно с помощью консоли управления Microsoft. Например, теперь именно с помощью оснасток можно выполнить такие операции, как добавление или удаление пользователя, дефрагментация диска, добавление или удаление расшаренных ресурсов, остановка или запуск служб и многое другое. При этом на основе наиболее часто используемых оснасток были созданы стандартные консоли (файлы с расширением .msc). Консоль, это набор оснасток, которые будут открываться вместе при открытии консоли (при этом консоль будет открываться в программе mmc.exe, и без нее работать с консолями невозможно). То есть, теперь с помощью консоли управления Microsoft можно с легкостью создавать собственные консоли, содержащие в себе наиболее часто используемые вами оснастки. Для того чтобы отобразить консоль управления Microsoft, необходимо в диалоговом окне Запуск программы ввести команду mmc.exe. Ввод данной команды приведет к отображению окна консоли управления Microsoft, но давайте еще несколько слов скажем о запуске программы mmc.exe — какие же процессы происходят на уровне файловой системы и реестра Windows XP при запуске консоли управления Microsoft? Запуск программы mmc.exe
На уровне файловой системы, как оказывается, ничего интересного не происходит — по умолчанию консоль управления Microsoft не ведет журнал и не записывает события ни в один из журналов системы. Единственное, что можно отметить, так это запуск библиотеки MMCNDMGR.DLL, которая, как мы узнали из главы о программе rundll32, является основной библиотекой консоли управления Microsoft, и с помощью которой можно удалить или установить сведения о консоли управления в реестре. Например, с помощью команды rundll32.exe MMCNDMGR.DLL, DllRegisterServer выполняется повторная установка (в реестре) всех сведений, необходимых для запуска самой консоли управления Microsoft (в первую очередь, сведений ветви реестра HKEY_CLASSES_ROOT\CLSID\{43136EB5-D36C-11CF-ADBC-00AA00A80033}, без которой работа с консолью управления Microsoft невозможна), а также выполняется повторная установка следующих стандартных оснасток: Элемент ActiveX, Ссылка на веб-ресурс и Папка. На уровне реестра сначала идет обращение к ветви реестра HKEY_CURRENT_USER\Software\Microsoft\Консоль управления (MMC)\Recent File List, содержащей в себе список всех ранее открываемых в консоли управления Microsoft консолей. Данная ветвь реестра содержит в себе четыре параметра строкового типа с именами от File1 до File4. Значения этих параметров определяют пути к уже открываемым вами консолям. Следует заметить, что программным способом не все открываемые консоли записываются в эти четыре параметра, тем не менее, на уровне реестра вы можете определить пути к любым консолям, с которыми часто работаете. А потом, например, запретить полный доступ к данной ветви реестра, оставив только доступ на чтение, чтобы ссылки на часто открываемые вами консоли не заменялись другими ссылками. Также идет обращение к ветви реестра HKEY_CURRENT_USER\Software\Microsoft\Консоль управления (MMC)\Settings. Данная ветвь содержит в себе параметр строкового типа List Save Location, который определяет путь к каталогу, в который по умолчанию будут сохраняться экспортируемые из консоли управления Microsoft данные. После того, как будет определен список ранее запускавшихся консолей, консоль управления Microsoft начнет считывать с реестра данные, необходимые для ее работы. Как правило, все эти данные расположены в корневом разделе HKEY_CLASSES_ROOT. После определения конфигурации, консоль управления Microsoft просматривает ветвь реестра HKEY_CURRENT_USER\Software\Policies\Microsoft\MMC, которая может содержать ограничения групповой политики на запуск программы mmc.exe. Например, в этой ветви могут существовать следующие два параметра DWORD-типа: RestrictAuthorMode Если значение данного параметра равно 1, тогда запуск консоли управления Microsoft будет запрещен. При этом стоит заметить, что этот запрет не распространяется на консоли, созданные с помощью программы mmc.exe — их по-прежнему можно будет открывать, но при этом работа в расширенном режиме (об этом ниже) будет невозможна. RestrictToPermittedSnapins Если значение данного параметра равно 1, тогда будет запрещен запуск всех консолей (точнее, всех оснасток), созданных с помощью консоли управления Microsoft. Саму же консоль управления Microsoft можно будет открывать, хотя какой от нее толк, если открытие всех оснасток будет запрещено, неизвестно. Также консоль управления Microsoft ищет параметр DWORD-типа RESTRICT_RUN в ветвях реестра формата HKEY_CURRENT_USER\SOFTWARE\POLICIES\MICROSOFT\MMC\{GUID-ОСНАСТКИ}. При этом, если параметр RESTRICT_RUN в одной из ветви будет равен 1, тогда соответствующую оснастку запускать будет запрещено. Для примера работы данного ограничения можно создать параметр RESTRICT_RUN в ветви реестра HKEY_CURRENT_USER\SOFTWARE\POLICIES\MICROSOFT\MMC\{C96401CC-0E17-11D3-885B-00C04F72C717}, и присвоить ему значение 1. После этого будет запрещено запускать оснастку ПАПКИ. Как правило, данная оснастка всегда запускается вместе с созданными консолями. Окно программы mmc.exe
Если приведенные выше параметры не существуют или равны нулю (точнее, параметр RESTRICTAUTHORMODE), тогда консоль управления Microsoft откроется и отобразит свое окно (Рис. 3.01). Стоит заметить, что при открытии консоли управления Microsoft просто создается новая консоль с именем КОНСОЛЬ 1. что и можно увидеть на рисунке 3.01, если посмотреть на строку заголовка окна. Рисунок 1 Рис. 3.01. Окно консоли управления Microsoft Окно консоли управления Microsoft содержит в себе вложенное окно, имеющее заголовок КОРЕНЬ КОНСОЛИ, с которым по умолчанию и будет выполняться работа (добавление или удаление оснасток, а также работа с содержимым оснастки). Но вы можете открыть еще одно окно КОРЕНЬ КОНСОЛИ. Для этого достаточно в меню ОКНО консоли управления Microsoft, выбрать команду НОВОЕ (или нажать комбинацию клавиш CTRL+W). Возможность создания отдельных окон в консоли была реализована для удобства работы с оснастками (чтобы не перегружать одно окно большим количеством загруженных оснасток). Например, в одно окно может быть загружена одна оснастка, в другое окно — несколько других оснасток и т.д., а переход между окнами можно выполнить с помощью меню консоли управления Microsoft ОКНО или с помощью выделения определенного окна мышкой. Также существует возможность определения отображаемых элементов создаваемой консоли. Для этого предназначена команда НАСТРОИТЬ… меню ВИД. После вызова данной команды перед вами отобразится диалог, который можно увидеть на рисунке 3.02. С помощью данного диалога можно отобразить или скрыть определенные элементы окна консоли, просто сняв или установив флажок напротив их описания. При этом работа с данным диалогом не вызовет трудностей, так как при снятии или установке флажка в консоли автоматически скрывается или отображается соответствующий данному флажку элемент. Но это еще не все команды для настройки вида создаваемой вами консоли. Например, в меню ДЕЙСТВИЕ можно выбрать команду НОВЫЙ ВИД ПАНЕЛИ ЗАДАЧ… (панель задач находится слева в окне, и по умолчанию на ней расположена только одна папка — КОРЕНЬ КОНСОЛИ). После ее выбора перед вами отобразится мастер настройки панели задач (Рис. 3.03), с помощью которого можно определить расположение панели задач в окне, а также варианты отображения элементов в панели задач. Рисунок 2 Рис. 3.02. Настройка отображения консоли Рисунок 3 Рис. 3.03. Мастер настройки вида панели задач Также с помощью меню ВИД можно определить режим вывода структуры оснасток (команды ТАБЛИЦА, СПИСОК, КРУПНЫЕ, МЕЛКИЕ), но поскольку мы еще не загрузили в созданную консоль ни одной оснастки, эти команды мы рассматривать не буем. Если вы уже изменили некоторые настройки отображения элементов консоли с помощью диалога ПАРАМЕТРЫ… меню ВИД, тогда эти изменения можно сохранить в меню ИЗБРАННОЕ. Например, так вы можете определить в данном меню несколько вариантов отображения консоли и при необходимости переходить между этими вариантами. Хранение параметров настройки консоли
Стоит еще сказать о хранении настроек консоли. Если вы думаете, что настройки консоли хранятся в реестре, то это не так. На самом деле все настройки консолей содержатся в самих файлах консолей. Это легко понять на примере консоли, открытой в редакторе, подобном блокноту. Это довольно важная особенность работы консоли, понимание которой очень важно для правильного использования консолей. Давайте рассмотрим простой пример. Допустим, у нас есть консоль, содержимое которой было скрыто с помощью диалога ПАРАМЕТРЫ… (Рис. 3.04). То есть, все флажки, которые содержатся в этом диалоге, были сброшены. Рисунок 4 Рис. 3.04. Использование диалога Параметры для скрытия возможности настройки вида консоли Если вы используете такой метод скрытия возможности изменения вида консоли, тогда давайте посмотрим на содержимое данного файла консоли, открытого в блокноте (Рис. 3.05). Как можно заметить, файлы консоли являются обычными файлами .xml. А теперь посмотрите на нижнюю строку рисунка 3.05 — в этой строке определяется содержимое тега VIEWOPTIONS. Данный тег имеет следующие важные для нас параметры:
Например, если присвоить параметру NOSTDMENUS значение false, тогда при следующем открытии данной оснастки меню ДЕЙСТВИЕ, ВИД и ИЗБРАННОЕ опять отобразятся в панели меню. Рисунок 5 Рис. 3.05. Форматирование консоли Давайте рассмотрим другой пример. В этом примере для ограничения возможностей работы консоли воспользовались не только диалогом ПАРАМЕТРЫ… из меню ВИД, но и диалогом ПАРАМЕТРЫ…, открыть который можно с помощью команды ПАРАМЕТРЫ… меню КОНСОЛЬ (Рис. 3.06). С помощью данного диалога можно изменить значок консоли, а также определить режим отображения консоли (список РЕЖИМ КОНСОЛИ): АВТОРСКИЙ, ПОЛЬЗОВАТЕЛЬСКИЙ (ПОЛНЫЙ ДОСТУП), ПОЛЬЗОВАТЕЛЬСКИЙ (ОГРАНИЧЕННЫЙ ДОСТУП, МНОГО ОКОН), ПОЛЬЗОВАТЕЛЬСКИЙ (ОГРАНИЧЕННЫЙ ДОСТУП, ОДНО ОКНО). Режим АВТОРСКИЙ используется по умолчанию и позволяет выполнять любые команды, доступные с помощью консоли. Режим ПОЛЬЗОВАТЕЛЬСКИЙ (ПОЛНЫЙ ДОСТУП) позволяет выполнить любые доступные в консоли возможности, но запрещает добавление в консоль новых оснасток. Режим ПОЛЬЗОВАТЕЛЬСКИЙ (ОГРАНИЧЕННЫЙ ДОСТУП, МНОГО ОКОН) запрещает добавление в консоль новых оснасток, а также закрытие окон консоли (при этом новые окна будет разрешено создавать). Режим ПОЛЬЗОВАТЕЛЬСКИЙ (ОГРАНИЧЕННЫЙ ДОСТУП, МНОГО ОКОН) запрещает добавление в консоль новых оснасток, а также использование в консоли больше, чем одного окна. Если будет выбран один из пользовательских режимов отображения консоли, тогда в диалоге ПАРАМЕТРЫ… также станут доступны флажки НЕ СОХРАНЯТЬ ИЗМЕНЕНИЯ ДЛЯ ЭТОЙ КОНСОЛИ и РАЗРЕШИТЬ ПОЛЬЗОВАТЕЛЮ НАСТРАИВАТЬ ВИД КОНСОЛИ. Из названия флажков понятно, для ограничения чего они используются. На рисунке 3.07 можно увидеть результат использования режима ПОЛЬЗОВАТЕЛЬСКИЙ (ОГРАНИЧЕННЫЙ ДОСТУП, ОДНО ОКНО). Как можно заметить, возможность добавления и удаления оснасток, а также возможность создания новых окон были скрыты. Тем не менее, команда ПАРАМЕТРЫ… из меню КОНСОЛЬ, осталась, но при ее открытии окажется, что она не будет содержать вкладки КОНСОЛЬ. Рисунок 6 Рис. 3.06. Диалог настройки ограничений консоли Рисунок 7 Рис. 3.07. Использование пользовательского режима Итак, что же изменилось при использовании режима ПОЛЬЗОВАТЕЛЬСКИЙ (ОГРАНИЧЕННЫЙ ДОСТУП, ОДНО ОКНО) в содержимом файла консоли? На рисунке 3.08 можно увидеть изменения. Изменения произошли в верхнем теге MMC_CONSOLEFILE. Одним из его параметров является параметр PROGRAMMODE, который в данном случае равен USERSDI. Следует заметить, что при авторском режиме доступа к оснастке этот параметр равен AUTHOR. То есть, если мы изменим значение параметра PROGRAMMODE на AUTHOR, тогда при следующем запуске консоли мы попадем в авторский режим с возможностью добавления новых оснасток. Рисунок 8 Рис. 3.08. Использование пользовательского режима консоли Как можно заметить, параметры ограничений консолей обходятся довольно просто. Поэтому если вы будете создавать ограниченные оснастки для пользователей (как советуют многие администраторы), тогда не забудьте установить с помощью ACL (вкладка БЕЗОПАСНОСТЬ диалога свойств оснастки) только доступ на чтение и исполнение консоли для пользователя, которому создаете оснастку (если, конечно, консоль не помещается в папку, от которой она будет наследовать такие права). Добавление оснасток в консоль
А теперь давайте попробуем загрузить какую-нибудь оснастку в созданную нами консоль. Для этого необходимо воспользоваться командой ДОБАВИТЬ ИЛИ УДАЛИТЬ ОСНАСТКУ… из меню КОНСОЛЬ (или комбинацией клавиш CTRL+M). После вызова данной команды перед нами отобразится диалоговое окно ДОБАВИТЬ/УДАЛИТЬ ОСНАСТКУ (Рис. 3.09), с помощью которого можно добавить в консоль оснастку или удалить уже присутствующие в консоли оснастки. Чтобы добавить консоль, нужно нажать на кнопку ДОБАВИТЬ. Рисунок 9 Рис. 3.09. Диалог добавления оснасток в консоль После нажатия на кнопку ДОБАВИТЬ… консоль управления Microsoft начнет просматривать содержимое ветви реестра HKEY_LOCAL_MACHINE\SOFTWARE\MICROSOFT\MMC\SNAPINS. Данная ветвь реестра содержит в себе ссылки на все GUID-номера оснасток, доступных на компьютере. Именно список оснасток из этой ветви и будет отображаться в появившемся после нажатия кнопки ДОБАВИТЬ… диалоговом окне. То есть, если удалить из данной ветви GUID-номер оснастки, тогда ее нельзя будет открыть с помощью данного списка, хотя оснастка по-прежнему будет работать в уже готовых консолях. Но для удаления оснастки из списка, можно поступить проще — все дело в том, что все оснастки, которые будут отображаться в списке ДОБАВИТЬ ИЗОЛИРОВАННУЮ ОСНАСТКУ, должны содержать в своей ветви вложенный подраздел STANDALONE. Если удалить этот подраздел, тогда оснастка не будет отображаться в списке ДОБАВИТЬ ИЗОЛИРОВАННУЮ ОСНАСТКУ. А можно наоборот, добавить этот подраздел к одной из ветвей, в которой его не существует. Например, если добавить его к подразделу {243E20B0-48ED-11D2-97DA-00A024D77700}, тогда появится возможность включать в консоль оснастку МОДУЛЬ РАСШИРЕНИЯ СЪЕМНЫХ НОСИТЕЛЕЙ. А если добавить к подразделу {BACF5C8A-A3C7-11D1-A760-00C04FB9603F}, тогда появится возможность добавления к консоли оснастки УСТАНОВКА ПРОГРАММ (ПОЛЬЗОВАТЕЛИ). Также можно добавить оснастку УСТАНОВКА ПРОГРАММ (КОМПЬЮТЕРЫ). Для этого необходимо воспользоваться подразделом {942A8E4F-A261-11D1-A760-00C04FB9603F}. Две предыдущие возможности нам понадобятся в следующих разделах книги, ведь по умолчанию никаким другим способом нельзя получить доступ к оснасткам УСТАНОВКА ПРОГРАММ (ПОЛЬЗОВАТЕЛИ) и УСТАНОВКА ПРОГРАММ (КОМПЬЮТЕРЫ), если компьютер не находится в домене. Также с помощью данной ветви можно изменить название оснастки, отображаемое в списке оснасток — оно содержится в параметре строкового типа NAMESTRINGINDIRECT ветви реестра HKEY_LOCAL_MACHINE\SOFTWARE\MICROSOFT\MMC\SNAPINS\{GUID-НОМЕР ОСНАСТКИ}. Например, чтобы изменить название оснастки ДИСПЕТЧЕР УСТРОЙСТВ на, допустим, ОПИСАНИЕ УСТАНОВЛЕННОГО НА КОМПЬЮТЕРЕ ОБОРУДОВАНИЯ, необходимо присвоить новое название оснастки параметру NAMESTRINGINDIRECT ветви реестра HKEY_LOCAL_MACHINE\SOFTWARE\MICROSOFT\MMC\SNAPINS\{74246BFC-4C96-11D0-ABEF-0020AF6B0B7A} (Рис. 3.10). Существует еще один трюк, который можно выполнить с помощью ветви реестра HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MMC\SnapIns\{GUID-номер оснастки} — запрет отображения диалога Добавить/Удалить оснастку. Для этого просто достаточно название одной из ветвей реестра {GUID-номер оснастки} изменить на название {{GUID-номер оснастки}. Например, если изменить название уже рассмотренного нами подраздела {74246bfc-4c96-11d0-abef-0020af6b0b7a} на {{74246bfc-4c96-11d0-abef-0020af6b0b7a}, тогда при нажатии на команду Добавить или удалить оснастку из меню Консоль, ничего происходить не будет. Рисунок 10 Рис. 3.10. Изменение названия оснастки Диспетчер задач Давайте для примера попробуем добавить в консоль оснастку РЕДАКТОР ОБЪЕКТОВ ГРУППОВОЙ ПОЛИТИКИ. Для этого необходимо выделить в списке эту оснастку, нажать на кнопку ДОБАВИТЬ, а потом нажать на кнопку ЗАКРЫТЬ, чтобы закрыть список оснасток. После этого в диалоге ДОБАВИТЬ/УДАЛИТЬ ОСНАСТКУ появится наша оснастка, после чего нужно будет в этом диалоге нажать на кнопку ОК. Теперь предлагаю посмотреть на рисунок 3.11. Слева на этом рисунке отображена консоль в расширенном виде. Этот вид стал доступен в Windows XP и отличается от обычного тем, что слева появилась панель описания элемента оснастки. Очень часто эта панель мешает просмотру оснастки, поэтому приходится переходить к обычному виду (по умолчанию оснастка загружается в расширенном виде). Справа же на рисунке отображена та же оснастка, но в обычном виде — при этом возможность расширенного вида была удалена. Чтобы удалить возможность расширенного вида, необходимо удалить из ветви реестра HKEY_LOCAL_MACHINE\SOFTWARE\MICROSOFT\MMC\SNAPINS подраздел {B708457E-DB61-4C55-A92F-0D4B5E9B1224}. Рисунок 11 Рис. 3.11. Расширенный и обычный вид консоли И напоследок давайте рассмотрим краткое описание всех оснасток, доступных в операционной системе Windows XP. Ниже мы подробнее поговорим о них.
Продолжение следует Оригинал статьи: http://www.onestyle.com.ua/txt.php?u=138
|
В избранное | ||