» » » Роман Клименко - Недокументированные и малоизвестные возможности 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, установленные администратором. Издание также может быть интересно и обычным пользователям






Рассмотрим пример удаления параметра. В этом примере из реестра удаляется ветвь HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\lanmanserver\Shares, чтобы отключить все пользовательские общедоступные папки. При этом сначала нужно удалить все расположенные в данной ветви разделы, чтобы можно было удалить саму ветвь реестра. Как правило, ветвь для хранения сведений об общедоступных папках содержит только один раздел — Security.

ПРИМЕЧАНИЕ

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

Листинг 15.3. Удаление сведений об общедоступных папках

[version]

Signature="$CHICAGO$"


[DefaultInstall]

DelReg=shared_del


[shared_del]

HKLM,"SYSTEM\CURRENTCONTROLSET\SERVICES\LANMANSERVER\SHARES\Security"

HKLM,"SYSTEM\CURRENTCONTROLSET\SERVICES\LANMANSERVER\SHARES"

Как можно заметить, содержимое блока для удаления ветвей и параметров реестра похоже на содержимое блока редактирования ветвей и параметров реестра. Строка для удаления ветви или параметра имеет следующий формат:

«корневой раздел», «ветвь реестра», «параметр», «флаг операции удаления», «пример для удаления» 

■ Корневой раздел — указывает на корневой раздел, в котором расположен удаляемый параметр или ветвь реестра.

■ Ветвь реестра — определяет удаляемую ветвь реестра или ветвь, в которой хранится удаляемый параметр.

■ Параметр — определяет название удаляемого параметра. Если параметр отсутствует, то предполагается, что удаляться будет конечный раздел указанной ветви реестра.

■ Флаг операции удаления — может принимать следующие значения:

 • 0x00002000 — удалить весь конечный раздел указанной ветви;

 • 0x00004000 — произвести указанные изменения в 32-разрядном реестре;

 • 0x00018002 — удаляет из параметра все строки, соответствующие примеру для удаления.

■ Пример для удаления — определяет строку значения параметра, имеющего REG_MULTI_SZ-тип, все соответствия которой должны быть удалены из параметра.

Редактирование отдельных битов значения параметра

Это довольно интересная и, можно сказать, уникальная возможность, с помощью которой можно изменить отдельный бит параметра, не изменяя другие его биты. Для реализации этой возможности применяется ключевое слово BitReg, указывающее на блок INF-файла, содержащий сведения об изменяемых битах параметров. При этом блок INF-файла должен включать в себя строки следующего формата:

«корневой раздел», «ветвь реестра», «параметр», «флаг операции», «маска операции», «номер байта параметра»

■ Корневой раздел, ветвь реестра и параметр были рассмотрены ранее.

■ Флаг операции — может принимать следующие значения:

 • 0x00000000 — сбросить указанный бит;

 • 0x00000001 — установить указанный бит;

 • 0x00040000 — выполнить эти операции в 32-разрядном реестре.

■ Маска операции — определяет биты в значении параметра, которые должны быть модифицированы. Другими словами, маска должна состоять из восьми нулей или единиц (определяют 8 бит одного байта значения параметра). Все биты, на месте которых в маске указана единица, будут модифицироваться в зависимости от флага операции. Маска указывается в виде битовой маски.

■ Номер байта значения параметр — указывает на байт значения параметра, к которому будет применяться маска и биты которого будут модифицироваться. При этом номер байта зависит от типа параметра. Для параметров DWORD-типа самый старший байт имеет номер 0, а для параметров REG_BINARY-типа номер 0 имеет самый младший байт.

Для примера попробуем изменить отдельные биты параметра Attributes контекстного меню Корзины. После данной модификации в контекстном меню Корзины будут команды Переименовать, Свойства и Удалить. Такие команды, как Копировать, Вырезать, Вставить, будут удалены из контекстного меню Корзины (если они там присутствуют). В результате применения приведенного INF-файла значение DWORD-параметра Attributes станет равным 0x????0070.

ПРИМЕЧАНИЕ

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

Если в ветви реестра HKEY_CLASSES_ROOT\CLSID\645FF040-5081-101B-9F08-00AA002F954E}\ShellFolder присутствует параметр, имеющий DWORD-тип, CallForAttributes, то ему будет присвоено значение 0 (если в ветви данного параметра не существует, то он и не будет создан). 

Листинг 15.4. Пример модификации отдельных битов параметра

[version]

Signature="$CHICAGO$"


[DefaultInstall]

BitReg=RecicleBit

AddReg=CallAttrOff


[CallAttrOff]

HKCR,"CLSID\{645FF040-5081-101B-9F08-00AA002F954E}\ShellFolder",CallForAttributes,0x00010021,0


[RecicleBit]

HKCR,"CLSID\{645FF040-5081-101B-9F08-00AA002F954E}\ShellFolder",Attributes,0,0xff,0

HKCR,"CLSID\{645FF040-5081-101B-9F08-00AA002F954E}\ShellFolder",Attributes,0,0xff,1

HKCR,"CLSID\{645FF040-5081-101B-9F08-00AA002F954E}\ShellFolder",Attributes,1,0x70,0

Создание службы

Еще одной оригинальной возможностью, которой обладают INF-файлы, является упрощенное создание служб на компьютере. Для этого применяется не только ключевое слово AddService, но и специальный стандартный блок INF-файла [DefaultInstall.Services] (то есть к блоку по умолчанию добавляется строка .Services). При этом следует сказать, что этот блок не заменяет стандартный, а дополняет его. Иными словами, если в INF-файле будет два блока, то сначала выполнятся ключевые слова блока [DefaultInstall], а потом блока [DefaultInstall.Services].

Так как вам уже известно, как хранятся сведения о службе в реестре, то будет не сложно понять пример создания службы. По этой причине сначала посмотрим на листинг 15.5, который содержит часть INF-файла, регистрирующего в системе службу Восстановление системы.

Листинг 15.5. Пример регистрации службы Восстановление системы

[version]

Signature="$CHICAGO$"


[DefaultInstall.Services]

AddService=sr,,SRFlt_service,SRFlt_event


[SRFlt_service]

DisplayName = "Имяслужбы"

ServiceType = 2

StartType = 0

ErrorControl = 1

ServiceBinary = %12%\sr.sys

LoadOrderGroup = "FSFilter System Recovery"


[SRFlt_event]

AddReg=SRFlt_event_addreg

DelReg=SRFlt_event_delreg

Ключевое слово AddService, в отличие от большинства других, содержит не только название блока INFфайла, описывающего службу, но и некоторые другие сведения. Формат этого ключевого слова следующий:

«название службы»,«тип службы», «блок INF-файла»

■ Название службы — определяет название раздела в ветви системного реестра HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services, в который будет заноситься информация о службе. Как известно, название этого раздела является и названием службы.

■ Тип службы — указывает, является ли данная служба самостоятельной. Может принимать значения 0x01, 0x2 и 0x3.

■ Блок INF-файла — определяет один или несколько блоков INFфайла (в этом случае они пишутся через запятую), в которых определены сведения о службе. В листинге 15.5 первый блок содержит информацию о службе, а второй блок регистрирует возможность записи в системные журналы Windows (оснастка Просмотр событий).

Теперь рассмотрим блок INFфайла для регистрации службы. Он может включать в себя следующие ключевые слова.

■ DisplayName — имя службы, отображаемое в оснастке services.msc.

■ Description — описание службы, отображаемое в оснастке services.msc.

■ ServiceType — тип службы. Значение этого параметра соответствует уже рассмотренному значению параметра реестра Type (см. часть 2).

■ StartType — режим запуска службы. Значение этого параметра соответствует уже рассмотренному значению параметра реестра Start.

■ ErrorControl — действие при возникновении ошибки при запуске службы. Значение этого параметра соответствует уже рассмотренному значению параметра реестра ErrorControl.

■ ServiceBinary — путь и имя файла службы. Значение данного ключевого слова заносится в уже рассмотренный параметр ImagePath реестра. 

■ Dependencies — определяет службы, необходимые для работы данной службы. Эти значения заносятся в параметр реестра DependOnService.

■ LoadOrderGroup — определяет группу, к которой принадлежит данная служба. Эти значения заносятся в параметр реестра Group.

Удаление службы

Для удаления службы предназначено ключевое слово DelService, которое также указывается в блоке, названном в формате [«блок удаления».Services]. Удаление службы выполняется намного проще — просто указывается имя службы, которую нужно удалить (название раздела реестра, в котором служба описана).


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

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

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


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

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

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

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

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

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

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