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

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


Глава 2. Интерфейс Windows Vista. 2.2. Панель управления. Окончание
Дата: 3 марта 2009, вторник

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

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

Работа с программой control.exe

Вы, наверное, заметили, что выше для некоторых значков папки ПАНЕЛЬ УПРАВЛЕНИЯ также приводилось их внутреннее имя. С помощью данного имени вы можете самостоятельно вызвать соответствующий диалог, не пользуясь папкой ПАНЕЛЬ УПРАВЛЕНИЯ. Для этого достаточно воспользоваться командой control /Name «внутреннее имя приложения». Собственно, вы можете использовать программу control.exe для вызова самой папки ПАНЕЛЬ УПРАВЛЕНИЯ.

Опции программы control.exe

Также программа control.exe поддерживает следующие опции.

  • /name Microsoft.GetProgramsOnline. Подключается к интернет для отображения страницы Microsoft, содержащей доступные для скачивания программы.
  • USERPASSWORDS2. Отображает диалог УЧЕТНЫЕ ЗАПИСИ ПОЛЬЗОВАТЕЛЕЙ. Особенностью данного диалога является то, что с его помощью вы можете указать учетную запись, которая будет автоматически загружаться при запуске компьютера (не нужно будет выбирать учетную запись для входа и водить ее пароль). А также с его помощью можно переименовать учетную запись administrator.
  • UPDATE. Отображает диалог WINDOWS UPDATE.
  • SYSTEM. Отображает диалог СИСТЕМА.
  • SCANNERCAMERA. Отображает диалог SCANNERS AND CAMERA.
  • USERPASSWORDS. Отображает мастер УЧЕТНЫЕ ЗАПИСИ ПОЛЬЗОВАТЕЛЕЙ.
  • INFRARED. Отображает диалог настройки параметров инфракрасного подключения.
  • NETCONNECTIONS. Отображает доступные в данный момент сетевые подключения.
  • SCHEDTASKS. Отображает оснастку TASK SCHEDULER.
  • ADMINTOOLS. Отображает каталог Administrative Tools.
  • TELEPHONY. Отображает диалог TELEPHON AND MODEM.
  • FOLDERS. Отображает диалог FOLDER OPTIONS.
  • FONTS. Отображает каталог FONTS.
  • PRINTERS. Отображает каталог PRINTERS.
  • KEYBOARD. Отображает диалог СВОЙСТВА: КЛАВИАТУРА.
  • MOUSE. Также отображает диалог СВОЙСТВА: МЫШЬ.
  • INTERNATIONAL. Отображает диалог ЯЗЫК И РЕГИОНАЛЬНЫЕ СТАНДАРТЫ.
  • PORTS. Отображает диалог SYSTEM PROPERTIES, открытый на вкладке HARDWARE.
  • DATE/TIME. Отображает диалог DATE AND TIME PROPERTIES.
  • COLOR. Отображает диалог APPEARANCE SETTINGS.

    Также данный диалог можно отобразить при помощи команды rundll32.exe shell32.dll, Control_RunDLL desk.cpl desk,@Appearance.

  • DESKTOP. Отображает диалог DISPLAY SETTINGS.

    Также данный диалог можно отобразить при помощи команды rundll32.exe shell32.dll, Control_RunDLL desk.cpl desk,@Settings.

Внутренние имена апплетов и диалогов

Но как же хранятся в реестре внутренние имена апплетов? Они находятся в параметре System.ApplicationName ветвей реестра HKCR\CLSID\«CLSID-номер ActiveX-объекта».

Но есть и еще одна ветвь реестра, которая содержит в себе сразу все внутренние имена ааплетов (файлов с расширением .cpl) — HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Control Panel\Extended Properties\System.ApplicationName. В ней содержатся параметры строкового типа, имена которых определяют путь к апплету, а значения — внутреннее имя апплета.

Работа с ActiveX-объектами

При описании значков папки ПАНЕЛЬ УПРАВЛЕНИЯ мы также приводили названия ActiveX-объектов, которые создают данные значки. Но что можно сделать с этими названиями?

Во-первых, с их помощью можно отобразить или скрыть соответствующие значки ActiveX-объектов на рабочем столе, в папке COMPUTER или, собственно, в папке ПАНЕЛЬ УПРАВЛЕНИЯ. Как это сделать, будет описано далее в этой главе книги.

Во-вторых, некоторые из приведенных ActiveX-объектов можно использоваться в конструкциях вида ::{21EC2020-3AEA-1069-A2DD-08002B30309D}\::{CLSID-номер соответствующего ActiveX-объекта} для запуска соответствующего диалога или мастера.

А в-третьих, с их помощью можно отобразить или скрыть соответствующие значки ActiveX-объектов в любой папке файловой системы. Для этого достаточно создать папку и приписать к ее имени значение .{CLSID-номер соответствующего ActiveX-объекта}.

Диалог Программы и компоненты

И напоследок давайте опишем работу с диалогом, который рано или поздно понадобится любому пользователю — диалогом, с помощью которого можно удалить или переустановить программы и обновления операционной системы. В Windows Vista данный диалог был существенно доработан и изменен, хотя основной принцип его построения не изменился.

Также список установленных в операционной системе программ можно просмотреть при помощи экземпляров класса Win32_Product, принадлежащего пространству имен root\cimv2. Например, данный класс поддерживает следующие свойства: IdentifyingNumber (ключевое свойство, содержащее в себе CLSID-номер данного установленного продукта), InstallDate2 (определяет дату установки продукта в формате datetime), Name (определяет название продукта), PackageCache (определяет путь к папке или msi-файлу, который содержит в себе архивную копию установочного пакета продукта).

Кроме того, класс Win32_Product позволяет воспользоваться следующими методами: Admin (позволяет установить на компьютере от имени администратора указанный в атрибуте продукт), Install (позволяет установить на компьютере указанный в атрибуте продукт), Reinstall (переустанавливает продукт), Uninstall (удаляет продукт, описываемый данным экземпляром класса), Upgrade (обновляет продукт, описываемый данным экземпляром класса).

Диалог ПРОГРАММЫ И КОМПОНЕНТЫ представляет собой аналог диалога УСТАНОВКА/УДАЛЕНИЕ ПРОГРАММ операционной системы Windows XP. С его помощью можно просмотреть список установленных в операционной системе программ или обновлений, а также удалить определенную программу или обновление. Кроме того, с помощью данного диалога можно установить или удалить стандартные компоненты операционной системы.

Основное окно данного диалога представлено на рисунке 3.33. Оно состоит из панели ссылок, содержащей следующие элементы.

  • VIEW INSTALLED UPDATES или UNINSTALL A PROGRAM. Позволяет отобразить список всех установленных в системе программ (ссылка UNINSTALL A PROGRAM) или обновлений (ссылка VIEW INSTALLED UPDATES). При этом обратите внимание на элементы контекстного меню установленной программы/обновления или на панель инструментов диалога ПРОГРАММЫ И КОМПОНЕНТЫ. Они будут содержать те операции, которые можно выполнить с установленной программой или обновлением.
    • UNINSTALL. Позволяет удалить программу или обновление.
    • CHANGE. Позволяет изменить список компонентов программы, которые должны быть установлены.
    • REPAIR. Позволяет переустановить программу, если по каким-то причинам она не работает.

    Также обратите внимание на панель колонок в списке установленных программ или обновлений. По умолчанию на ней находится только одна колонка — NAME. Однако если вы отобразите контекстное меню панели колонок и выберите команду MORE, тогда перед вами отобразится диалог, в котором можно определить колонки, которые будут находиться на панели колонок в диалоге ПРОГРАММЫ И КОМПОНЕНТЫ. Например, таким образом можно отобразить такие сведения об установленной программе, как ее издателя, размер, версию, дату установки, каталог, в который была установлена программа и многое другое.

  • GET NEW PROGRAMS ONLINE AT WINDOWS MARKETPLACE. Отображает страницу http://g.msn.com/WMHFUSEN в браузере Internet Explorer. Данный сайт содержит в себе список программ от разработчиков Microsoft, которые можно скачать и установить.
  • VIEW PURCHASED SOFTWARE (DIGITAL LOCKER). Запускает программу DIGITALL LOCKER ASSISTANT, которая была описана ранее.
  • TURN WINDOWS FEATURES ON OR OFF. Запускает программу optionalfeatures.exe, с помощью которой можно удалить или установить компоненты операционной системы Windows Vista. Описание данной программы и компонентов операционной системы будет приведено далее в этой книге.

Хранение сведений об установленных в системе программах и обновлениях

Как и раньше, сведения о программах, установленных в операционной системе Windows, содержатся в ветви реестра HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall. Каждая установленная вами программа должна создавать свой собственный подраздел в данной ветви реестра, название которого не имеет значения. Содержимое этого подраздела определяет параметры отображения сведений о программе в диалоге ПРОГРАММЫ И КОМПОНЕНТЫ, а также команду, которая будет выполняться при удалении программы и сами возможности удаления, доступ к которому можно получить при помощи диалога ПРОГРАММЫ И КОМПОНЕНТЫ. Давайте рассмотрим наиболее интересные параметры, которые можно встретить в данной ветви реестра.

  • DisplayName. Данный параметр строкового типа содержит в себе название, которое будет отображаться в списке установленных программ диалога ПРОГРАММЫ И КОМПОНЕНТЫ, и будет идентифицировать данную программу.

    Значение параметра DisplayName может переопределяться значением нового параметра реестра DisplayName_Localized, который также может находиться в данной ветви реестра.

  • InstallLocation. Данный параметр строкового типа содержит в себе путь к каталогу, в который была установлена данная программа.

    Значение параметра InstallLocation может переопределяться значением нового параметра реестра InstallLocation_Localized, который также может находиться в данной ветви реестра.

  • UninstallString. Данный параметр строкового типа содержит в себе команду, которая будет выполняться при попытке удаления программы.

    Значение параметра UninstallString может переопределяться значением нового параметра реестра UninstallString_Localized, который также может находиться в данной ветви реестра.

  • ModifyPath. Данный параметр строкового типа содержит в себе команду, которая будет выполняться после нажатия на кнопку CHANGE для данной программы.
  • NoRemove. Если значение данного параметра REG_DWORD типа равно 1, тогда кнопка UNINSTALL исчезнет из диалога ПРОГРАММЫ И КОМПОНЕНТЫ для данной программы. То есть, вы не сможете ее удалить.
  • NoModify. Если значение данного параметра REG_DWORD типа равно 1, тогда кнопка CHANGE исчезнет из диалога ПРОГРАММЫ И КОМПОНЕНТЫ для данной программы.
  • NoRepair. Если значение данного параметра REG_DWORD типа равно 1, тогда кнопка REPAIR исчезнет из диалога ПРОГРАММЫ И КОМПОНЕНТЫ для данной программы.
  • LogFile. Данный параметр строкового типа содержит в себе путь к лог-файлу, создаваемому при установке или удалении данной программы.

А вот сведения об установленных обновлениях больше не хранятся в ветви реестра HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall. Теперь они расположены в ветвях реестра следующего формата: HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Installer\UserData\«SID»\Products\«номер программы»\Patches\«номер обновления для нее». Например, в данных ветвях реестра можно встретить следующие параметры.

  • DisplayName. Данный параметр строкового типа содержит в себе название, которое будет отображаться в списке установленных обновлений диалога ПРОГРАММЫ И КОМПОНЕНТЫ, и будет идентифицировать данное обновление.
  • State. Если значение данного параметра REG_DWORD типа равно 1, тогда обновление будет отображаться в диалоге ПРОГРАММЫ И КОМПОНЕНТЫ. Если же значение данного параметра равно 0, тогда обновление в диалоге ПРОГРАММЫ И КОМПОНЕНТЫ отображаться не будет.
  • Uninstallable. Если значение данного параметра REG_DWORD типа равно 1, тогда для данного обновления в диалоге ПРОГРАММЫ И КОМПОНЕНТЫ отобразится кнопка UNINSTALL и вы сможете удалить обновление.

Настройка диалога при помощи групповых политик

Возможности диалога ПРОГРАММЫ И КОМПОНЕНТЫ можно ограничить при помощи групповых политик, описанных в файле Programs.admx, и расположенных в разделе КОНФИГУРАЦИЯ ПОЛЬЗОВАТЕЛЯ/АДМИНИСТРАТИВНЫЕ ШАБЛОНЫ/ПАНЕЛЬ УПРАВЛЕНИЯ/PROGRAMS.

Данные групповые политики изменяют значения параметров REG_DWORD типа, расположенных в ветви реестра HKCU\Software\Microsoft\Windows\CurrentVersion\Policies\Programs.

  • NoInstalledUpdates. Если значение данного параметра равно 1, тогда страница установленных обновлений отображаться не будет.
  • NoDefaultPrograms. Если значение данного параметра равно 1, тогда страница доступа к программам и параметрам по умолчанию отображаться не будет.
  • NoProgramsAndFeatures. Если значение данного параметра равно 1, тогда страница установленных программ отображаться не будет.
  • NoGetPrograms. Если значение данного параметра равно 1, тогда страница установки опубликованных программ отображаться не будет.
  • NoProgramsCPL. Если значение данного параметра равно 1, тогда все возможности, кроме работы с Windows Marketplace, будут запрещены.
  • NoWindowsFeatures. Если значение данного параметра равно 1, тогда страница компонентов операционной системы отображаться не будет.
  • NoWindowsMarketplace. Если значение данного параметра равно 1, тогда ссылка Приобретение программ на веб-узле Windows Marketplace работать не будет.

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

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

В избранное