Роман Клименко - Недокументированные и малоизвестные возможности Windows XP

Тут можно читать онлайн Роман Клименко - Недокументированные и малоизвестные возможности Windows XP - бесплатно полную версию книги (целиком) без сокращений. Жанр: comp-osnet, издательство Питер, год 2006. Здесь Вы можете читать полную версию (весь текст) онлайн без регистрации и SMS на сайте лучшей интернет библиотеки ЛибКинг или прочесть краткое содержание (суть), предисловие и аннотацию. Так же сможете купить и скачать торрент в электронном формате fb2, найти и слушать аудиокнигу на русском языке или узнать сколько частей в серии и всего страниц в публикации. Читателям доступно смотреть обложку, картинки, описание и отзывы (комментарии) о произведении.
  • Название:
    Недокументированные и малоизвестные возможности Windows XP
  • Автор:
  • Жанр:
  • Издательство:
    Питер
  • Год:
    2006
  • ISBN:
    5-469-01562-9
  • Рейтинг:
    4.11/5. Голосов: 91
  • Избранное:
    Добавить в избранное
  • Отзывы:
  • Ваша оценка:
    • 80
    • 1
    • 2
    • 3
    • 4
    • 5

Роман Клименко - Недокументированные и малоизвестные возможности Windows XP краткое содержание

Недокументированные и малоизвестные возможности Windows XP - описание и краткое содержание, автор Роман Клименко, читайте бесплатно онлайн на сайте электронной библиотеки LibKing.Ru

Книга содержит подробные сведения о таких недокументированных или малоизвестных возможностях Windows XP, как принципы работы с программами rundll32.exe и regsvr32.exe, написание скриптов сервера сценариев Windows и создание INF-файлов. В ней приведено описание оснасток, изложены принципы работы с консолью управления mmc.exe и параметрами реестра, которые изменяются с ее помощью. Кроме того, рассмотрено большое количество средств, позволяющих выполнить тонкую настройку Windows XP.

Эта книга предназначена для опытных пользователей и администраторов, которым интересно узнать о нестандартных возможностях Windows. Тем более что довольно часто эти возможности позволяют обойти ограничения на те или иные функции Windows, установленные администратором. Издание также может быть интересно и обычным пользователям

Недокументированные и малоизвестные возможности Windows XP - читать онлайн бесплатно полную версию (весь текст целиком)

Недокументированные и малоизвестные возможности Windows XP - читать книгу онлайн бесплатно, автор Роман Клименко
Тёмная тема
Сбросить

Интервал:

Закладка:

Сделать

■ cscript d:\sr.vbs D:\ N — отключить SystemRestore только на диске D:.

Создание контрольной точки восстановления

Продолжим рассмотрение темы восстановления системы и опишем код для автоматического создания точки восстановления. На этот раз будет приведена только часть кода, отвечающая за работу WMI, а не весь код сценария, то есть обращение к моникеру winmgmts и работа с классом. Вы самостоятельно можете модифицировать приведенный выше код для того, чтобы он мог, например, автоматически включать работу SystemRestore, если возможность восстановления системы отключена, а потом уже выполнять создание контрольной точки восстановления.

Листинг 11.2 Создание контрольной точки восстановления

Set obj = GetObject("winmgmts:{impersonationLevel=impersonate}!root/ default:SystemRestore")

'С помощью данной функции и создается точка восстановления.

'Функция имеет три параметра, первый из которых определяет описание

'создаваемой точки восстановления и возвращает код ошибки в случае

'неудачной попытки создания. Нам этот код не нужен,

'но тем не менее его необходимо поместить в любую переменную.

'Если вы будете записывать сведения о создании точки в журнал,

'то данный код может понадобиться.

ErrorSRCode = obj.CreateRestorePoint("Точка восстановления от " & Time(), 0, 100)

Энумерация содержимого ветви реестра

Стандартные методы объекта, предназначенные для доступа к системному реестру (WScript.CreateObject("Wscript.Shell") ), один из которых, позволяющий считывать значения параметров из реестра, был рассмотрен в примере сценария для включения/отключения восстановления системы на логических дисках компьютера, позволяют выполнить базовые операции с реестром.

Но данный объект имеет один очень большой недостаток — с его помощью нельзя перечислить все параметры, расположенные в определенной ветви реестра. Этот недостаток ограничивал возможности применения сценариев сервера сценариев Windows, поэтому просто нельзя не рассказать о новом свойстве инструментария Windows, которое выполняет именно эту операцию.

ПРИМЕЧАНИЕ

Это может понадобиться в том случае, если необходимо значение не конкретного параметра реестра, а всех параметров одной ветви. При этом точно не известно, какие именно параметры могут находиться в данной ветви.

За выполнение перечисления параметров, расположенных в ветви реестра, отвечает метод EnumValues, принадлежащий классу StdRegProv. Данный класс определяет методы для доступа к реестру Windows XP (более функциональный аналог стандартного объекта Windows, рассмотренного выше) и принадлежит к пространству имен Root\Default. Мы не будем создавать целый работоспособный сценарий для описания работы данного метода — лучше создадим отдельную процедуру, которая будет выполнять перечисление параметров указанной ветви реестра, а также проверим ее работу с помощью записи в файл журнала выводимых значений.

Листинг 11.3. Энумерация параметров ветви реестра

set objFS = CreateObject("Scripting.FIleSystemObject")

'Для вывода списка содержащихся в ветви реестра параметров мы будем

'использовать файл. В нашем случае – файл enum_log.txt на диске d:\..

set objTextFile = objFS.CreateTextFile("d:\enum_log.txt", 8, True)

'подключаем объект

Set obj = GetObject("winmgmts:{impersonationLevel=impersonate}!root/Default:StdRegProv")

'Переменная RootKey будет определять корневой раздел ветви, параметры

'которой мы будем перечислять. При этом корневые разделы идентифицируются

'в соответствии с правилами, определеннымивфайле Winreg.h. В файле

'определены следующие корневые разделы: HKEY_CLASSES_ROOT (0x80000000),

'HKEY_CURRENT_USER (0x80000001), HKEY_LOCAL_MACHINE (0x80000002),

'HKEY_USERS (0x80000003), HKEY_CURRENT_CONFIG (0x80000005), HKEY_DYN_DATA

'(0x80000006). В нашем случае будет использоваться корневой раздел

'HKEY_CURRENT_USER.

RootKey = &H80000001

Вызываем процедуру, которая и будет выполнять перечисление параметров. Для

'работы процедуры необходимы три параметра: ветвь реестра, параметры которой

'нужно перечислять (в нашем случае Control Panel\Desktop), объект,

'определяющий текстовый документ, в который будут записываться параметры

'ветви, а также корневой раздел указанной ранее ветви, записанный в нашем

'случае в параметре RootKey. После работы процедуры закрываем открытый

'текстовый файл.

call EnumV("Control Panel\Desktop", objTextFile, RootKey)

objTextFile.Close

Sub EnumV(Path, objTextFile, RootKey)

objTextFile.WriteLine ":::: Ветвь реестра: HKEY_CURRENT_USER\" & Path & vbCrLf

'Выполняем перечисление параметров, расположенных в ветви реестра

'HKEY_CURRENT_USER\Control Panel\Desktop. Для этого используется метод

'EnumValues, для работы которого необходимы следующие параметры:

'– Корневой раздел ветви (в нашем случае параметр RootKey)

'– Остальной путь к ветви реестра (в нашем случае параметр RootKey,

'указываемый при вызове процедуры).

' – Переменная, в которую будут помещаться содержащиеся в ветви реестра

'параметры. В нашем случае назовем эту переменную Names

' – Переменная, в которую будет помещаться идентификатор типа параметра.

'В нашем случае назовем ее Types.

obj.EnumValues RootKey, Path, Names, Types

'Проверяем, существуют ли в указанной ветви реестра параметры. Во-первых,

'проверяется равенство нулю переменной Names, содержащей названия

'параметров. А во-вторых, проверяем на равенство нулю переменную Types.

'Переменные нужно проверять именно на равенство нулю, так как ноль

'возвращается методом EnumValues в случае ошибки.

if not IsNull(Names) and not IsNull(Types) Then

'Выполняем цикл, количество итераций которого указывается границами

'переменной types (количеством элементов в переменной types, так как это

'массив). Иными словами, выполняем цикл столько раз, сколько переменных было

'найдено в указанной ветви реестра.

for i = lbound(types) to ubound(types)

'При этом мы будем выполнять запись в текстовый файл в зависимости

'от типа переменной, указанного в переменной types. Для этого будем

'использовать выражение select case из-за особенности метода EnumValues.

'Особенностью этого метода является способ указания типа найденной

'переменной. Для этого используется массив types (в нашем случае),

'в который помещаются идентификаторы типа переменной, определенные

'в файле Winreg.h. Возможны следующие идентификаторы:

'1 – определяет переменную строкового типа;

'2 – определяет переменную расширенного строкового типа;

'3 – определяет переменную REG_BINARY-типа;

Читать дальше
Тёмная тема
Сбросить

Интервал:

Закладка:

Сделать


Роман Клименко читать все книги автора по порядку

Роман Клименко - все книги автора в одном месте читать по порядку полные версии на сайте онлайн библиотеки LibKing.




Недокументированные и малоизвестные возможности Windows XP отзывы


Отзывы читателей о книге Недокументированные и малоизвестные возможности Windows XP, автор: Роман Клименко. Читайте комментарии и мнения людей о произведении.


Понравилась книга? Поделитесь впечатлениями - оставьте Ваш отзыв или расскажите друзьям

Напишите свой комментарий
x