Роман Клименко - Недокументированные и малоизвестные возможности Windows XP
■ rundll32 desk.cpl, UpdateUIfontsDueToDPIchange — это очень опасная команда, особенно если применять ее без параметров. Ее действия непредсказуемы, но в основном они направлены на обновление параметров настройки оболочки из ветвей реестра HKEY_CURRENT_USERControl PanelDesktop и HKEY_CURRENT_USERControl PanelColors. При этом если не указывать параметры вызова команды, то значения параметров, которые она устанавливает в приведенных ветвях реестра, являются случайными.
Конечно, приведенное выше описание команды условно и наигранно, по этой причине для примера результата действий команды хотелось бы представить рис. 1.7. Приведенные на рисунке настройки оболочки были получены после нескольких последовательных вызовов команды rundll32 desk.cpl, UpdateUIfontsDueToDPIchange.
Рис. 1.7. Оказывается, поиск команд rundll32 — это очень опасное занятие
Firewall.cpl
Апплет служит для настройки встроенного брандмауэра Windows (работает ли брандмауэр, за работой в сети каких программ он не следит). Окно этого апплета можно вызвать с помощью команды rundll32 firewall.cpl, ShowControlPanel.
Кроме вызова окна настройки брандмауэра Windows, файл firewall.cpl позволяет вызвать другое окно — окно извещения о том, что функциональность заданной программы будет ограничена. Для этого применяется следующая команда: rundll32 firewall.cpl, ShowNotificationDialog «название прогрaммы». Например, результат вызова команды rundll32 firewall.cpl, ShowNotificationDialog "c:windowssystem32cmd.exe" можно увидеть на рис. 1.8 (можно просто указать название программы — cmd.exe, в этом случае в строке Имя вместо описания программы будет отображено ее название).
Вызванное окно является мнимым, то есть его вызов ни к какому результату не приведет и никак не повлияет на возможность работы указанной в диалоговом окне программы.
Рис. 1.8. Результат выполнения команды rundll32 firewall.cpl, ShowNotificationDialog "c:windowssystem32cmd.exe"
Inetcpl.cpl
Апплет является диалогом Свойства: Интернет, предназначенным для настройки параметров конфигурации браузера Internet Explorer. Доступ к этому диалогу можно получить как через Панель управления, так и с помощью команды Свойства обозревателя меню Свойства браузера Internet Explorer. Уже стало традицией, что доступ к апплету можно получить не только при помощи его названия, но и используя команду rundll32.exe — в данном случае для этого применяется команда rundll32 inetcpl.cpl, LaunchInternetControlPanel. Кроме этой команды, апплет inetcpl.cpl поддерживает довольно много команд rundll32.exe, поэтому для их описания воспользуемся списком.
■ rundll32 inetcpl.cpl, DisplayPopupWindowManagementDialog — позволяет вывести на экран диалог Параметры блокировки всплывающих окон, предназначенный для настройки сайтов, на которые не будут действовать параметры блокировки. При этом в поле Адрес разрешенного Веб-узла будет установлено нечитаемое значение. К сожалению, изменить это значение невозможно. C помощью данного окна можно также определить, будут ли подаваться звуковые сигналы при блокировке всплывающего окна и будет ли отображаться в строке статуса браузера панель информации при блокировке окна.
■ rundll32 inetcpl.cpl, DllInstall — из следующей части, описывающей интересные ветви и параметры реестра, вы узнаете о том, что содержимое списка на вкладке Дополнительно окна Свойства: Интернет хранится в реестре.
При этом его можно редактировать или вообще удалить, чтобы пользователь не смог изменить настройки браузера. Если вы все-таки удалили содержимое списка на вкладке Дополнительно, то, выполнив данную команду rundll32.exe, вы всегда сможете его восстановить (восстанавливается список по умолчанию, то есть если вы добавили к списку свои элементы, то они будут утеряны).
■ rundll32 inetcpl.cpl, LaunchConnectionDialog — позволяет вызвать окно Свойства: Интернет, открытый на вкладке Подключения.
■ rundll32 inetcpl.cpl, LaunchPrivacyDialog — если с помощью предыдущей команды можно было открыть диалог Свойства: Интернет на вкладке Подключения, то с помощью этой команды можно открыть его на вкладке Конфиденциальность.
■ rundll32 inetcpl.cpl, LaunchSecurityDialogEx — позволяет открывать вкладку Безопасность как независимый от диалога Свойства: Интернет элемент системы (рис. 1.9). Другими словами, если две предыдущие команды несмогли бы выполниться в случае, когда с помощью административных шаблонов запрещено отображать соответствующие вкладки или сам диалог, то эта команда не зависит от настроек групповых политик.
Рис. 1.9. Результат выполнения команды rundll32 inetcpl.cpl, LaunchSecurityDialogEx
■ rundll32 inetcpl.cpl, LaunchSiteCertDialog — благодаря этой команде можно вывести диалог Сертификаты, с помощью которого вы сможете импортировать, экспортировать или просто просмотреть список личных сертификатов, а также доверенных издателей, доверенных центров сертификатов и многое другое.
■ rundll32 inetcpl.cpl, OpenLanguageDialog — если два предыдущих диалога не влияли ни на одну программу операционной системы, то диалог, открываемый с помощью этой команды, отображается при нажатии кнопки Языки на вкладке Общие окна Свойства обозревателя.
■ rundll32 inetcpl.cpl, SiteCert_RunFromCmdLine «путь к файлу корневого сертификата» — применяется для запуска установки файла корневого сертификата.
Joy.cpl
С помощью данного апплета можно отобразить маленькое окно настройки или установки нового игрового манипулятора — джойстика, руля и т.д. Поскольку диалоговое окно данного апплета действительно маленькое, неудивительно, что оно поддерживает только одну команду rundll32.exe — rundll32 joy.cpl, ShowJoyCPL.
Mmsys.cpl
В этом разделе будут рассмотрены несколько команд rundll32.exe, предназначенных для отображения той или иной части диалога Свойства: Звук и аудиоустройства. Этот диалог используется для настройки событий системы, которые требуют звукового сопровождения, а также для настройки некоторых возможностей колонок и микрофона. Чтобы отобразить диалог Свойства: Звук и аудиоустройства с помощью rundll32.exe, необходимо воспользоваться командой rundll32 mmsys.cpl, ShowFullControlPanel. Можно также использовать команду rundll32 mmsys.cpl, ShowDriverSettingsAfterFork. В этом случае отображаемый диалог будет открыт на вкладе Оборудование.
Существует возможность вызова отдельных диалогов, используемых для построения диалога Свойства: Звук и аудиоустройства. Например, можно отобразить диалог Свойства аудио (рис. 1.10), являющийся вкладкой Аудио диалога Свойства: Звук и аудиоустройства. Для этого применяется команда rundll32 mmsys.cpl, ShowAudioPropertySheet.
Рис. 1.10. Результат выполнения команды rundll32 mmsys.cpl, showaudiopropertysheet
Nusrmgr.cpl
Апплет отображает новый диалог Windows XP, предназначенный для настройки учетных записей пользователей. Этот диалог имеет очень много интересных возможностей, которые вы можете использовать в том случае, если аутентификация пользователя при его входе в систему на вашем компьютере выполняется с помощью нового стиля оформления Windows XP. Например, вы можете изменить изображение, которое будет выводиться напротив учетной записи конкретного пользователя (рис. 1.11). С помощью этого диалога можно настроить параметры паспорта .NET, а также имя, пароль или тип учетной записи конкретного пользователя.
К сожалению, с помощью команд rundll32.exe нельзя вызвать диалог Учетные записи пользователей или одну из его составляющих, хотя вы можете воспользоваться параметрами вызова апплета nusrmgr.cpl, описанными в приложении 2, чтобы вызвать ту или иную страницу данного диалога.
Рис. 1.11. Изменение изображения, выводимого напротив учетной записи пользователя
Несмотря на то, что данное окно нельзя вызвать с помощью команд rundll32.exe, некоторые возможности апплет nusrmgr.cpl все-таки предоставляет. Например, с его помощью можно удалить из реестра все сведения о диалоге Учетные записи пользователей, в результате чего этот диалог больше не будет работать. Для этого применяется команда rundll32 nusrmgr.cpl, DllUnregisterServer. Конечно, произведенные изменения обратимы. Например, чтобы восстановить в реестре все сведения о диалоге Учетные записи пользователей, нужно воспользоваться командой rundll32 nusrmgr.cpl, DllRegisterServer. Теперь диалог Учетные записи пользователей опять будет работать.
Wuaucpl.cpl
Это последний апплет команды rundll32.exe, который будет рассмотрен. Он предназначен для настройки автоматического обновления Windows и определяет способы его работы: будет ли оно работать; если все-таки будет работать, то в какое время будет происходить подключение к сайту обновления. Апплет также определяет параметры загрузки и установки обновлений. Чтобы отобразить диалоговое окно апплета wuaucpl.cpl с помощью rundll32.exe, необходимо воспользоваться командой rundll32 wuaucpl.cpl, ShowAUControlPanel.
Кроме отображения окна апплета, существует еще одна возможность — отображение справки по использованию автоматического обновления. Для этого применяется команда rundll32 wuaucpl.cpl, OpenAUHelpTopic. При этом следует учитывать, что данная команда работает корректно, только если диалог автоматического обновления отображается, иначе, возможно, придется вызвать ее несколько раз.