Отправляет email-рассылки с помощью сервиса Sendsay
  Все выпуски  

Секреты Windows: статьи о реестре, rundll32.exe, программах


Глава 4. Консоль управления Microsoft. 4.1. Работа с консолью управления Microsoft
Дата: 30 марта 2009, понедельник

У вас возникли вопросы по Windows? Задайте их нам на Форуме (http://www.onestyle.com.ua/q.php). Вам достаточно просто зарегистрироваться! Например, ниже представлен один из вопросов:

При открытии некоторых программ появляется соообщеение" Системная библиотека uzer32.dll перемещена в памяти.Работа приложения будет нарушена.Перемещение произошло из-за того,что библиотека C:\WINDOWS\sistem32\SHELL 32.dll заняла область адресов,зарезервированную для системных DLL WINDOWS.Обратитесь к поставщику за новой версией библиотеки."Дальнейшая работа с программой невозможна.Как устранить эту проблему?

  Такие ошибки возникают в том случае, если какая-то сторонняя программа некорректно пропатчила одну из стандартных системных библиотек Windows. Или же если было некорректно установлено обновление для Windows (или обновление фигневое, как пример - обновление KB925902 (http://www.microsoft.com/rus/technet/security/bulletin/ms07-017.mspx) может приводить к подобным ошибкам).

Если библиотека называется uzer32.dll (а не user32.dll), то это какая-то сторонняя библиотека какой-то программы (а может вирус?). Поэтому простейший способ решения проблемы – удаление всех программ, на которые падает подозрение. В инете рекомендуют в первую очередь удалить всякие сторонние темы оформления и программы, украшающие или изменяющие интерфейс Windows (очень часто такие программы патчат иконки, размещенные в библиотеке shell32.dll), а также алкоголь и daemon tools. Демон тоолс, если он у вас установлен, лучше удалить в любом случае – это не та программа, которую дарят на день рождения, это настоящее бедствие для Windows, и из-за нее в работе Windows возникает множество проблем.

Если удалять проблемную прогу не хочется, попробуйте скачать и установить ее более новую версию.

Если у вас есть установочный диск Windows, вместо удаления программ можно попробовать воспользоваться программой командной строки sfc.exe (справка по ней – sfc.exe /?). Эта программа проверяет системные файлы Windows, и заменяет все пропатченные файлы на оригинальные, взятые с загрузочного диска. Есть вероятность, что sfc.exe найдет пропатченную библиотеку и исправит ее. Однако после этого программа, которая патчила библиотеку, перестанет работать полностью или частично. Кроме того, если после установки Windows вы устанавливали дополнительные обновления, прапатченная библиотека могла обновиться. А поскольку sfc.exe восстанавливает библиотеки с загрузочного диска (а не более новой версией, которая была установлена после обновлений), эффект от установленных обновлений может потеряться. Короче, после этого нужно еще переустановить все обновления.

Перед использованием sfc.exe сделайте образ системы (например, прогой Acronis TrueImage). Так ка есть вероятность, что после использования sfc.exe винда окончательно накроется =) И на будущее – всегда создавайте образы нормально работающей системы, тогда вы всегда сможете восстановить систему если возникли какие-то проблемы. Сколько можно говорить об этом =)

Также если вы недавно обновляли Windows, попробуйте откатить обновления или установить новые. Быть может, проблема в них. Если проблема останется, всегда можно установить обновления по новой. По этому поводу цитата из другого форума: " удалять обновы не советую, достаточно просто посмотрите в вашей операционной системе версию файла user32.dll (в %Windir%\System32). Точно известно, что версия 5.1.2600.3099 (имеется в виду Windows XP) может вызывать данную проблему. Для сравнения версия библиотеки в SP2 - 5.1.2600.2180, с ней ошибка не проявляется. Заменяем файл с версией 5.1.2600.3099 на файл с версией 5.1.2600.2180 и ошибка исчезает."

Посмотрите решения подобной проблемы по адресу http://forum.oszone.net/printthread-82136.html. Довольно много советов, которые вам возможно помогут.

В конец записи

Консоль управления Microsoft представляет собой программный интерфейс (набор Win32 API функций), а также оболочку, в контексте которой выполняются специально созданные программы (оснастки), позволяющие настраивать и управлять тем или иным компонентом операционной системы.

Кроме оснасток, в работе с консолью управления Microsoft часто используется такое понятие, как консоль. Консоль представляет собой отдельное окно консоли управления Microsoft, в которое уже при запуске загружается одна или несколько оснасток операционной системы Windows. Консоли представляют собой xml-файлы специального формата, имеющие расширение .msc. Каждая консоль, кроме загружаемых оснасток, характеризуется своей версией. Например, в операционной системе Windows XP используются консоли второй версии.

В Windows Vista используется консоль управления Microsoft версии 6.0 (в Windows XP используется версия 5.1), которая имеет некоторые изменения по сравнению со своей предшественницей. Но основное изменение заключается в том, что новая консоль управления Microsoft создает консоли третьей версии, тогда как предыдущими операционными системами используется вторая версия (то есть, консоли Windows Vista не будут работать в Windows XP). Хотя пока что это только косметическое изменение. Как уже было сказано раньше, консоль представляет собой обычный xml-файл (текстовый файл), и если вы откроете консоль Windows Vista в блокноте и измените версию этой консоли (в теге ConsoleVersion=), тогда, скорее всего, данная консоль будет работать и в предыдущих версиях консоли управления Microsoft.

После запуска консоли управления Microsoft, перед вами отобразится окно, представленное на рисунке 4.01.


Рис. 4.01. Окно консоли управления Microsoft

Основное поверхностное отличие данной версии консоли управления Microsoft от предыдущих версий заключается в новом поле ACTIONS, которое можно видеть на рисунке 4.01. Данное поле дублирует собой назначение содержимого меню ACTION.

Если же появление нового поля ACTIONS вам много радости не доставило, тогда его отображение можно запретить. Однако это можно сделать только для каждой оснастки по отдельности. Например, чтобы запретить отображение поля ACTIONS для оснастки FOLDER (эта оснастка является единственной, которая загружается вместе со всеми консолями, а также вместе с консолью управления Microsoft), нужно присвоить параметру REG_DWORD типа SuppressActionsPane, расположенному в ветви реестра HKLM\SOFTWARE\Microsoft\MMC\SnapIns\{C96401CC-0E17-11D3-885B-00C04F72C717}, значение, равное 1. После этого консоль управления Microsoft больше не будет содержать поля ACTIONS, но как только вы загрузите в нее новую оснастку, отображение поля ACTIONS для которой не запрещено, и перейдете в нее, поле ACTIONS опять появится.

Если же необходимо запретить отображение поля ACTIONS для всех оснасток консоли управления Microsoft, тогда достаточно снять флажок ACTION PANE в диалоге CUSTOMIZE VIEW. Данный диалог отображается после выбора команды CUSTOMIZE… из меню VIEW.

Также с помощью подраздела ветви реестра HKLM\SOFTWARE\Microsoft\MMC\SnapIns можно запретить отображение расширенного окна оснастки (отображение слева от содержимого оснасток, описания выделенного в данный момент элемента). Если вы не обладаете большим монитором и не используете огромные разрешения экрана, тогда используемый по умолчанию расширенный вид оснасток может только мешать, занимая ненужным описанием лишнее место. В этом случае достаточно удалить подраздел {B708457E-DB61-4C55-A92F-0D4B5E9B1224} из указанной ветви реестра, чтобы консоль управления Microsoft приобрела стандартный вид, используемый в Windows 2000.

Чтобы добавить оснастку к консоли управления Microsoft, нужно в меню FILE выбрать команду ADD/REMOVE SNAP-IN… (или нажать комбинацию клавиш CTRL+M). После этого отобразится диалог ADD OR REMOVE SNAP-INS. По сравнению с предыдущими версиями консоли управления Microsoft, этот диалог очень изменился (рис. 4.02).


Рис. 4.02. Диалог Add or Remove Snap-ins

Чтобы добавить оснастку к консоли управления Microsoft, нужно дважды щелкнуть по нужной оснастке, расположенной в левом поле (AVAILABLE SNAP-INS). После этого может отобразиться диалог настройки новой оснастки, и настроенная оснастка появится в правом поле (SELECTED SNAP-INS).

Кроме добавления оснасток, с помощью данного диалога можно определить расширения, содержащиеся в оснастке, которые будет разрешено использовать. Для этого служит кнопка EDIT EXTENSIONS…. Также в диалоге ADD OR REMOVE SNAP-INS можно настроить дополнительные параметры добавления оснастки, такие как добавление оснастки не в корень оснасток, а в выбранную в данный момент папку. Для этого применяется кнопка ADVANCED.

После того, как вы выберите нужные оснастки и настроите их, нужно нажать на кнопку OK, после чего выбранные оснастки отобразятся в консоли управления Microsoft. Когда вы закончите работу с нужными оснастками и попытаетесь закрыть консоль управления Microsoft, она спросит у вас, хотите ли вы создать новую консоль на основе загруженных в данный момент оснасток. Все пользовательские консоли сохраняются в каталоге %userprofile%\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Administrative Tools.

Однако не всегда можно загрузить выбранную вами оснастку. С помощью групповых политик можно запретить запуск определенных оснасток. Для этого применяется подраздел групповых политик User Configuration\Administrative Templates\Windows Components\Microsoft Management Console\Restricted/Permitted snap-ins. Групповые политики данного подраздела для запрета запуска определенной оснастки создают параметр REG_DWORD типа Restrict_Run в ветви реестра HKCU\Software\Policies\Microsoft\MMC\{CLSID-номер оснастки} и присваивают ему значение 1.

Также в подразделе User Configuration\Administrative Templates\Windows Components\Microsoft Management Console можно встретить следующие групповые политики, которые изменяют параметры REG_DWORD типа ветви реестра HKCU\Software\Policies\Microsoft\MMC.

  • RESTRICT THE USER FROM ENTERING AUTHOR MODE. Установка данной политики изменяет значение параметра реестра RestrictAuthorMode, что запрещает запуск консолей в авторском режиме, а также запрещает запуск программы mmc.exe.
  • RESTRICT USERS TO THE EXPLICITLY PERMITTED LIST OF SNAP-INS. Установка данной политики изменяет значение параметра реестра RestrictToPermittedSnapins, что запрещает запуск любых оснасток операционной системы.

Хранение сведений об оснастках в реестре

Мы с вами уже узнали, как добавить оснастку в консоль управления Microsoft. Но как же хранятся сведения об оснастках в реестре? Каждая оснастка представляет собой ActiveX-объект, настройки которого хранятся в соответствующем подразделе корневого раздела HKEY_CLASSES_ROOT. Но присутствие подраздела оснастки в данном корневом разделе еще не говорит о том, что оснастка отобразится в диалоге ADD OR REMOVE SNAP-INS. Список всех оснасток, доступных консоли управления Microsoft, хранится в ветви реестра HKLM\SOFTWARE\Microsoft\MMC\SnapIns. Данный подраздел содержит в себе набор дочерних подразделов, названных в честь CLSID-номера оснастки. Каждый из этих подразделов может содержать следующие параметры.

  • About. Данный параметр строкового типа определяет CLSID-номер ActiveX-объекта, который определяет диалог, отображаемый после выбора команды ABOUT… из меню HELP консоли.
  • DisableWatson. Данный параметр REG_DWORD типа определяет, будут ли ошибки в работе данной оснастки отлавливаться стандартной отладочной программой Windows Vista.
  • NameStringIndirect. Данный параметр строкового типа содержит в себе название оснастки, отображаемое в диалоге ADD OR REMOVE SNAP-INS. Если же данный параметр отсутствует в ветви реестра, тогда название оснастки определяется параметром строкового типа NameString.
  • Provider. Данный параметр строкового типа определяет создателя этой оснастки.
  • SuppressActionsPane. Данный параметр REG_DWORD типа определяет, будет ли для данной оснастки отображаться поле ACTIONS.
  • Version. Данный параметр строкового типа определяет версию этой оснастки.

Кроме того, в подразделе оснастки могут находиться два дочерних подраздела. Первый из них называется StandAlone. Если он присутствует в подразделе оснастки, тогда данная оснастка будет отображаться в диалоге ADD OR REMOVE SNAP-INS. Второй же называется NodeTypes. Он определяет CLSID-номер ActiveX-объектов расширений (эти объекты описаны в соответствующих подразделах ветви реестра HKLM\SOFTWARE\Microsoft\MMC\NodeTypes), которые входят в состав данной оснастки. Именно список этих расширений можно отредактировать с помощью кнопки EDIT EXTENSIONS… диалога ADD OR REMOVE SNAP-INS.

Продолжение следует

Рейтинг: 0 
Оцените: 1 2 3 4 5
В начало записи
Оригинал статьи: http://www.onestyle.com.ua/txt.php?u=469

В избранное