Windows Script Host для Windows 2000/XP
Шрифт:
/* Язык: JScript */
/* Описание: Добавление строки в текстовый файл */
/*******************************************************************/
//Объявляем переменные и инициализируем константы
var FSO,f,ForAppending = 8;
//Создаем объект FileSystemObject
FSO = WScript.CreateObject("Scripting.FileSystemObject");
//Открываем файл
f = FSO.OpenTextFile("C:\\TestFile.txt", ForAppending, true);
//Добавление в файл строку
f.WriteLine("Привет!");
//Закрываем файл
f.Close;
/************* Конец *********************************************/
Замечание
Мнемонические константы, используемые в качестве параметров iomode и create, можно не определять явным образом в сценарии, как это сделано в вышеприведенном примере, а брать из самого объекта
FileSystemObject
(точнее говоря, из библиотеки типов этого объекта). Для этого в сценариях нужно применять разметку XML (см. листинг 3.9). Объект Drive
С помощью объекта
Drive
можно получить доступ к свойствам заданного локального или сетевого диска. Создается объект Drive
с помощью метода GetDrive
объекта FileSystemObject
следующим образом: var FSO, D;
FSO = WScript.CreateObject("Scripting.FileSystemObject");
D = FSO.GetDrive("C:");
Также объекты
Drive
могут быть получены как элементы коллекции Drives
. Свойства объекта
Drive
представлены в табл. 5.7; методов у этого объекта нет. Таблица 5.7. Свойства объекта Drive
| Свойство | Описание |
|---|---|
AvailableSpace | Содержит количество доступного для пользователя места (в байтах) на диске |
DriveLetter | Содержит букву, ассоциированную с локальным устройством или сетевым ресурсом. Это свойство доступно только для чтения |
DriveType | Содержит числовое значение, определяющее тип устройства: 0 — неизвестное устройство; 1 — устройство со сменным носителем; 2 — жесткий диск; 3 — сетевой диск; 4 — CD-ROM; 5 — RAM-диск |
FileSystem | Содержит тип файловой системы, использующейся на диске (FAT, NTFS или CDFS) |
FreeSpace | Содержит количество свободного места (в байтах) на локальном диске или сетевом ресурсе. Доступно только для чтения |
IsReady | Содержит true , если устройство готово, и false в противном случае. Для устройств со сменными носителями и приводов CD-ROM IsReady возвращает true только в том случае, когда в дисковод вставлен соответствующий носитель и устройство готово предоставить доступ к этому носителю |
Path | Содержит путь к диску (например, " С: ", но не "С:\ ") |
RootFolder | Содержит объект Folder , соответствующий корневому каталогу на диске. Доступно только для чтения |
SerialNumber | Содержат десятичный серийный номер тома заданного диска |
ShareName | Содержит сетевое имя для диска. Если объект не является сетевым диском, то в свойстве ShareName содержится пустая строка ("") |
TotalSize | Содержит общий объем в байтах локального диска или сетевого ресурса |
VolumeName | Содержит метку тома для диска. Доступно для чтения и записи |
В листинге 5.7 приведен сценарий DriveInfo.js, в котором объект
Drive
используется для доступа к некоторым свойствам диска С: (рис. 5.3). Рис. 5.3. Свойства диска С:
Листинг 5.7. Получение свойств диска С
/*******************************************************************/
/* Имя: DriveInfo.js */
/* Язык: JScript */
/* Описание: Вывод на экран свойств диска C: */
/*******************************************************************/
//Объявляем переменные
var FSO,D,TotalSize,FreeSpace,s;
//Создаем объект FileSystemObject
FSO = WScript.CreateObject("Scripting.FileSystemObject");
//Создаем объект Drive для диска C:
D = FSO.GetDrive("C:");
s="Информация о диске C:\n";
//Получаем серийный номер диска
s+="Серийный номер: "+D.SerialNumber+"\n";
//Получаем метку тома диска
s+="Метка тома: "+D.VolumeName+"\n";
//Вычисляем общий объем диска в килобайтах
TotalSize=D.TotalSize/1024;
s+="Объем: "+TotalSize+" Kb\n";
//Вычисляем объем свободного пространства диска в килобайтах
FreeSpace=D.FreeSpace/1024;
s+="Свободно: "+FreeSpace+" Kb\n";
//Выводим свойства диска на экран
WScript.Echo(s);
/************* Конец *********************************************/
Коллекция Drives
Доступная только для чтения коллекция
Drives
содержит объекты Drive
для всех доступных дисков компьютера, в том числе для сетевых дисков и дисководов со сменными носителями. В свойстве
Count
коллекции Drives
хранится число ее элементов, т.е. число доступных дисков. С помощью метода
Item(drivespec)
можно получить доступ к объекту Drive
для диска, заданного параметром drivespec
. Например: var FSO, DriveCol, D; //Создаем объект FileSystemObject
FSO = WScript.CreateObject("Scripting.FileSystemObject");
//Создаем коллекцию имеющихся в системе дисков
DriveCol = FSO.Drives;
// Извлечение элемента коллекции (диск С:)
D = DriveCol.Item("С:");
//Вывод на экран метки тома диска С:
WScript.Echo("Диск С: имеет метку", D.VolumeName);
Для перебора всех элементов коллекции
Drives
нужно, как обычно, использовать объект Enumerator
. В листинге 5.8 приведен файл ListDrives.js, в котором с помощью объекта
Enumerator
на экран выводятся сведения обо всех доступных дисках (рис. 5.4).
Поделиться:
Популярные книги
Шайтан Иван 4
4. Шайтан Иван
Фантастика:
попаданцы
альтернативная история
8.00
рейтинг книги
Барон отрицает правила
13. Закон сильного
Фантастика:
аниме
фэнтези
фантастика: прочее
попаданцы
5.00
рейтинг книги
Александр Агренев. Трилогия
Александр Агренев
Фантастика:
альтернативная история
9.17
рейтинг книги
Ермак. Регент
10. Ермак
Фантастика:
попаданцы
альтернативная история
5.00
рейтинг книги
Черный дембель. Часть 2
2. Черный дембель
Фантастика:
попаданцы
альтернативная история
4.25
рейтинг книги
Кодекс Охотника. Книга XXXVI
36. Кодекс Охотника
Фантастика:
аниме
фэнтези
попаданцы
5.00
рейтинг книги
Герой
4. Варяг
Фантастика:
альтернативная история
9.10
рейтинг книги
Двойник короля 14
14. Двойник Короля
Фантастика:
аниме
фэнтези
попаданцы
5.00
рейтинг книги
Ларь
10. Бедовый
Фантастика:
городское фэнтези
мистика
5.75
рейтинг книги
Черный маг императора 2
2. Черный маг императора
Фантастика:
юмористическая фантастика
попаданцы
аниме
6.00
рейтинг книги
Барон запрещает правила
9. Закон сильного
Фантастика:
аниме
фэнтези
попаданцы
5.00
рейтинг книги
Последний наследник
11. Десять Принцев Российской Империи
Фантастика:
городское фэнтези
попаданцы
аниме
5.00
рейтинг книги
Маяк надежды
5. Артефактор
Фантастика:
городское фэнтези
попаданцы
аниме
5.00
рейтинг книги
Газлайтер. Том 26
26. История Телепата
Фантастика:
боевая фантастика
попаданцы
аниме
5.00