Чтение онлайн

на главную - закладки

Жанры

Windows Script Host для Windows 2000/XP

Попов Андрей Викторович

Шрифт:

Рис. 4.29. Диалоговое окно для создания нового правила для пути

После ввода такого дополнительного правила SRP на машине нельзя будет запускать сценарии с расширением vbs. При попытке выполнения VBScript- сценария будет выведено диалоговое окно с информацией о невозможности его запуска (рис. 4.30).

Также в разделе Дополнительные правила (Additional rules) имеется возможность создать правило для хеша (хеш — Это серия байтов фиксированной длины, которая рассчитывается по специальному алгоритму и однозначно идентифицирует содержимое файла). С помощью этого правила можно запретить выполнение файла, имеющего заданный хеш. Однако для сценариев, в отличие от компилированных исполняемых модулей, это не является подходящим ограничением, т.к. хеш файла со сценарием можно изменить простым

добавлением пустой строки в текст сценария.

Рис. 4.30. Блокировка сценариев WSH с помощью дополнительных правил SRP 

Блокировка сценариев с заданной подписью

Еще одним возможным ограничением является запрет на выполнение файлов, подписанных с помощью определенного цифрового сертификата ("Попов ненадежный", например).

Рис. 4.31. Диалоговое окно для создания нового правила для сертификата

Для этого нужно в разделе Дополнительные правила (Additional rules) создать новое правило для сертификата (Certificate Rule) (пункт Создать правило для сертификата (New Certificate Rule) в меню Действие (Action)). В диалоговом окне Создание правила для сертификата (New Certificate Rule) в качестве имени субъекта сертификата (Certificate subject name) укажем с помощью кнопки Обзор (Browse) файл C:\Script\Попов.cer (процесс создания этого файла описан в разд. "Управление сертификатами с помощью ММС"), а в раскрывающемся списке Уровень безопасности (Security level) выберем значение "Не разрешено" ("Disallowed") — рис. 4.31.

После ввода этого дополнительного правила SRP на машине нельзя будет запускать никакие исполняемые файлы (сценарии WSH в том числе), которые подписаны с использованием сертификата "Попов ненадежный".

Глава 5

Доступ из сценариев к файловой системе

Сценарии WSH позволяют получить полный доступ к файловой системе компьютера, в отличие от JScript- или VBScript-сценариев, внедренных в HTML-страницы, где в зависимости от уровня безопасности, который устанавливается в настройках браузера, те или иные операции могут быть запрещены.

Выполнение основных операций с файловой системой

Для работы с файловой системой из сценариев WSH предназначены восемь объектов, главным из которых является

FileSystemObject
. С помощью методов объекта
FileSystemObject
можно выполнять следующие основные действия:

копировать или перемещать файлы и каталоги;

удалять файлы и каталоги;

создавать каталоги;

создавать или открывать текстовые файлы;

создавать объекты

Drive
,
Folder
и
File
для доступа к конкретному диску, каталогу или файлу соответственно.

С помощью свойств объектов

Drive
,
Folder
и
File
можно получить детальную информацию о тех элементах файловой системы, с которыми они ассоциированы. Объекты
Folder
и
File
также предоставляют методы для манипулирования файлами и каталогами (создание, удаление, копирование, перемещение); эти методы в основном копируют соответствующие методы объекта
FileSystemObject
.

Кроме этого, имеются три объекта-коллекции:

Drives
,
Folders
и
Files
. Коллекция
Drives
содержит объекты
Drive
для всех имеющихся в системе дисков,
Folders
— объекты
Folder
для всех подкаталогов заданного каталога,
Files
— объекты
File
для всех файлов, находящихся внутри определенного каталога.

Наконец, из сценария можно читать информацию из текстовых файлов и записывать в них данные. Методы для этого предоставляет объект

TextStream
.

В табл. 5.1 кратко описано, какие именно объекты, свойства и методы могут понадобиться для выполнения наиболее часто используемых файловых операций.

Таблица 5.1. Выполнение основных файловых операций

Операция Используемые объекты, свойства и методы
Получение сведений об определенном диске (тип файловой системы, метка тома, общий объем и количество свободного места и т.д.) Свойства объекта
Drive
. Сам объект
Drive
создается с помощью метода
GetDrive
объекта
FileSystemObject
Получение сведений о заданном каталоге или файле (дата создания или последнего доступа, размер, атрибуты и т.д.) Свойства объектов
Folder
и
File
. Сами эти объекты создаются с помощью методов
GetFolder
и
GetFile
объекта
FileSystemObject
Проверка существования определенного диска, каталога или файла Методы
DriveExists
,
FolderExists
и
FileExists
объекта
FileSystemObject
Копирование файлов и каталогов Методы
CopyFile
и
CopyFolder
объекта
FileSystemObject
, а также методы
File.Сору
и
Folder.Сору
Перемещение файлов и каталогов Методы
MoveFile
и
MoveFolder
объекта
FileSystemObject
или методы
File.Move
и
Folder.Move
Удаление файлов и каталогов Методы
DeleteFile
и
DeleteFolder
объекта
FileSystemObject
или методы
File.Delete
и
Folder.Delete
Создание каталога Методы
FileSystemObject.CreateFolder
или
Folders.Add
Создание текстового файла Методы
FileSystemObject.CreateTextFile
или
Folder.CreateTextFile
Получение списка всех доступных дисков Коллекция
Drives
, содержащаяся в свойстве
FileSystemObject.Drives
Получение списка всех подкаталогов заданного каталога Коллекция
Folders
, содержащаяся в свойстве
Folder.SubFolders
Получение списка всех файлов заданного каталога Коллекция
Files
, содержащаяся в свойстве
Folder.Files
Открытие текстового файла для чтения, записи или добавления Методы
FileSystemObject.CreateTextFile
или
File.OpenAsTextStream
Чтение информации из заданного текстового файла или запись ее в него Методы объекта
TextStream

Перейдем теперь к подробному рассмотрению объектов, используемых при работе с файловой системой.

Объект FileSystemObject

Объект

FileSystemObject
является основным объектом, обеспечивающим доступ к файловой системе компьютера; его методы используются для создания остальных объектов (
Drives
,
Drive
,
Folders
,
Folder
,
Files
,
File
и
TextStream
).

Для создания внутри сценария экземпляра объекта

FileSystemObject
можно воспользоваться методом
CreateObject
объекта
WScript
:

var FSO = WScript.CreateObject("Scripting.FileSystemObject");

Также можно использовать объект

ActiveXObject
языка JScript (с помощью этого объекта можно работать с файловой системой из сценариев, находящихся внутри HTML-страниц):

var FSO = new ActiveXObject("Scripting.FileSystemObject");

Объект

FileSystemObject
имеет единственное свойство
Drives
, в котором хранится коллекция, содержащая объекты
Drive
для всех доступных дисков компьютера. Примеры, иллюстрирующие использование свойства
Drives
приведены ниже в разд. "Коллекция Drives".

Методы объекта

FileSystemObject
представлены в табл. 5.2.

Таблица 5.2. Методы объекта FileSystemObject

Поделиться:
Популярные книги

Первый среди равных. Книга IX

Бор Жорж
9. Первый среди Равных
Фантастика:
попаданцы
аниме
фэнтези
5.00
рейтинг книги
Первый среди равных. Книга IX

Два брата

Волков Александр Мелентьевич
5.00
рейтинг книги
Два брата

Газлайтер. Том 18

Володин Григорий Григорьевич
18. История Телепата
Фантастика:
попаданцы
аниме
фэнтези
6.80
рейтинг книги
Газлайтер. Том 18

Год 1942 — «учебный»

Бешанов Владимир Васильевич
Документальная литература:
биографии и мемуары
6.20
рейтинг книги
Год 1942 — «учебный»

Илион

Симмонс Дэн
1. Троя
Фантастика:
эпическая фантастика
научная фантастика
7.75
рейтинг книги
Илион

Великий князь

Кулаков Алексей Иванович
2. Рюрикова кровь
Фантастика:
альтернативная история
8.47
рейтинг книги
Великий князь

Комарра. Вселенная Майлза. Роман, повесть, эссе

Буджолд Лоис Макмастер
Фантастика:
научная фантастика
5.00
рейтинг книги
Комарра. Вселенная Майлза. Роман, повесть, эссе

Телзи Амбердон

Шмиц Джеймс Генри
The Federation Of The Hub
Фантастика:
научная фантастика
5.00
рейтинг книги
Телзи Амбердон

Письма

Пелусиот Исидор
Религия и эзотерика:
религия
5.00
рейтинг книги
Письма

Арбан Саеш. Трилогия

Малицкий Сергей Вацлавович
50. В одном томе
Фантастика:
фэнтези
8.17
рейтинг книги
Арбан Саеш. Трилогия

Игрушка

Лобанов Владимир Алексеевич
5.00
рейтинг книги
Игрушка

Триптих. Одиночество в Сети

Вишневский Януш Леон
Проза:
современная проза
8.46
рейтинг книги
Триптих. Одиночество в Сети

Башня на краю света

Сэборг Финн
Проза:
проза прочее
5.00
рейтинг книги
Башня на краю света

Принц

Райз Тиффани
3. Грешники
5.00
рейтинг книги
Принц