Роман Клименко - Недокументированные и малоизвестные возможности Windows XP
- Название:Недокументированные и малоизвестные возможности Windows XP
- Автор:
- Жанр:
- Издательство:Питер
- Год:2006
- ISBN:5-469-01562-9
- Рейтинг:
- Избранное:Добавить в избранное
-
Отзывы:
-
Ваша оценка:
Роман Клименко - Недокументированные и малоизвестные возможности Windows XP краткое содержание
Книга содержит подробные сведения о таких недокументированных или малоизвестных возможностях Windows XP, как принципы работы с программами rundll32.exe и regsvr32.exe, написание скриптов сервера сценариев Windows и создание INF-файлов. В ней приведено описание оснасток, изложены принципы работы с консолью управления mmc.exe и параметрами реестра, которые изменяются с ее помощью. Кроме того, рассмотрено большое количество средств, позволяющих выполнить тонкую настройку Windows XP.
Эта книга предназначена для опытных пользователей и администраторов, которым интересно узнать о нестандартных возможностях Windows. Тем более что довольно часто эти возможности позволяют обойти ограничения на те или иные функции Windows, установленные администратором. Издание также может быть интересно и обычным пользователям
Недокументированные и малоизвестные возможности Windows XP - читать онлайн бесплатно полную версию (весь текст целиком)
Интервал:
Закладка:
Рассмотрим пример работы с этим и двумя предыдущими методами. В этом примере будет создан ярлык файла, путь к которому задаст пользователь. При этом ярлык будет располагаться либо в текущем каталоге (если пользователь нажмет кнопку Да), либо в каталоге, который пользователь сам укажет.
set wshshell = WScript.CreateObject("WScript.Shell")
vibor = wshshell.Popup("Создать ярлык в каталоге " & wshshell.CurrentDirectory & "?", "100", "Создание ярлыка", vbYesNoCancel)
select case vibor
case vbYes
set yarlik = wshshell.CreateShortcut(wshshell.CurrentDirectory & "\eto_yarlik.lnk")
yarlik.TargetPath = "d:\aa.bmp"
yarlik.Save
case vbNo
path = InputBox("Введите путь и имя ярлыка","Создание ярлыка",
wshshell.CurrentDirectory & "\eto_yarlik.lnk")
If path <> "" Then
set yarlik = wshshell.CreateShortcut(path)
yarlik.TargetPath = "d:\aa.bmp"
yarlik.Save
Else
MsgBox "Ну как хотите…"
End if
case vbCancel
MsgBox "Ну как хотите…"
end select
Environment
Метод предназначен для работы с системными переменными. Системные переменные можно посмотреть в одноименном списке диалога Переменные среды, который отобразится после нажатия кнопки Переменные среды, расположенной на вкладке Дополнительно диалога Свойства системы. Метод также поддерживает некоторые методы, которые будут рассмотрены.
■ Count — возвращает общее количество системных переменных, созданных на данный момент.
■ Length — аналогичен предыдущему методу.
■ Remove(имя переменной) — удаляет указанную системную переменную.
■ Item(имя переменной) — возвращает значение данной системной переменной.
Рассмотрим пример работы с системными переменными. Сначала пример узнает общее количество таких переменных, потом пытается считать значение переменной winbootdir (как правило, такая системная переменная всегда присутствует на компьютере), а потом удаляет эту переменную и снова считывает общее количество системных переменных.
ПРИМЕЧАНИЕ
Получить значение переменной можно также с помощью подобного вызова: MsgBox wshshell.ExpandEnvironmentStrings("%systemroot%").
set wshshell = WScript.CreateObject("WScript.Shell")
MsgBox wshshell.Environment.Count
MsgBox wshshell.Environment.item("winbootdir")
wshshell.Environment.Remove("winbootdir")
MsgBox wshshell.Environment.Count
Exec (путь и название исполняемого файла)
Метод предназначен для выполнения команд и при своем вызове возвращает объект, с помощью которого можно управлять вызванной программой. Данный объект поддерживает следующие методы.
ПРИМЕЧАНИЕ
Выполнить команду можно также с помощью метода Run. Он имеет следующий синтаксис: «переменная» = wshshell.run("путь к программе", TRUE).
■ Terminate — завершить вызванную программу.
■ ExitCode — код, возвращаемый при открытии программы. Если значение этого кода равно 0, то программа была вызвана успешно. Для этих целей можно также воспользоваться методом Status.
■ ProcessID — возвращает идентификатор, присвоенный нашей вызванной программе.
Рассмотрим простой пример работы с данным методом. В этом примере вызывается Проводник, после чего отображается PID созданного нами процесса, а затем процесс завершится.
set wshshell = WScript.CreateObject("WScript.Shell")
set prog = wshshell.Exec("explorer.exe")
if prog.Status = 0 then
MsgBox prog.ProcessID
prog.Terminate
End if
SendKeys
Работа этого метода довольно интересна. Он возвращает произвольное значение после завершения работы сценария. Например, если запустить в командном процессоре (cmd.exe) сценарий, содержащий строку wshshell.SendKeys "This message return over by script", то после завершения работы сценария в командном процессоре (то есть в строке для ввода команд командного процессора) появится указанное сообщение.
SpecialFolders
Метод предназначен для работы с пользовательскими папками. Он также поддерживает следующие методы.
■ Count — возвращает общее количество пользовательских папок.
■ Length — аналогичен предыдущему методу.
■ Item (индекс) — возвращает путь к папке, определенной данным индексом. Индекс может принимать значения от 0 до общего числа папок (возвращаемое методом Count значение).
Рассмотрим пример, отображающий пути ко всем возможным пользовательским папкам.
set wshshell = WScript.CreateObject("WScript.Shell")
For i = 0 to wshshell.SpecialFolders.Count – 1
MsgBox wshshell.SpecialFolders.Item(i)
Next
Как обычно, были рассмотрены далеко не все объекты и методы, которые доступны в Windows XP. Например, был пропущен такой интересный и знаменитый объект (знаменитый потому, что в свое время именно он использовался в почтовом черве ILOVEYOU), как объект для доступа к почтовым функциям программы Outlook Express. Объект поддерживает очень много методов, не говоря уже о других объектах Windows XP, поэтому их описание могло вылиться в отдельную книгу. В любом случае, автор рассчитывал создать лишь введение в возможности сервера сценариев Windows. Если эта тема вам интересна, рекомендуется купить отдельную книгу, посвященную только ей.
Глава 17
Другие возможности
Теперь кратко рассмотрим несколько возможностей настройки интерфейса оболочки Windows XP или ее конфигурации без использования реестра, команд rundll32 и всего того, что мы с вами уже рассмотрели.
Вкладка Общие диалога Свойства системы
Существует возможность редактирования содержимого вкладки Общие диалога Свойства системы даже без доступа к реестру Windows XP. Плюсом этого метода является больше возможностей, которые с его помощью можно выполнить.
Итак, для редактирования содержимого вкладки Общие необходимо создать в каталоге %systemroot%\system32 два файла — oemINFo.ini и Oemlogo.bmp. Второй файл просто является картинкой, которая будет добавлена на вкладку Общие, а пример содержимого файла oemINFo.ini рассмотрим в листинге 17.1.
[Support Information]
Line1 = "На правах рекламы:"
Line2="Здесь могла бы быть ваша реклама…"
Line3 = "…а здесь ваша :-)"
[General]
Manufacturer = "Parad0x-DeS1gn"
Model = "смесь Pentium и Celeron"
Назначение ключевых слов данного INI-файла легко понять на примере того, что он делает. Посмотрим на рис. 17.1.
Рис. 17.1. Результат применения файлов oemINFo.ini и Oemlogo.bmp
Рисунок, отображаемый слева внизу, является файлом oemlogo.bmp, тогда как кнопка Сведения о поддержке создается при помощи блока [Support Information] файла oemINFo.ini, а текст перед названием процессора — при помощи блока [General] файла oemINFo.ini.
Файл desktop.ini
Еще один интересный специальный файл, с помощью которого можно выполнить настройку оболочки Windows XP. Например, с его помощью можно изменить значок для папки, в которой он будет находиться, создать для нее описание и сделать многое другое. Для примера попробуем изменить изображение для отдельной папки и создать для нее описание. Для этого необходимо сделать следующее.
Читать дальшеИнтервал:
Закладка: