Файл: Руссинович М., Маргозис А. Утилиты Sysinternals. Справочник администратора 2012.pdf
Добавлен: 29.10.2018
Просмотров: 33004
Скачиваний: 742

Утилиты для получения информации о системе
Глава 14 377
PipeList
Именованные каналы реализованы в Windows через драйвер файловой
системы NPFS.sys, имя которого расшифровывается как Named Pipe File
System (файловая система именованных каналов). PipeList — консольная
утилита, показывающая все именованные каналы на локальном компьютере,
выполняя просмотр списка каталогов этой файловой системы. Как показано
на рис. 14-12, PipeList также показывает число экземпляров имен и макси-
мальное разрешенное число экземпляров. Значение Max Instances (Макс.
экземпляров), равное -1, означает, что число экземпляров не ограничено.
PipeList работает во всех версиях Windows и не требует администратор-
ских прав.
ClockRes
ClockRes — простая утилита командной строки, показывающая текущее раз-
решение системных часов, а также минимальный и максимальный интерва-
лы между тактами часов. Она не требует администраторских прав.
Текущий квант времени обычно бывает больше максимального, когда
какой-либо процесс, например, хост-процесс мультимедийного приложе-
ния, повышает разрешение для передачи звука и видео. В Windows 7 HTML-
список изменивших разрешение таймера процессов можно получить при по-
мощи стандартной утилиты Powercfg.exe, запущенной с командной /energy.
Рис. 14-13. ClockRes
SIN_ch_14.indd 377
27.12.2011 14:38:43

Глава 15
Другие утилиты
В этой главе описаны утилиты, не имеющие отношения к диагностике и
устранению неполадок. Это простые утилиты, написанные мной для соб-
ственных нужд или просто для развлечения, которые я затем опубликовал
на сайте Sysinternals.
• RegJump запускает RegEdit и переходит по указанному пути;
• Hex2Dec преобразует числа из шестнадцатеричной системы счисления в
десятичную и наоборот;
• RegDelNull ищет и удаляет разделы реестра с Null-символами в именах;
• Хранитель экрана Bluescreen реалистично имитирует «синий экран
смерти»;
• Ctrl2Cap — драйвер-фильтр клавиатуры, преобразующий нажатие Caps
Lock в нажатие Ctrl. Предназначен для тех, кто использует клавиатуры,
на которых клавиша Ctrl расположена слева от клавиши A.
RegJump
RegJump — утилита командной строки, принимающая путь к разделу рее-
стра, открывающая редактор реестра RegEdit и переходящая в этом редак-
торе по указанному пути. Корневой раздел можно указать в стандартном
или сокращенном виде и даже в формате спецификатора диска PowerShell.
Необязательно заключать в кавычки пути, содержащие пробелы. Все сле-
дующие команды равнозначны:
regjump HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control
regjump HKLM\SYSTEM\CurrentControlSet\Control
regjump HKLM:\SYSTEM\CurrentControlSet\Control
RegJump программно отправляет нажатия клавиш редактору RegEdit.
Это значит, что в Windows Vista и последующих версиях RegJump необхо-
димо запускать с уровнем целостности, не меньшим, чем у RegEdit. Если вы
входите в группу администраторов, RegEdit требует повышения прав, так
что RegJump тоже необходимо запускать с повышенными правами. Если вы
SIN_ch_15.indd 378
27.12.2011 14:39:26

Другие утилиты
Глава 15 379
вошли как обычный пользователь, ни RegJump, ни RegEdit не требуют по-
вышения привилегий.
Hex2Dec
Если вы проводите много времени за работой с командной строкой или кон-
солью Windows PowerShell, утилита Hex2Dec будет удобным инструментом
для преобразования чисел из шестнадцатеричной в десятичную систему
счисления и наоборот, не открывая Калькулятор Windows. Просто введите в
командную строку число, которое хотите преобразовать, используя префикс
x
или
Ox
, чтобы указать шестнадцатеричное число. Hex2Dec интерпрети-
рует входные данные как 64-разрядные целые числа (qword), обрабатывая
десятичные значения как 64-разрядные целые числа со знаком. На рис. 15-1
показаны примеры.
Рис. 15-1. Hex2Dec
RegDelNull
Из-за того, как собственные API Windows и ядро Windows обрабатывают
строковые значения, допустимо создание и обращение к разделам и значени-
ям реестра с null-символами в именах. Поскольку в Win32 API null-символ
используется для указания конца строкового значения, невозможно обра-
щаться или удалять такие разделы и значения при помощи интерфейсов
Win32 API или стандартных редакторов реестра, использующих эти API,
таких как RegEdit.
RegDelNull ищет разделы реестра, имена которых содержат null-символы,
и позволяет удалять их. Укажите раздел, в котором будет выполнен поиск,
и добавьте параметр -s для поиска в подразделах. Если такой раздел найден,
путь к нему отображается со звездочкой вместо null-символа, и предлагает-
SIN_ch_15.indd 379
27.12.2011 14:39:27

380 Часть
II
Работа с утилитами
ся удалить этот раздел (рис. 15-2). Заметьте, что удаление разделов реестра
может привести к выходу из строя приложений, использующих их.
Рис. 15-2. RegDelNull
Экранная заставка Bluescreen
Эта заставка написана просто для развлечения. Она реалистично имитирует
бесконечную череду крахов системы с «синим экраном смерти» (Blue Screen
of Death, BSOD) и перезагрузок системы. Для каждого «сбоя» заставка слу-
чайно выбирает код ошибки и отображает реалистичные данные, соответ-
ствующие этому коду. Для имитации перезагрузки отображается экран за-
грузки Windows XP с индикатором хода, после которого снова происходит
«сбой» (заставка уже устарела и не показывает экраны загрузки Windows
Vista и Windows 7).
Чтобы установить эту заставку, скопируйте файл SysinternalsBluescreen.
scr в папку System32 и выберите его в окне настройки экранной заставки.
Можно также скопировать его в любую папку, щелкнуть на нем правой кноп-
кой мыши в Проводнике и выбрать в контекстном меню команду Установить
(Install). Хранитель экрана Bluescreen не входит в пакет Sysinternals, но его
можно скачать отдельно с сайта Sysinternals.
Примечание В окне настройки Bluescreen имеется флажок Fake Disk Activity (Ими-
тировать активность диска), который ничего не делает в ОС выше Windows NT 4.0,
после которой «Синий экран смерти» был значительно переработан.
Хранитель экрана Bluescreen работает во всех версиях Windows и не
требует административных прав. Но так как он требует изменения режима
отображения, он не будет работать в сеансах удаленного рабочего стола; а
поскольку он использует DirectX, то может и не работать в виртуальных ма-
шинах.
Используйте этот хранитель экрана с осторожностью! Мы слышали исто-
рии о том, как пользователи много раз по-настоящему отключали питание
компьютера для перезагрузки системы после фальшивого сбоя. Также мы
слышали, что у одного человека, у которого эта заставка включилась во вре-
мя презентации. Он равнодушно нажал клавишу и продолжил демонстра-
SIN_ch_15.indd 380
27.12.2011 14:39:27

Другие утилиты
Глава 15 381
цию, а слушатели до того изумились, что просто перестали обращать внима-
ние на докладчика и побежали звонить руководству с сообщением о «новом
способе быстрого восстановления после 'синего экрана', на котором можно
заработать состояние»…
Ctrl2Cap
Прежде чем начать работать с Windows, я проводил все свое время за UNIX-
системами, у которых клавиша Control находилась там, где у стандартных
клавиатур PC находится Caps Lock. Чтобы не изменять привычку, я решил
изучить устройство Windows и написать драйвер режима ядра, преобразую-
щий нажатия Caps Lock в нажатия Control. Ctrl2Cap — первая написанная
мной утилита Sysinternals. Я до сих пор использую ее, и никогда не жалел об
отсутствии Caps Lock.
Ctrl2Cap работает во всех версиях Windows x86 и x64. Для установки и
удаления этой утилиты требуются административные привилегии.
Чтобы установить Ctrl2Cap, выполните команду ctrl2cap /install из пап-
ки, в которую распаковали файлы Ctrl2Cap. Для удаления утилиты выпол-
ните команду ctrl2cap /uninstall. В отличие от других утилит Sysinternals,
упакованных в один исполняемый файл, способный самостоятельно извле-
кать все необходимые дополнительные файлы, архив Ctrl2Cap включает
файл Ctrl2Cap.exe и несколько .sys-файлов. Во время установки Ctrl2Cap.
exe определяет, какой из .sys-файлов подходит для текущей системы, копи-
рует его в папку System32\Drivers под именем Ctrl2Cap.sys и регистрирует
его как драйвер-фильтр клавиатуры.
SIN_ch_15.indd 381
27.12.2011 14:39:27