VBScript. Что это ?
Visual Basic Scripting Edition (обычно просто VBScript) — скриптовый язык программирования, интерпретируемый компонентом Windows Script Host. Он широко используется при создании скриптов в операционных системах семейства Microsoft Windows.
VBScript был создан компанией Microsoft как замена устаревшему пакетному языку, интерпретируемому приложением command.com.
Область применения
Скрипты на языке VBScript чаще всего используются в следующих областях, использующих продукцию Microsoft:
- автоматизация администрирования систем Windows;
- серверный программный код в страницах ASP;
- клиентские скрипты в браузере Internet Explorer.
Такой тип сценариев обычно используется для:
- создания сложных сценариев;
- использования объектов из других приложений и библиотек;
- скрытия окон в ходе выполнения сценария;
- шифрования логики сценария.
В основном VBS-сценарии применяются для обработки данных, управления системой, работы с учетными записями пользователей и компьютеров, взаимодействия с офисными приложениями, работы с базами данными и прочих сложных задач.
VBS-сценарий — это обычный текстовый файл с расширением *.vbs, который легко править в блокноте, а запускать на исполнение — двойным щелчком мыши или вызовом по имени в консоли.
Сценарии не компилируются, а интерпретируются. То есть для обработки скрипта в системе должен присутствовать интерпретатор языка VBS, и таких интерпретаторов в Windows два: оконный WScript и консольный CScript, оба интерпретатора это Windows Script Host (WSH).
Правила языка
В Visual Basic работают следующие правила:
- длина строки не ограничена;
- регистр символов не учитывается;
- количество пробелов между параметрами не учитывается;
- строку команды можно разрывать, а на месте разрыва нужно вставлять символ " _ ";
- максимальная длина имени переменной 255 символов;
- комментарии обозначаются символом " ' ".
Переменные
По умолчанию переменные в сценариях объявляются автоматически при первом использовании в теле скрипта, если это не запрещено директивой Option Explicit. Если же в начале сценария объявить директиву Option Explicit, то все переменные нужно определять заранее с помощью следующих конструкций:
Dim ValueName1 ' переменная, доступная всем подпрограммам; Public ValueName2 ' переменная, доступная всем подпрограммам; Private ValueName3 ' переменная, доступная только текущей программе и ее подпрограммам;
Константы объявляются в начале сценария с помощью конструкции:
Const ConstName1 = Value1 ' константа, доступная всем подпрограммам; Public Const ConstName2 = Value2 ' константа, доступная всем подпрограммам; Private Const ConstName3 = Value3 ' константа, доступная только текущей программе ' и ее подпрограммам.
Тип переменной присваивается автоматически после внесения в неё первого значения. В Visual Basic существуют следующие типы данных:
- empty - неинициализированная переменная;
- null - пустая переменная;
- boolean - логический тип, возможные значения: False, True или 0, 1;
- byte - 8-битное целое число без знака, возможные значения: 0 .. 255;
- integer - 16-битное целое число, возможные значения: -32768 .. 32767;
- long - 32-битное целое число, возможные значения: -2147483648 .. 2147483647;
- currency - денежный тип, возможные значения: -922337203685477,5808 до 922337203685477,5807;
- single - число с плавающей точкой, возможные значения: -3.402823e38 .. -1.401298e-45 для отрицательных чисел и 1.401298e-45 .. 3.402823e38 для положительных чисел;
- double - число с плавающей точкой, возможные значения: -1.79769313486232e308 .. -4.94065645841247e-324 для отрицательных чисел и 4.94065645841247e-324 .. 1.79769313486232e308 для положительных чисел;
- date - дата, возможные значения: 01.01.1900 и 31.01.9999;
- string - строковая переменная, вместимость до 2 миллиардов символов;
- object - указатель на объект;
- error - код ошибки.
В VBS-сценариях возможно использование массивов переменных, которые позволяют хранить списки, таблицы и даже более сложные конструкции. Одномерные массивы (списки) могут быть динамическими, то есть они позволяют изменять свою размерность в ходе работы сценария. Все массивы объявляются командой Dim:
Dim ArrayName(Dimension)
Объекты, их методы и свойства
VBS-сценарии, как и их родитель - язык Visual Basic, является объектно-ориентированным языком программирования, то есть основной концепцией является понятие объектов и классов
Класс — это тип, описывающий устройство объектов. Объект подразумевает под собой нечто, что обладает определённым поведением и способом представления, объект — это экземпляр класса. Класс можно сравнить с чертежом, согласно которому создаются объекты. Обычно классы разрабатывают таким образом, чтобы их объекты соответствовали объектам предметной области.
Все объекты, с которыми работает Windows Script Host, имеют методы и свойства. Чтобы обратиться к методу, необходимо указать объект, а через точку - метод с необходимыми параметрами.
Аналогичная ситуация со свойствами, но свойства можно как назначать, так и считывать в переменные и другие свойства, правда, следует учитывать тип данных переменных и свойств, иначе сценарий выдаст ошибку несовместимости типов данных.
Пример
Вот пример небольшой программы на языке VBScript, которая выводит диалоговое окно с сообщением (символы после знака апострофа являются комментариями):
' Объявление переменной: Dim strMessage ' Присваивание переменной значения: strMessage = "Википедия — свободная энциклопедия" ' Вывод окна с сообщением: MsgBox strMessage
По эффекту работы она аналогична прямой инструкции
MsgBox "Википедия — свободная энциклопедия"
Ссылки
- VBScript (англ.) — руководство по VBScript от Майкрософт.
- Шутки и розыгрыши, написанные на языке VBS» (рус.). Архивировано из первоисточника 25 августа 2011.
- The Script Center Script Repository (англ.) — коллекция скриптов на VBScript от Майкрософт.
- Форум по Visual Basic и VBS — русскоязычный форум посвящённый программированию на Visual Basic 6.0 и VBA, .Net, VBS, ASP.Net.
- Visual Basic FAQ - База готовых кодов на Visual Basic. Часто задаваемые вопросы.
=======================
Внимание: Авторы проекта предупреждают, что данные статьи даны исключительно в ознакомительных целях, а также в целях предотвращения подобных атак! Многие из описанных здесь действий ПРОТИВОЗАКОННЫ. Если кто-то всё же решит использовать данные статьи в противозаконных целях, авторы снимают с себя всякую ответственность!
-
7Skype вирус Дата 11 мая, 2011 от MeW
-
8Новая глава в книге про бат Дата 12 мая, 2011 от MeW
-
9Магазиньчик открыт Дата 26 мая, 2011 от MeW
-
4Счетчики пользователей. Дата 25 апреля, 2011 от MeW
-
5Форум приведен в нормальный вид. Дата 25 апреля, 2011 от MeW
-
6Законодательство Дата 30 апреля, 2011 от MeW
-
3Безопасность. Дата 25 апреля, 2011 от MeW
-
2Новичкам. Дата 25 апреля, 2011 от MeW
-
1Пишеться книга на сайте про бат вирусы. Дата 25 апреля, 2011 от MeW
-
На добовление ВАС в список проверенных пользователей пишите на форуме. Или в асю указанную в контактах.
РЕГИСТРАЦИЯ НА САЙТЕ -
Хакер - не приступник. Взлом - как исскуство. Смысл - в свободе.
Девиз хакеров ) -
Безопасность превыше всего. Не попадайтесь ;)
MeW, Admin
Комментариев нет