Книга: Недокументированные и малоизвестные возможности Windows XP
Другие возможности
Другие возможности
Здесь будут рассмотрены другие параметры операционной системы Windows XP, которые не используются для настройки конфигурации значков или окон Windows, но тем не менее могут быть вам интересны.
? HKEY_CURRENT_USERControl PanelDesktop — довольно интересной возможностью, которую позволяет выполнить операционная система Windows XP, является вывод сведений о версии Windows XP в правом нижнем углу экрана Рабочего стола. Для ее реализации достаточно присвоить DWORD-параметру PaintDesktopVersion значение, равное 1 (рис. 5.8).
Другой возможностью, которую предоставляет пользователям операционная система Windows, является вывод обоев Windows, начиная с определенной точки экрана. Для этого используются два параметра строкового типа WallpaperOriginX и WallpaperOriginY. Первый из них определяет смещение левой стороны рисунка обоев от левой стороны экрана. Второй же параметр определяет смещение верхней стороны рисунка обоев от верхней стороны экрана.
Рис. 5.8. Отображение версии Windows в правом нижнем углу экрана
С помощью данной ветви реестра можно проделать другой трюк — изменение количества строк и столбцов в выводимом после нажатия комбинации клавиш Alt+Tab диалоге. Для этого применяются два параметра строкового типа CoolSwitchRows и CoolSwitchColumns. Первый из них определяет количество строк в диалоге, а второй — количество столбцов. Например, на рис. 5.9 можно увидеть результат присвоения этим параметрам значений 3 и 3 (чтобы изменения вступили в силу, необходима перезагрузка компьютера или выход из системы — обычный перезапуск оболочки Windows не поможет).
Рис. 5.9. Изменение количества строк и столбцов диалога
? HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindowsCurrentVersionExplorerAppKey — содержит команды, которые будут выполняться при нажатии дополнительных клавиш клавиатуры, таких, например, как My Computer, Calculator, E-mail, Stop и т.д. Не секрет, что не всегда функциональная возможность данных клавиш может быть необходима, например, если у вас нет доступа к Интернету, зачем вам такие клавиши быстрого доступа, как Refresh, Forward, Back, Home? Поэтому предлагаю переопределить команды, вызываемые соответствующими клавишами, чтобы они вызывали вашу любимую игру или программу.
Для этого необходимо определить формат содержимого приведенной выше ветви реестра — в ней хранятся разделы, названия которых определяют числовые идентификаторы, присвоенные клавишам быстрого доступа. А уже в этих разделах располагается параметр строкового типа ShellExecute — именно в нем находится команда, которая будет выполняться при нажатии соответствующей клавиши быстрого доступа.
Структура ветви реестра рассмотрена. Осталось только определить идентификаторы клавиш и названия самих клавиш, которые им соответствуют:
• 1 — Back (определяет кнопку Назад в окне браузера);
• 2 — Forward (указывает кнопку Вперед в окне браузера);
• 3 — Refresh (определяет кнопку Обновить в окне браузера);
• 4 — Stop (указывает кнопку Стоп в окне браузера);
• 5 — Search (аналогична комбинации клавиш Windows+F);
• 6 — Favorites (определяет кнопку Избранное в окне браузера);
• 7 — Home (указывает кнопку Домой в окне браузера);
• 8 — Mute (отключает звук в проигрывателе, назначение данной клавиши переопределить нельзя);
• 15 — E-mail (аналогична вызову программы Outlook Express);
• 16 — Media (аналогична вызову программы, ассоциированной с расширением CDA (по умолчанию Проигрыватель Windows Media));
• 17 — My Computer (аналогична вызову окна Мой компьютер);
• 18 — Calculator (аналогична вызову программы calc.exe).
Например, чтобы присвоить дополнительной клавише Back команду, открывающую вашу папку с играми, допустим D:Games, нужно присвоить параметру ShellExecute, расположенному в ветви реестра HKEY_LOCAL_MACHINE SOFTWAREMicrosoftWindowsCurrentVersionExplorerAppKey1, значение, равное explorer /root, d:games.
ПРИМЕЧАНИЕ
После изменения команд некоторых функциональных клавиш у них появляется двойной набор команд. Чтобы показать это на примере, достаточно изменить команду клавиши, открывающей программу Outlook Express. Теперь если вы нажмете эту клавишу при установке фокуса на окне какой-либо папки, то по-прежнему откроется окно Outlook Express. Но если вы нажмете клавишу, когда фокус установлен на Рабочем столе или окне другой программы, то выполнится та команда, которую вы заложили в эту клавишу с помощью ветви реестра HKEY_LOCAL_MACHINESOFTWAREMicrosoft WindowsCurrentVersionExplorerAppKey.
? HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindowsCurrentVersionAppPaths — определяет все те команды, которые вы вводите в диалоге Запуск программы, чтобы открыть необходимую программу, расположенную в каталогах, отличных от %systemroot%system32 и %systemroot%. Например, если у вас на компьютере установлен графический пакет Adobe Photoshop, то для его вызова из диалога Запуск программы вы используете команду Photoshop. И, несмотря на то, что, скорее всего, данный пакет установлен в одном из разделов ветви %programfiles%, команда Photoshop все равно открывает его окно.
Такой феномен возможен лишь потому, что в приведенной выше ветви реестра существует раздел, имеющий название photoshop.exe (все разделы приведенной ветви реестра должны оканчиваться расширением EXE, иначе определяемые ими псевдонимы команд работать не будут). В этом разделе существует параметр (По умолчанию), хранящий путь к программе, которая будет запускаться после ввода соответствующего ей псевдонима в диалоге Запуск программы.
Что вам дает знание данной ветви реестра? Ну, если пофантазировать, то можно изменить название раздела photoshop.exe на, допустим, ph.exe. Теперь вы сможете вызвать программу Photoshop вводом всего двух символов.
Можно создать свой собственный псевдоним для любимой программы. Для этого нужно просто создать новый раздел с любым названием (не забывайте, что раздел должен оканчиваться расширением EXE) в ветви системного реестра HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindowsCurrentVersion App Paths. После этого в параметре (По умолчанию) созданного раздела нужно определить путь к своей любимой программе.
ПРИМЕЧАНИЕ
Некоторые программы, кроме создания псевдонима, могут содержать в приведенной выше ветви реестра и другие параметры. Например, в ветви системного реестра HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindowsCurrentVersionAppPathssetup.exe (принадлежит программе установки других приложений) может находиться DWORD-параметр RunAsOnNonAdminInstall. Если его значение равно 1, то при каждом запуске программы Setup.exe для установки какой-нибудь программы пользователем, не имеющим на это привилегий, будет выводиться диалог Запуск от имени, в котором можно зарегистрироваться под учетной записью, имеющей права на установку программ в системе.
Точно такой же параметр может храниться в ветви реестра HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindowsCurrentVersionApp Pathswinnt32.exe, а также в ветви HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindowsCurrentVersionApp Pathsinstall.exe.
Есть и еще один общий для всех разделов параметр строкового типа — RunAsCommand. Если он присутствует в разделе и его значение равно, допустим, 0, то ни один пользователь не сможет запустить программу, определяемую данным псевдонимом. Имеется в виду, что не сможет запустить не только из диалога Запуск программы, но и с помощью ярлыков или самого файла программы (можно только с помощью консоли cmd.exe).
? HKEY_CURRENT_USERSoftwareMicrosoftWindowsCurrentVersionExplorerAdvanced — может содержать один интересный параметр DWORD-типа, который называется NewDragImages. Он может принимать значения 0 или 1. В зависимости от используемого значения вы сможете увидеть одно из изображений, приведенных на рис. 5.10 (рисунок слева создан при копировании пункта меню Пуск на Рабочий стол с использованием значения параметра, равного 1, а рисунок справа создан при использовании значения, равного 0).
Рис. 5.10. Изменение способа отображения копируемого файла
? HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindowsCurrentVersionExplorerMyComputer — мы с вами уже рассматривали содержимое раздела NameSpace этой ветви реестра, но, кроме него, ветвь корневого раздела HKEY_LOCAL_MACHINE имеет еще три раздела: BackupPath, cleanuppath и DefragPath. Все эти ветви включают в себя параметр (По умолчанию), значение которого определяет команду, выполняющуюся при нажатии той или иной кнопки на вкладке Сервис диалога Свойства: Диск (параметр первого раздела определяет команду кнопки Выполнить архивацию, второго — Выполнить проверку, а третьего — Выполнить очистку).
Например, если присвоить параметру (По умолчанию) раздела BackupPath значение, допустим, cmd.exe, то после нажатия кнопки Выполнить архивацию перед вами отобразится командный процессор cmd.exe. Конечно, пример с программой cmd.exe не совсем удачен, но если вы используете для перечисленных выше действий программы сторонних производителей, то именно их вызов можно присвоить параметрам (По умолчанию) разделов BackupPath, cleanuppath и DefragPath.
? HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindowsCurrentVersionExplorerFindExtensionsStatic — определяет содержимое пункта Найти меню Пуск. Оно строится в следующем формате: сначала идет набор разделов, каждый из которых определяет одну команду меню Пуск. Например, в приведенной ветви реестра могут находиться следующие разделы:
• ShellSearch — определяет команду Файлы и папки пункта Найти меню Пуск;
• WabFind — задает команду Людей пункта Найти меню Пуск;
• WebSearch — определяет команду В Интернете пункта Найти меню Пуск.
Параметр (По умолчанию) каждого из этих разделов определяет ActiveX-объект, который обрабатывает выбор соответствующей команды из пункта Найти меню Пуск. Кроме этого параметра, разделы могут содержать другие разделы, названия которых определяются в формате 0, 1, 2, 3. Параметр (По умолчанию) каждого из этих разделов определяет соответствующую строку названия (если в разделе не существует параметра строкового типа LocalizedString, значение которого, как известно, всегда переопределяет параметр (По умолчанию)). При этом только значение параметра (По умолчанию) раздела 0 может отображаться в качестве названия команды пункта Найти меню Пуск. Каждый из разделов 0, 1, 2…, в свою очередь, должен содержать подраздел, который называется DefaultIcon. Параметр (По умолчанию) этого подраздела определяет значок, отображаемый напротив названия команды пункта Найти меню Пуск.
Зачем же все это нужно? Во-первых, для того, чтобы удалить ненужные команды пункта Найти меню Пуск. Во-вторых, что уже интересней, чтобы добавить свои команды к данному меню. Например, попробуйте добавить к данному меню команду вызова апплета Установка и удаление программ. Для этого нужно создать раздел с любым именем в ветви реестра HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindowsCurrentVersionExplorerFindExtensionsStatic и его параметру (По умолчанию) присвоить значение {2559A1F7-21D7-11D4-BDAF-00C04F60B9F0}. После этого нужно создать дочерний раздел 0 и его параметру (По умолчанию) присвоить строку названия, например незамысловатое Установка и удаление программ. И наконец, в параметре (По умолчанию) подраздела DefaultIcon, который должен быть создан в дочернем разделе, нужно определить путь к файлу рисунка, используемого в качестве значка (рис. 5.11).
? HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindowsCurrentVersionExplorerFileAssociation — раз уж чуть выше речь зашла о меню Пуск, то поговорим еще о двух параметрах строкового типа, предназначенных для выполнения конфигурации нового меню Пуск, — AddRemoveApps и AddRemoveNames. Первый из них определяет имена программ (пишутся через точку с запятой), которые не будут помещаться в новое меню Пуск, сколько бы их ни вызывали. Второй же содержит части названия имен файлов, ссылки на которые не будут помещаться в новое меню Пуск, сколько бы их ни вызывали.
Рис. 5.11. Создание своей команды пункта Найти меню Пуск
? HKEY_CURRENT_USERSoftwareMicrosoftJava VM — еще одна интересная ветвь реестра, параметры которой определяют настройки консоли Java. К контексту данной главы эти параметры не очень подходят. Все, кроме одного, имеющего название EnableJavaConsole. Параметр имеет тип REG_BINARY, и если его значение будет равно 1, то в своем меню Вид Проводника и браузера Internet Explorer вы сможете встретить команду Окно языка Java, после нажатия которой перед вами предстанет окно, подобное изображенному на рис. 5.12. Автор не очень разбирается в языке Java, поэтому судить о важности данной команды предоставляет читателям.
Рис. 5.12. Добавление к меню Вид вызова консоли языка Java
? HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindows NTCurrentVersionWinlogon — используется для хранения установок сервиса WINLOGON — именно ему мы доверяем свой логин и пароль при входе в систему. Конечно, установки WINLOGON малопригодны для настройки оболочки, но все-таки существует один параметр, который подходит к описываемой теме. Этот параметр имеет строковый тип и называется Background. Его значение определяет цвет фона, который будет использоваться для отображения Рабочего стола при выводе диалога регистрации в системе (только если используется классический вход в систему), и имеет уже знакомый вам RGB-формат. Например, если присвоить этому параметру значение 000, то вместо стандартного голубоватого фона вы получите строгий черный.
? HKEY_CURRENT_USERSoftwareMicrosoftWindowsCurrentVersionExplorer — содержит очень интересный параметр, имеющий DWORD-тип, — MaximizeApps. Если его значение будет равно 1, то все запускаемые вами программы будут открываться на весь экран. Предположительно этот параметр применяется для отображения на весть экран командной строки cmd.exe при использовании альтернативного входа в систему Безопасный режим с использованием командной строки.
? HKEY_CURRENT_USERSoftwareMicrosoftWindows NTCurrentVersionNetworkPersistent Connections — содержит параметр строкового типа SaveConnections. Его значение определяет, будет ли операционная система по умолчанию создавать перманентные подключения к сетевым папкам и принтерам (перманентные подключения — это подключения, которые будут восстанавливаться после следующего входа пользователя в систему). Если значение равно no, то перманентные подключения создаваться не будут. По умолчанию значение равно yes, хотя иногда это может нарушить систему безопасности (например, когда в системе используются скрытые сетевые ресурсы, заканчивающиеся на знак $ и при этом администратор не хотел бы, чтобы пользователи знали о таких сетевых ресурсах).
? HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControlNetworkProvider — может содержать DWORD-параметр RestoreConnection. По умолчанию его значение равно 0, что говорит о том, что Windows разрешено использовать фантомные подключения. Если значение равно 1, то это будет запрещено.
ПРИМЕЧАНИЕ
Фантомные подключения — это перманентные подключения, которые при входе пользователя в систему считаются восстановленными, хотя фактически система не выполняла их восстановление. Плюсом фантомных подключений является то, что такие подключения при входе пользователя физически не восстанавливаются, поэтому вход будет быстрее. К тому же если удаленный компьютер, доступ к которому система должна восстановить, в данный момент выключен, то система при входе пользователя не будет выводить диалог о недоступности компьютера (при отключении фантомных подключений операционная система будет выдавать сообщение о том, что она не смогла восстановить подключение, если необходимый компьютер недоступен). Минусом же такого подключения является небольшая задержка перед его использованием в первый раз, необходимая чтобы система смогла физически установить подключение удаленного компьютера.
? HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServiceslanmanserverShares — раз уж зашла речь о сети, то немного продолжим эту тему. В предыдущей части книги упоминалась команда (даже несколько команд), с помощью которой можно было создать общедоступную папку. Но это не единственная возможность операционной системы, предназначенная для работы с общедоступными папками, ведь вы уже знаете, что большую часть всей своей конфигурационной информации Windows хранит в реестре. Информация о общедоступных папках не является исключением — именно для ее хранения и применяется описываемая ветвь реестра.
Ветвь включает в себя список параметров REG_MULTI_SZ-типа, каждый из которых описывает один общедоступный ресурс (имя параметра равно названию общедоступной папки) (рис. 5.13). Описание ресурса состоит из следующих строк (находятся в значении параметра):
• CSCFlags — определяет флаги кэширования папки для работы в автономном режиме (например, если данный параметр равен 48, то кэширование выполняться не будет, если равен 16, то будет выполняться кэширование документов в автоматическом режиме, если равен 0, то кэширование будет выполняться в ручном режиме);
• MaxUses — определяет количество пользователей, которые могут одновременно получить доступ к ресурсу (если определено неограниченное количество пользователей, то эта строка примет вид MaxUses=4294967295);
• Permissions — назначение неизвестно (всегда равен 0);
• Remark — определяет примечание к общедоступному ресурсу (оно создается с помощью поля Примечание на вкладке Доступ);
• Туре — назначение неизвестно (для папок всегда равен 0, а для принтеров равен 1).
Рис. 5.13. Хранение сведений о папках, к которым открыт общий доступ
Имейте в виду, что файлы и папки, находящиеся в общем доступе, менее защищены, чем при отсутствии общего доступа к ним. По этой причине рекомендуется периодически проверять содержимое таких папок.
- 3.13.3. Некоторые новые возможности Oniguruma
- Другие возможности XML
- Глава 17 Другие возможности
- Другие возможности Центра справки и поддержки
- 5.1.17. Другие возможности Pages
- Часть 4 Другие возможности Windows XP
- Другие возможности форматирования
- 4. Подсчет и пересчет
- Пакеты: оценка
- 10.6.1. Обнажение проблемы
- Часть III Установка, настройка и оптимизация операционной системы
- Об авторе