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


Авторские права

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

Здесь можно скачать бесплатно "Роман Клименко - Недокументированные и малоизвестные возможности Windows XP" в формате fb2, epub, txt, doc, pdf. Жанр: Программное обеспечение, издательство Питер, год 2006. Так же Вы можете читать книгу онлайн без регистрации и SMS на сайте LibFox.Ru (ЛибФокс) или прочесть описание и ознакомиться с отзывами.
Роман Клименко - Недокументированные и малоизвестные возможности Windows XP
Рейтинг:
Название:
Недокументированные и малоизвестные возможности Windows XP
Издательство:
Питер
Год:
2006
ISBN:
5-469-01562-9
Скачать:

99Пожалуйста дождитесь своей очереди, идёт подготовка вашей ссылки для скачивания...

Скачивание начинается... Если скачивание не началось автоматически, пожалуйста нажмите на эту ссылку.

Вы автор?
Жалоба
Все книги на сайте размещаются его пользователями. Приносим свои глубочайшие извинения, если Ваша книга была опубликована без Вашего на то согласия.
Напишите нам, и мы в срочном порядке примем меры.

Как получить книгу?
Оплатили, но не знаете что делать дальше? Инструкция.

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

Описание и краткое содержание "Недокументированные и малоизвестные возможности Windows XP" читать бесплатно онлайн.



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

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






'оставшегося для обработки кода, или использовать для каждой части

'кода свои методы обработки ошибок.

private sub sronoff()

 'Внимание, именно сейчас мы подключаемся к WMI с помощью моникера winmgmts.

 'Здесь мы подключаемся к пространству имен root/default локального

 'компьютера и объявляем класс SystemRestore этого пространства c имитацией

 'прав доступа (impersonate). Если вам запрещен доступ к пространству

 'имен root/default, то вы не сможете объявить класс SystemRestore

 'Помните, выше мы рассматривали параметры реестра, для определения порогов

 'передачи объектов от поставщиков WMI. Именно передачей объектов мы и

 'пользуемся в данный момент.

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

 'Чуть ниже мы считываем из реестра значение параметра. Особенность

 'сценария состоит в том, что он будет выдавать ошибку, если параметра,

 'значение которого мы считываем, не существует в реестре. Чтобы сценарий

 'не завершался ошибкой, мы подавляем возможность выдачи ошибок.

 'Иными словами, приведенная ниже строка говорит серверу сценариев о том,

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

 'не обращая внимания на возникшую ошибку.

 ON ERROR RESUME NEXT

 'Именно сейчас мы и работаем с реестром. Мы считываем значение

 'параметра DisableSR. Если значение данного параметра равно 1,

 'то SystemRestore полностью отключен на всех дисках и наш

 'сценарий в любом случае не будет работать со всеми дисками,

 'кроме системного.

 dasableSR = objREG.RegRead("HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\SystemRestore\DisableSR")

 'Если параметр, значение которого мы считываем, не существует в

 'реестре, тогда компилятор запишет в специальный объект err

 'код ошибки, равный –2147024894 (именно ошибка с этим кодом и возникает

 'в том случае, если параметр реестра, к которому мы пытаемся

 'получить доступ, в реестре отсутствует) .Если действительно произошла

 'ошибка с данным кодом, то SystemRestore на компьютере отключена,

 'то есть все попытки включения/отключения дисков, отличных от системного

 '(ниже под С:\ понимается системный диск), будут неудачны.

 'Ниже в сценарии будет присутствовать еще одно условие, выполняющее те же

 'действия, что и это. Работа с объектом для хранения ошибок была описана

 'лишь для примера, таккак в сценариях сервера сценариев Windows это

 'единственный способ определить, присутствует ли в реестре конкретный

 'параметр.

 if (err.Number = –2147024894) and (Drive <> "c:\") then

  objTextFile.WriteLine " : Параметр DisableSR отсутствует в реестре. Это значит, что SystemRestore отключена и вкладка для ее настройки отсутствует в диалоге Свойства системы"

  'Выходим из функции, а поскольку эта функция главная, то завершается

  'и работа сценария. Иными словами, дальнейший код сценария

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

  'диск, если сама возможность SystemRestore отключена.

  exit sub

 End if

 'Под диском C:\ понимается системный диск, поэтому если вашим системным

 'диском является не диск С:\, то букву нужно заменить. Особенность

 'работы SystemRestore заключается в том, что в случае остановки

 'SystemRestore на системном диске SystemRestore автоматически

 'останавливается на всех дисках компьютера и параметр DisableSR становится

 'равен 1. Именно поэтому запросы на включение/выключение System Restore

 'на отличных от системного диска дисках не обрабатываются при значении

 'параметра DisableSR, равном 1 (эти запросы работать не будут). При

 'этом системный диск запросы обрабатывать может – если SystemRestore на

 'нем будет включена, то параметр DisableSR станет равным 0, а значит,

 'будет включена и сама возможность автоматического восстановления.

 'Именно поэтому ниже системный диск исключается из условного выполнения.

 if (dasableSR > 0) and (Drive <> "c:\") then

  objTextFile.WriteLine " : Возможность работы SystemRestore на всех дисках была отключена"

  exit sub

 else

  'Для облегчения читаемости приведенного кода вместо условных конструкций

  'if … else используются конструкции select case. В остальном дальше

  'код довольно простой, поэтому описывать его мы не будем.

  select case StopSR

  case "N"

   If (obj.Disable(Drive)) = 0 Then

    objTextFile.WriteLine " : SystemRestore для диска " & Drive & " успешно остановлена"

   Else

    objTextFile.WriteLine " : Внимание!!! SystemRestore для диска " & Drive & " остановить не удалось"

   End If

  case "Y"

   If (obj.Enable(Drive)) = 0 Then

    objTextFile.WriteLine " : SystemRestore для диска " & Drive & " успешно запущена"

   Else

    objTextFile.WriteLine " : Внимание!!! SystemRestore для диска " & Drive & " запустить не удалось"

   End If

  End Select

 End if

 'Считается хорошим тоном закрывать в сценариях текстовые файлы, открытые

 'до этого. Именно этим и занимается приведенная ниже строка.

 objTextFile.Close

end sub

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

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

заменить строкой

Set obj = GetObject("winmgmts:{impersonationLevel=impersonate}!\\«имякомпьютера»\root\default:SystemRestore")

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

Напоследок несколько возможных команд запуска приведенного сценария:

■ cscript d: \sr.vbs — полностью отключить возможность восстановления системы (если диск C: является системным);

■ cscript d:\sr.vbs c:\ Y — полностью включить возможность восстановления системы (если диск C: является системным);

■ 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, которое выполняет именно эту операцию.


На Facebook В Твиттере В Instagram В Одноклассниках Мы Вконтакте
Подписывайтесь на наши страницы в социальных сетях.
Будьте в курсе последних книжных новинок, комментируйте, обсуждайте. Мы ждём Вас!

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

Книги похожие на "Недокументированные и малоизвестные возможности Windows XP" читать онлайн или скачать бесплатно полные версии.


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

Все книги автора Роман Клименко

Роман Клименко - все книги автора в одном месте на сайте онлайн библиотеки LibFox.

Уважаемый посетитель, Вы зашли на сайт как незарегистрированный пользователь.
Мы рекомендуем Вам зарегистрироваться либо войти на сайт под своим именем.

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

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

А что Вы думаете о книге? Оставьте Ваш отзыв.