Разное

Комментарии vbs: VBScript: синтаксис vbs сценариев | scriptcoding.ru

Содержание

VBScript: синтаксис vbs сценариев | scriptcoding.ru






В этом начальном уроке, мы изучим синтаксис vbscript языка. Синтаксис языка vbscript является таким же как и в языке Visual Basic и фактически, является подмножеством данного языка программирования. Основной упор в использовании vbscript – это возможность написания сценариев (расширение vbs) с открытым кодом для платформы Windows. Пользователю не нужно прибегать к установке дополнительного программного обеспечения, так как все сценарии выполняются под управлением сервера сценариев Windows Script Host.

И так, давайте рассмотрим базовый синтаксис vbscipt и его возможности.

  • Комментарии – для комментирования строк кода можно использовать ключевое слово REM, или одинарную кавычку (‘).
  • Строки кода – что бы произвести перенос одной строки на несколько, используется символ подчёркивания.
  • Переменные – для объявления переменных используется ключевое слово Dim. Более детально, работу с ними я рассмотрел в статье «Урок 2 по VBScript: Переменные»

Можно прописать несколько операторов в одну строчку, для этого используется знак двоеточия (:). Сам язык нечувствителен к регистру символов.

Хорошо, давайте рассмотрим синтаксис языка vbscript на таком примере:

'****************************************
REM Общий синтаксис vbscript
REM primer_1.vbs
'****************************************

dim a, b, c
 
a = "строка"
b = 100
c = 22.5
 
MsgBox a:MsgBox b:MsgBox c






Видим, что тут, мы вначале прописали комментарии, далее объявили три переменные. Как видим, язык vbscript не требует назначения типа данных (более детально, работу с типами данных я рассмотрел в статье – «Урок 3 по VBScript: Типы данных»). В конце, для вывода данных мы использовали функцию MsgBox, в данном случае она прописана в упрощенном варианте. Давайте рассмотрим ее полный синтаксис:

MsgBox(prompt[, buttons] [, title ][, helpfile, context ] ) – видим, что тут, функции передаются пять параметров, последние два мы рассматривать не будет, так как они не являются актуальными и практически не применяются.

  • prompt – собственно, сообщение, которое надо вывести
  • buttons – позволяет задать дополнительные кнопки, их значения указываются через константы
  • title – заголовок окна

Работу с данной функцией я более детально рассмотрел в статье «Создание диалоговых окон».

Язык vbscript предоставляют также функции для работы со строками и датой, а также, ряд математических функций.

Конечно, синтаксис vbscript позволяет пользователю создавать собственные процедуры и функции. Для определения процедуры, т. е. подпрограммы, которая не возвращает никакого значения, в VBScript используется конструкция Sub … End Sub. После ключевого слова Sub идёт имя процедуры, а в круглых скобках указывается список её пара­метров, например:

Sub MyProcedure(Param1, Param2)
Строки кода
End Sub

Если процедура не имеет параметров, то в скобках после имени ничего ука­зывать не нужно:

Sub MyProcedure()

End Sub

Вызывать процедуру из сценария можно двумя способами. Во-первых, мож­но просто написать имя и указать через пробел список передаваемых параметров, например: MyProcedure 3,10. Во-вторых, можно использовать специальный оператор Call, при этом спи­сок параметров обязательно должен быть заключен в круглые скобки: Call MyProcedure(3,10).

Скачать архив с примерами

Для определения функции, т. е. подпрограммы, которая возвращает опреде­ленное значение, применяется конструкция Function … End Function. Как и при описании процедур, после названия функции в круглых скобках указывается список её параметров, например:

Function MyFunction(Param1, Param2) … End Function

Для того чтобы возвратить из функции какое-либо значение, нужно внутри неё присвоить это значение переменной, название которой совпадает с именем функции:

Function MyFunction(Param1, Param2)
Dim Sum
Sum = Paraml+Param2
MyFunction = Sum
End Function

Если возвращаемое функцией значение не нужно присваивать никакой пе­ременной, то функция вызывается так же, как и процедура — пишется имя этой функции и через пробел указывается список ее аргументов: MyFunction 3,5

Если же необходимо записать значение в какую-либо переменную, то аргументы функции заключаются в круглые скобки.

Вот простой пример синтаксиса vbscript для использования собственных процедур и функций:

'****************************************
REM Общий синтаксис vbscript
REM primer_2.vbs
'****************************************

dim a, b, c
' пользовательская функция
Function my_fun(a, b)
     Dim Summ
     Summ = a+b
     my_fun = Summ
End Function
 
' пользовательская процедура
Sub my_sub(a, b)
     Dim Summ
     Summ = a+b
     MsgBox Summ
End Sub
 
MsgBox my_fun(5,10)
Call my_sub(100,200)

Помимо процедур и функций, можно создавать собственные массивы (Урок 9 по VBScript: Массивы) и классы (Урок 8 по VBScript: Объекты и классы)

Ну что же, вдобавок, хотелось бы упомянуть две очень полезные функции:

  • Hex(number ) – функция позволяет получить 16-ричное значение для числа number
  • Oct(number) — функция позволяет получить 8-ричное значение для числа number

Смотрим на третий пример:

'****************************************
REM Общий синтаксис vbscript
REM primer_3.vbs
'****************************************
dim my_var
 
my_var = 200
 
MsgBox Hex(my_var):MsgBox Oct(my_var)








Урок VBScript №1: Знакомство с языком VBScript

Приветствую тебя, читатель моего блога. Я начинаю свою серию уроков по программированию VBScript этой ознакомительной статьёй. Вам предстоит узнать основы основ данного языка программирования.

VBScript — Это скриптовый язык программирования. Как и любой другой скриптовый язык VBScript урезан в своих возможностях. Но то, что он урезан ещё не говорит что он не интересен.

Вступление

В этом уроке мы узнаем:

  • Основные особенности VBScript.
  • Что такое переменные и с чем их едят.
  • Простейшая функция MsgBox.

Язык VBScript на мой взгляд простой и понятный даже для ничего незнающего школьника. Сценарии VBScript можно создавать в простом блокноте, что облегчает нам с вами задачу, так как не надо скачивать каких либо дополнительных программ. Однако я рекомендую скачать бесплатную программу Notepad++. Он очень удобен тем, что подсвечивает сам код и показывает номера строк, что очень пригодится при возникновении ошибки.

Так же надо знать ещё две вещи о VBScript:

  • Расширение файла *.vbs
  • В коде не учитывается регистр (большие или маленькие буквы)

Приступим…

Создаём текстовый документ и сохраняем его с расширением *.vbs (Тип файла: все файлы. К названию файла подставить .vbs). Дальше открываем получившийся файл при помощи блокнота или любой другой программы для работы с текстом, например Notepad++. Вставляем код ниже, сохраняем и запускаем двойным щелчком мыши:

'Урок VBScript №1
Rem Знакомство с языком VBScript
'file_1.vbs
 
Dim a, b, c, d
 
a = 10
b = 20
c = 40
d = "пробная строка"
 
MsgBox a
MsgBox b
MsgBox c
MsgBox d

Теперь разберём эту «головоломку» по частям.

Первые три строки — это комментарии. Они не как не влияют на работу сценария. Что бы оставлять комментарии используется ключевое слово «Rem» или единичная клавиша . Комментарии можно оставлять в любом месте кода, но надо учитывать, что после объявления комментария всё содержимое строки, которое идёт дальше, учитываться не будет.

На пятой строке перечислены все переменные, которые мы с вами будем использовать (a, b, c, d). Они бывают явными и не явными, но об это я расскажу попозже. Переменные объявляются ключевым словом «Dim».

С седьмой по десятую строку мы назначаем значение переменных. В данном случае это три числа и строка (10, 20, 40, «пробная срока»). Прошу обратить внимание, что все строки заключаются в ковычки.

На двенадцатой строке мы выводим значение всех переменных при помощи функции MsgBox. В данном примере у нас вылезет окошко с числом 10, а после нажатия кнопки «ОК» вылезет окошко с числом 20 и т.д. .

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

'Урок VBScript №1
Rem Знакомство с языком VBScript
'file_2.vbs
 
Option Explicit
 
Dim a, b, c, d
 
a = 10
b = 20
c = 40
d = "пробная строка"
f = 25
 
MsgBox a:MsgBox b:MsgBox c:MsgBox d

Итак, что мы видим? Наши три строки с функцией MsgBox превратились в одну. В данном случае язык VBScript позволяет прописать несколько операторов в одну строку используя двоеточие.

Теперь что касается не явных переменных. Такими являются все переменные которые не были назначены после ключевого слова «Dim». В данном случае таковой является переменная «f» на тринадцатой строке. Такие переменные не нарушают работу сценария, но если его код очень большой, то Вы можете попросту запутаться в своих переменных.

Для того что бы ни допустить этого, нам на помощь приходит оператор «Option Explicit» с пятой строки. Если данный оператор поставлен в вашем сценарии, то из-за не объявленных переменных будет выдавать ошибку, пока эту переменную не объявят после ключевого слова «Dim».

Так же я рекомендую писать значение всех переменных по возможности в одном месте и как можно выше к ключевому слову «Dim». Впрочем, я сам любитель пренебречь этим правилом =).

Вроде всё хорошо, но хочется чего то большего. Давайте выведем значение переменных одним окошком!

'Урок VBScript №1
Rem Знакомство с языком VBScript
'file_3.vbs
 
Option Explicit
 
Dim a, b, c, d, f
 
a = 10
b = 20
c = 40
d = "пробная строка"
f = 25
 
MsgBox a & b & c & d & f
MsgBox a & vbTab & b & vbTab & c & vbTab & d & vbTab & f
MsgBox a & vbCrLf & b & vbCrLf & c & vbCrLf & d & vbCrLf & f

В данном примере у нас уже не выдаст ошибку, так как мы объявили переменную «f» после ключевого слова «Dim».

Теперь давайте рассмотрим три примера вывода значений переменных функцией MsgBox.

На пятнадцатой строке приведён пример где мы объединяем значение переменных при помощи знака «&». Значение переменных выведется одной строкой без пробелов. Думаю нам так не пойдёт, но это может пригодиться.

На шестнадцатой строке  показан пример где значения переменных будут выведены одной строкой и разделены Tab’ом при помощи константы «vbTab» и всё того же связующего знака «&».

На семнадцатой строке мы видим вывод значения каждой переменной с новой строки. В этом нам помогает константа «vbCrLf».

Эти три строки так же можно объединить в одну при помощи двоеточия. Подробнее о функции MsgBox и других видах диалоговых окон я расскажу в одном из следующих уроков.

Надеюсь эта статья помогла снять завесу тайны с языка VBScript и вы заинтересовались этим чудесным языком программирования. Ждите новых уроков в которых Вы узнаете ещё много нового и интересного. Удачи! =)

VBScript процедуры и функции

Как и в большинстве языков программирования, в VBScript можно использовать процедуры и функции, которые позволят разделить код на логически отдельные подпрограммы и вызывать их, если нужно несколько раз.

Процедуры в VBScript

Написание процедуры начинается с ключевого слова Sub затем идет наименование процедуры, перечисление параметров в скобках. Затем идет программный код и заканчивается код ключевыми словами End Sub которые обозначают конец процедуры.

Пример процедуры без параметров:


Sub Test()
' какой-то код
End Sub

Пример процедуры с параметрами:


Sub Test (Param1, Param2, Param3)
' какой-то код
End Sub

Параметры в процедуре перечисляются без указания их типа.

Вызов процедуры осуществляется одним из 2-х способов:

  • Call <имя_процедуры> (Param1, Param2, Param3)
  • <имя_процедуры> Param1, Param2, Param3

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

Передавать параметры в процедуру можно по ссылке и по значению, для чего перед именем параметра пишем:

  • ByRef — передача параметра по ссылке (при изменении параметра внутри процедуры, исходная переменная, которая передавалась, так же будет изменена)
  • ByVal — передача параметра по значению (создается копия значения и изменение параметра внутри процедуры не изменяет исходную переменную, которая передавалась в процедуру)

Таким образом, если нужно в подпрограмме получить и вернуть в основную программу несколько значений, можно использовать передачу параметров по ссылке.

Пример возвращения нескольких значений из процедуры:


a = 1
b = 1

Test a, b

MsgBox a ' Выведет 2
MsgBox b ' Выведет 2

Sub Test (ByRef c, ByRef d)
c = 2
d = 2
End Sub

Функции в VBScript

Написание функции начинается с ключевого слова Function, затем название функции, перечисление передаваемых в нее параметров, код самой функции и заканчивается ключевыми словами End Function обозначающими конец функции.

Для того чтобы функция вернула значения, последней строкой нужно написать название функции и присвоить ей возвращаемое значение, в противном случае, функция вернет пустой результат.

Пример функции возвращающей значение:


MsgBox Test(1, 2) ' Выведет 3

Function Test (a, b)
  Test = a + b
End Function

Функцию можно использовать как процедуру, при этом параметры в нее можно передавать по тем же правилам, что и для процедуры и точно так же можно использовать ByVal и ByRef для передачи параметров по значению и по ссылке.

Пример использования функции как процедуры:


Test 1, 2

Function Test (ByVal a, ByVal b)
  c = a + b
  MsgBox c  ' Выведет 3
End Function

Если возможностей процедур и функций не достаточно, можно на VBScript написать классы, о которых рассказано в следующей статье. Если есть замечания/предложения по статье, пишем в комментариях.

VBScript (vbs скрипты) программирование. Готовые примеры, уроки, вирусы

Mail.Ru Group & Fotki.Yandex.Ru Parser — Это сборник из трёх программ позволяющих собирать (парсить) E-Mail адреса участников «Групп Мой Мир» и «Яндекс Фотки». Теперь создавать базы e-mail адресов стало намного легче!     (далее…)

Давненько не радовал просторы интернета своими постами. Надо это дело исправлять.
Сегодня мы поговорим о чудесной программе компилирующей сценарий vbs в exe (исполняемый файл). Звать это чудо – VBSedit.
Данная программа будет просто необходима, если нам потребуется скрыть от людских глаз содержимое нашего сценария VBScript, над которым мы потели несколько суток, либо он малость вредоносный. Да и солидней как то.

(далее…)

Приветствую всех читателей моего блога. В этой статье я размещу исходник своего парсера почты Mail.Ru Групп (Мой Мир) на VBScript и немного объясню его действие. Данный скрипт помогает вам собрать огромные базы существующих E-Mail’ов от Mail.Ru для брута, спама и любых других действий. Вам не придётся действовать наугад или искать паблик базы.

 Материал устарел. мэйл.ру поставили защиту.

 

(далее…)

Объект WScript является главным в Windows Script Host и позволяет подключать остальные его компоненты. Данный объект не нужно создавать или куда то прописывать, он создаётся автоматически, сервером сценариев (CScript.exe или WScript.exe). Благодаря этому объекту мы можем получать информацию о запущенном сценарии и о самом WSH. Так же мы можем устанавливать время работы нашего сценария. Будет интересно.

 

(далее…)

Настало время познакомить вас с объектом RegExp языка VBScript, или, по другому — регулярное выражение. Данный объект VBScript позволяет создавать шаблон из метасимволов, по которому впоследствии выполняются определённые действия: сравнивание текста; заменять или удалять текст, соответствующий шаблону; извлекать текст, соответствующий шаблону. Например, нам надо в строке найти номер телефона типа «+7(***)***-***-**», где * — любая цифра. Так же данный объект позволит нам создать Proxy Parser на VBScript.

(далее…)

Что то я совсем убежал вперёд и не рассказал вам про две функции диалоговых окон: MsgBox и InputBox. В этом очень небольшом уроке я и расскажу про все приблуды к этим двум функциям. Так же существуют и другие способы создания диалоговых окон, но для этого потребуются объекты WSH, о которых будет разговор в следующих уроках.

 

(далее…)

Приветствую читателей своего блога по VBS программированию. Сегодня я расскажу про небольшой объект Dictionary. В использование встречается несправедливо редко. Он является объектом-коллекцией или словарём, как его называют иногда, по переводу названия. Данный объект напоминает массив VBS, но с более расширенными возможностями: задействовать в качестве номера элемента строковое значение, удаление элемента данных в середине коллекции без образования пробела, отсутствие нужды в использование ReDim и так далее. Так же в конце статьи вас ждёт пример-игра от меня.

(далее…)

Наконец настало время заключительного урока по объекту FSO. В этой статье я расскажу про все свойства и методы позволяющие, так или иначе работать с дисками. Одно из свойств может позволить нам выполнять сценарий VBScript только на определённом компьютере (по типу лицензии). Если Вас это заинтересовало, то буду рад поделиться имеющимися у меня знаниями.

 

(далее…)

В данной статье я расскажу про работу с файлами средствами VBS при помощи объекта FSO и File. В принципе все методы и свойства показанные здесь очень схожи с теми, что были в предыдущем уроке про работу с папками. Я бы даже сказал, что объект File — брат близнец объекта Folder. Данный урок будет полезен при создании VBS cтиллера для кражи паролей. Ну что, приступим.

 

(далее…)

В этой статье я расскажу про работу с папками при помощи объекта FSO, а так же объекта Folder. Данные объекты Windows Script Host позволяют нам создавать, удалять, проверять наличие папки, копировать или перемещать папки по шаблону, не используя циклов. Всё это будет подкреплено примерами VBScript.

 

(далее…)

Основы VBS

VBS (Visual Basic Scripting) — язык написания сценариев высокого уровня, по синтаксису похожий на VBA, применяемый для автоматизации администрирования Windows, обработки данных и т.д. Если Вы уже знаете Visual Basic или Visual Basic для приложений (VBA), VBScript будет очень знаком. Основные понятия VBScript являются общими для большинства языков программирования.

Объявление переменных и массивов

В VBS есть глобальные и локальные переменные, доступные только в конкретной области.


Dim     Variable1 ' объявление глобальной переменной
Public  Variable2 ' объявление глобальной переменной
Private Variable3 ' объявление локальной переменной

Использование Public и Private по большей части имеют смысл при использовании классов в VBS, которые будут рассмотрены в следующей статье. В языке VBS так же можно объявить константы:


Const Const1 = Value1

Переменную так же можно вообще не объявлять, а сразу присваивать ей значение, однако, так делать не рекомендуется, т.к. в случае опечатки в названии переменной, можно получить не те результаты, что ожидались. Чтобы компилятор требовал явного объявления всех переменных, нужно использовать оператор Option Explicit

Тип переменной задается при присвоении ей значения, при этом тип может меняться в процессе выполнения программы.

Массивы объявляются с помощью скобок.


Dim Arr1(10) ' Объявление массива с фиксированным размером (11 элементов)
Dim Arr2()   ' Объявление динамического массива
ReDim Preserve Arr2(100)  ' Изменение размера динамического массива

Как и с переменными, тип массива задается при присвоении значения, причем, у разных элементов массива могут быть разные типы.

Очистить массив от данных можно так:


Erase имя_массива

Условия и ветвления

Условия в VBS осуществляется с помощью If Then Else. Пример:


Dim s
If DatePart("w", Now) = vbMonday Then
  s = "Сегодня понедельник"
Else
  s = "Сегодня не понедельник"
End If
MsgBox s

Оператор Select Case поможет при большом количестве сравнений. Пример:


Dim x,s
x = DatePart("w", Now)
Select Case x
Case vbMonday 
  s = "Понедельник"
Case vbTuesday
  s = "Вторник"
Case vbWednesday
  s = "Среда"
Case vbThursday
  s = "Четверг"
Case vbFriday
  s = "Пятница"
Case vbSaturday
  s = "Суббота"
Case Else
  s = "Воскресенье"
End select
MsgBox s

Циклы

В VBS используется два основных вида циклов.

Синтаксис цикла For … Next


For переменная=начало To конец [Step шаг]
  тело цикла 
  [Exit For] 
  тело цикла 
Next

Операторы в квадратных скобках не обязательны. Step — задает шаг изменения переменной цикла, на сколько она увеличивается или уменьшается с каждой итерацией (повтором) цикла. Exit For — позволяет прервать цикл «досрочно», т.е. выйти из цикла, когда необходимо и передать управление оператору, следующему за Next.

Пример цикла For … Next


For i = 1 To 10
  summ = summ + i 
Next

Еще один вариант цикла For Each … Next. Он позволяет перебирать элементы какого-либо списка (массива), в случае, если его размеры не известны. В цикле так же можно использовать Exit For при необходимости.

Пример цикла For Each … Next


Dim Arr(3), el, s
Arr(0) = 1 
Arr(1) = "строка"
Arr(2) = 3
For Each el In Arr
  s = s & elem & vbCrLf
Next  
MsgBox s

Цикл Do .. Loop используется когда необходимо выполнять цикл до тех пор пока условие верно или, наоброт, выйти из цикла если условие стало верно.

Синтаксис цикла с предусловием:


Do [While | Until] условие 
  тело цикла 
  [Exit Do] 
  тело цикла
Loop

Синтаксис цикла с постусловием:


Do 
  тело цикла
  [Exit Do]
  тело цикла
Loop [While | Until] условие

Как и с циклом For оператор Exit Do позволяет «досрочно» выйти из цикла.

Пример


i = 0
Do While i < 3
  MsgBox i
  i=i+1
Loop

Цикл While Wend — альтернативная форма записи цикла Do Loop с предусловием. Цикл выполняется пока условие верно.


While условие 
  тело цикла 
Wend

Заключение

Мы рассмотрели основные операторы языка VBS. Так же стоит упомянуть еще несколько моментов:

  • Операторы можно записывать в одну строку, разделяя их двоеточием :
  • Для записи комментария в начале строку нужно использовать апостроф или оператор REM
  • Файлы VBScript записываются как обычные текстовые файлы в кодировке Windows-1251.

На этом, основы VBS можно считать рассмотренными. 

VBScript — Диалоговые окна — CoderLessons.com

VBScript позволяет разработчикам эффективно взаимодействовать с пользователем. Это может быть окно сообщения для отображения сообщения пользователю или поле ввода, с помощью которого пользователь может вводить значения.

Функция VBScript MsgBox

Функция MsgBox отображает окно сообщения и ждет, когда пользователь нажмет кнопку, а затем действие будет выполнено на основе кнопки, нажатой пользователем.

Синтаксис

MsgBox(prompt[,buttons][,title][,helpfile,context])

Описание параметра

  • Подсказка — Обязательный параметр. Строка, которая отображается в виде сообщения в диалоговом окне. Максимальная длина подсказки составляет около 1024 символов. Если сообщение распространяется более чем на строку, то мы можем разделить строки, используя символ возврата каретки (Chr (13)) или символ перевода строки (Chr (10)) между каждой строкой.

  • кнопки — необязательный параметр. Числовое выражение, определяющее тип отображаемых кнопок, стиль используемых значков, идентификатор кнопки по умолчанию и модальность окна сообщения. Если оставить пустым, значение по умолчанию для кнопок будет 0.

  • Заголовок — необязательный параметр. Строковое выражение, отображаемое в строке заголовка диалогового окна. Если заголовок оставлен пустым, имя приложения помещается в строку заголовка.

  • helpfile — необязательный параметр. Строковое выражение, определяющее файл справки, который используется для предоставления контекстно-зависимой справки для диалогового окна.

  • context — необязательный параметр Числовое выражение, обозначающее номер контекста справки, назначенный автором справки для соответствующего раздела справки. Если предоставляется контекст, также должен быть предоставлен файл справки.

Подсказка — Обязательный параметр. Строка, которая отображается в виде сообщения в диалоговом окне. Максимальная длина подсказки составляет около 1024 символов. Если сообщение распространяется более чем на строку, то мы можем разделить строки, используя символ возврата каретки (Chr (13)) или символ перевода строки (Chr (10)) между каждой строкой.

кнопки — необязательный параметр. Числовое выражение, определяющее тип отображаемых кнопок, стиль используемых значков, идентификатор кнопки по умолчанию и модальность окна сообщения. Если оставить пустым, значение по умолчанию для кнопок будет 0.

Заголовок — необязательный параметр. Строковое выражение, отображаемое в строке заголовка диалогового окна. Если заголовок оставлен пустым, имя приложения помещается в строку заголовка.

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

context — необязательный параметр Числовое выражение, обозначающее номер контекста справки, назначенный автором справки для соответствующего раздела справки. Если предоставляется контекст, также должен быть предоставлен файл справки.

Параметр Buttons может принимать любое из следующих значений:

  • 0 vbOKOnly Отображает только кнопку ОК.

  • 1 vbOKCancel Отображает кнопки OK и Отмена.

  • 2 vbAbortRetryIgnore Отображает кнопки «Отмена», «Повторить» и «Игнорировать».

  • 3 vBYesNoCancel Отображает кнопки «Да», «Нет» и «Отмена».

  • 4 vBYesNo Отображает кнопки «Да» и «Нет».

  • 5 vbRetryCancel Отображает кнопки «Повторить» и «Отмена».

  • 16 vbCritical Отображает значок критического сообщения.

  • 32 vbQuestion Отображает значок запроса предупреждения.

  • 48 vbExclamation Отображает значок предупреждающего сообщения.

  • 64 vbInformation Отображает значок информационного сообщения.

  • 0 vbDefaultButton1 Первая кнопка по умолчанию.

  • 256 vbDefaultButton2 Вторая кнопка по умолчанию.

  • 512 vbDefaultButton3 Третья кнопка по умолчанию.

  • 768 vbDefaultButton4 Четвертая кнопка по умолчанию.

  • 0 vbApplicationModal Модальное приложение. Текущее приложение не будет работать, пока пользователь не ответит на окно сообщения.

  • 4096 vbSystemModal Система модальных. Все приложения не будут работать, пока пользователь не ответит на окно сообщения.

0 vbOKOnly Отображает только кнопку ОК.

1 vbOKCancel Отображает кнопки OK и Отмена.

2 vbAbortRetryIgnore Отображает кнопки «Отмена», «Повторить» и «Игнорировать».

3 vBYesNoCancel Отображает кнопки «Да», «Нет» и «Отмена».

4 vBYesNo Отображает кнопки «Да» и «Нет».

5 vbRetryCancel Отображает кнопки «Повторить» и «Отмена».

16 vbCritical Отображает значок критического сообщения.

32 vbQuestion Отображает значок запроса предупреждения.

48 vbExclamation Отображает значок предупреждающего сообщения.

64 vbInformation Отображает значок информационного сообщения.

0 vbDefaultButton1 Первая кнопка по умолчанию.

256 vbDefaultButton2 Вторая кнопка по умолчанию.

512 vbDefaultButton3 Третья кнопка по умолчанию.

768 vbDefaultButton4 Четвертая кнопка по умолчанию.

0 vbApplicationModal Модальное приложение. Текущее приложение не будет работать, пока пользователь не ответит на окно сообщения.

4096 vbSystemModal Система модальных. Все приложения не будут работать, пока пользователь не ответит на окно сообщения.

Вышеуказанные значения логически разделены на четыре группы: первая группа (от 0 до 5) указывает кнопки, отображаемые в окне сообщения. Вторая группа (16, 32, 48, 64) описывает тип отображаемой иконки, третья группа (0, 256, 512, 768) указывает, какая кнопка должна быть по умолчанию, и четвертая группа (0, 4096). ) определяет модальность окна сообщения.

Возвращаемые значения

Функция MsgBox может возвращать одно из следующих значений:

  • 1 — vbOK — нажата кнопка ОК

  • 2 — vbCancel — Отмена была нажата

  • 3 — vbAbort — нажата кнопка «Прервать»

  • 4 — vbRetry — повторная попытка была нажата

  • 5 — vbIgnore — щелкнули Ignore

  • 6 — vbYes — Да нажали

  • 7 — vbNo — нет кликали

1 — vbOK — нажата кнопка ОК

2 — vbCancel — Отмена была нажата

3 — vbAbort — нажата кнопка «Прервать»

4 — vbRetry — повторная попытка была нажата

5 — vbIgnore — щелкнули Ignore

6 — vbYes — Да нажали

7 — vbNo — нет кликали

пример

<!DOCTYPE html>
<html>
   <body>
      <script language = "vbscript" type = "text/vbscript">
         'Message Box with just prompt message
         MsgBox("Welcome")    
           
         'Message Box with title, yes no and cancel Butttons 
         a = MsgBox("Do you like blue color?",3,"Choose options")
         ' Assume that you press No Button	
         document.write("The Value of a is " & a)
         
      </script>
   </body>
</html>

Когда приведенный выше сценарий выполняется, отображается окно сообщения, и если вы нажмете кнопку Нет, значение a будет равно 7.

The Value of a is 7

Функция VBScript InputBox

Функция InputBox помогает пользователю получить значения от пользователя. После ввода значений, если пользователь нажимает кнопку OK или нажимает клавишу ВВОД на клавиатуре, функция InputBox возвращает текст в текстовое поле. Если пользователь нажимает кнопку «Отмена», функция возвращает пустую строку («»).

Синтаксис

InputBox(prompt[,title][,default][,xpos][,ypos][,helpfile,context])

Описание параметра

  • Подсказка — Обязательный параметр. Строка, которая отображается в виде сообщения в диалоговом окне. Максимальная длина подсказки составляет около 1024 символов. Если сообщение распространяется более чем на строку, то мы можем разделить строки, используя символ возврата каретки (Chr (13)) или символ перевода строки (Chr (10)) между каждой строкой.

  • Заголовок — необязательный параметр. Строковое выражение, отображаемое в строке заголовка диалогового окна. Если заголовок оставлен пустым, имя приложения помещается в строку заголовка.

  • По умолчанию — необязательный параметр. Текст по умолчанию в текстовом поле, который пользователь хотел бы отобразить.

  • XPos — необязательный параметр. Позиция оси X, которая представляет быстрое расстояние от левой стороны экрана по горизонтали. Если оставить это поле пустым, поле ввода будет горизонтально отцентрировано.

  • YPos — необязательный параметр. Положение оси Y, которое представляет быстрое расстояние от левой стороны экрана по вертикали. Если оставить это поле пустым, поле ввода будет центрировано по вертикали.

  • helpfile — необязательный параметр. Строковое выражение, определяющее файл справки, который будет использоваться для предоставления контекстно-зависимой справки для диалогового окна.

  • context — необязательный параметр Числовое выражение, обозначающее номер контекста справки, назначенный автором справки для соответствующего раздела справки. Если предоставляется контекст, также должен быть предоставлен файл справки.

Подсказка — Обязательный параметр. Строка, которая отображается в виде сообщения в диалоговом окне. Максимальная длина подсказки составляет около 1024 символов. Если сообщение распространяется более чем на строку, то мы можем разделить строки, используя символ возврата каретки (Chr (13)) или символ перевода строки (Chr (10)) между каждой строкой.

Заголовок — необязательный параметр. Строковое выражение, отображаемое в строке заголовка диалогового окна. Если заголовок оставлен пустым, имя приложения помещается в строку заголовка.

По умолчанию — необязательный параметр. Текст по умолчанию в текстовом поле, который пользователь хотел бы отобразить.

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

YPos — необязательный параметр. Положение оси Y, которое представляет быстрое расстояние от левой стороны экрана по вертикали. Если оставить это поле пустым, поле ввода будет центрировано по вертикали.

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

context — необязательный параметр Числовое выражение, обозначающее номер контекста справки, назначенный автором справки для соответствующего раздела справки. Если предоставляется контекст, также должен быть предоставлен файл справки.

пример

<!DOCTYPE html>
<html>
   <body>
      <script language = "vbscript" type = "text/vbscript">
         ' Input Box with only Prompt
         InputBox("Enter a number")    
        
         ' Input Box with a Title
         a = InputBox("Enter a Number","Enter Value")
         msgbox a
        
         ' Input Box with a Prompt,Title and Default value
         a = InputBox("Enter a Number","Enter Value",123)
         msgbox a
        
         ' Input Box with a Prompt,Title,Default and XPos
         a = InputBox("Enter your name","Enter Value",123,700)
         msgbox a
        
         ' Input Box with a Prompt,Title and Default and YPos
         a = InputBox("Enter your name","Enter Value",123,,500)
         msgbox a
         
      </script>
   </body>
</html>

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

Уроки VBScript | VBHack

Объект WScript является главным в Windows Script Host и позволяет подключать остальные его компоненты. Данный объект не нужно создавать или куда то прописывать, он создаётся автоматически, сервером сценариев (CScript.exe или WScript.exe). Благодаря этому объекту мы можем получать информацию о запущенном сценарии и о самом WSH. Так же мы можем устанавливать время работы нашего сценария. Будет интересно.

 

(далее…)

Настало время познакомить вас с объектом RegExp языка VBScript, или, по другому — регулярное выражение. Данный объект VBScript позволяет создавать шаблон из метасимволов, по которому впоследствии выполняются определённые действия: сравнивание текста; заменять или удалять текст, соответствующий шаблону; извлекать текст, соответствующий шаблону. Например, нам надо в строке найти номер телефона типа «+7(***)***-***-**», где * — любая цифра. Так же данный объект позволит нам создать Proxy Parser на VBScript.

(далее…)

Что то я совсем убежал вперёд и не рассказал вам про две функции диалоговых окон: MsgBox и InputBox. В этом очень небольшом уроке я и расскажу про все приблуды к этим двум функциям. Так же существуют и другие способы создания диалоговых окон, но для этого потребуются объекты WSH, о которых будет разговор в следующих уроках.

 

(далее…)

Приветствую читателей своего блога по VBS программированию. Сегодня я расскажу про небольшой объект Dictionary. В использование встречается несправедливо редко. Он является объектом-коллекцией или словарём, как его называют иногда, по переводу названия. Данный объект напоминает массив VBS, но с более расширенными возможностями: задействовать в качестве номера элемента строковое значение, удаление элемента данных в середине коллекции без образования пробела, отсутствие нужды в использование ReDim и так далее. Так же в конце статьи вас ждёт пример-игра от меня.

(далее…)

Наконец настало время заключительного урока по объекту FSO. В этой статье я расскажу про все свойства и методы позволяющие, так или иначе работать с дисками. Одно из свойств может позволить нам выполнять сценарий VBScript только на определённом компьютере (по типу лицензии). Если Вас это заинтересовало, то буду рад поделиться имеющимися у меня знаниями.

 

(далее…)

В данной статье я расскажу про работу с файлами средствами VBS при помощи объекта FSO и File. В принципе все методы и свойства показанные здесь очень схожи с теми, что были в предыдущем уроке про работу с папками. Я бы даже сказал, что объект File — брат близнец объекта Folder. Данный урок будет полезен при создании VBS cтиллера для кражи паролей. Ну что, приступим.

 

(далее…)

В этой статье я расскажу про работу с папками при помощи объекта FSO, а так же объекта Folder. Данные объекты Windows Script Host позволяют нам создавать, удалять, проверять наличие папки, копировать или перемещать папки по шаблону, не используя циклов. Всё это будет подкреплено примерами VBScript.

 

(далее…)

В данной статье я расскажу и покажу, как обрабатывать ошибки в языке VBScript. Расскажу про два оператора объекта Err: On Error Resume Next (Включает обработку ошибок) и On Error GoTo 0 (отключает обработку ошибок). Данные операторы позволяют выполнять определённые выражения после определённых ошибок, а не наблюдать окошко с ошибкой и прерывание выполнения сценария.

 

(далее…)

Вот наконец мы и добрались до урока по работе с текстовыми файлами при помощи VBScript. С этим нам поможет объект TextStream. Мы научимся создавать, открывать текстовые файлы, а так же записывать в ниж данные и считывать информацию. Вполне полезная тема, давайте приступим.

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

(далее…)

Сегодня я хотел бы познакомить вас с интересной статьёй про строковые функции VBScript. Этот материал будет очень интересен и полезен, так как мы можем любую используемую информацию превратить в текст и произвести с ним нужные нам действия при помощи данных функций. Благодаря им мы можем создавать свой парсер (грабер) html кода веб страницы, текстовый редактор и многое другое. Ну что же, приступим.

(далее…)

новейших вопросов по vbscript — qaru

Переполнение стека

  1. Около
  2. Продукты

  3. Для команд
  1. Переполнение стека
    Общественные вопросы и ответы

  2. Переполнение стека для команд
    Где разработчики и технологи делятся частными знаниями с коллегами

  3. Вакансии
    Программирование и связанные с ним технические возможности карьерного роста

  4. Талант
    Нанимайте технических специалистов и создавайте свой бренд работодателя

  5. Реклама
    Обратитесь к разработчикам и технологам со всего мира

  6. О компании

Загрузка…

.

функций VBScript


Эта страница содержит все встроенные функции VBScript. Страница разделена на следующие разделы:

.

Функция Описание
CDate Преобразует допустимое выражение даты и времени в вариант
подтип Дата
Дата Возвращает текущую системную дату
Добавить дату Возвращает дату, до которой истек указанный интервал времени.
добавлено
DateDiff Возвращает количество интервалов между двумя датами
DatePart Возвращает указанную часть заданной даты
ДатаСерийный номер Возвращает дату указанного года,
месяц и число
DateValue Возвращает дату
День Возвращает число, представляющее день.
месяца (с 1 по 31 включительно)
FormatDateTime Возвращает выражение в формате даты или времени
Час Возвращает число, которое
представляет час дня (от 0 до 23 включительно)
IsDate Возвращает логическое значение, указывающее, оценивается ли
выражение можно преобразовать в дату
Минуты Возвращает число, которое
представляет минуту часа (от 0 до 59 включительно)
Месяц Возвращает число, которое
представляет месяц года (от 1 до 12 включительно)
Месяц Возвращает название указанного месяца
Сейчас Возвращает текущую системную дату и время
Второй Возвращает число, которое
представляет секунду минуты (от 0 до 59 включительно)
Время Возвращает текущий
системное время
Таймер Возвращает количество секунд с 12:00.
AM
TimeSerial Возвращает время для
определенный час, минута и секунда
TimeValue Возвращает время
будний день Возвращает число, представляющее день недели.
(от 1 до 7 включительно)
Название дня недели Возвращает название дня недели для указанного дня недели
Год Возвращает число, представляющее год


Функция Описание
по возрастанию Преобразует первую букву строки в код ANSI
CBool ​​ Преобразует выражение в вариант подтипа Boolean
КБайт Преобразует выражение в вариант подтипа Байт
CCur Преобразует выражение в вариант подтипа Currency
CDate Преобразует допустимое выражение даты и времени в вариант
подтип Дата
CDbl Преобразует выражение в вариант подтипа Double
Chr Преобразует указанный код ANSI в символ
CInt Преобразует выражение в вариант подтипа Integer
CLng Преобразует выражение в вариант подтипа Long
CSng Преобразует выражение в вариант подтипа Single
CStr Преобразует выражение в вариант подтипа String
шестигранник Возвращает шестнадцатеричное значение указанного числа
окт Возвращает восьмеричное значение указанного числа
Функция Описание
Формат Валюта Возвращает выражение, отформатированное как денежное значение
FormatDateTime Возвращает выражение в формате даты или времени
Номер формата Возвращает выражение в формате числа
Формат Процент Возвращает выражение в процентном формате.

.

.

Функция Описание
Абс Возвращает абсолютное значение указанного числа
Atn Возвращает арктангенс указанного числа.
Cos Возвращает косинус указанного числа (угла).
Опыт Возвращает e повышен до
мощность
шестигранник Возвращает шестнадцатеричное значение
указанный номер
Внутр. Возвращает целую часть указанного числа.
Исправить Возвращает целую часть указанного числа.
Журнал Возвращает натуральный логарифм указанного числа.
окт. Возвращает восьмеричное значение указанного числа
Rnd Возвращает случайное число меньше 1, но больше или равно
0
Sgn Возвращает целое число, которое указывает знак указанного числа.
Грех Возвращает синус указанного числа (угла)
кв. Возвращает квадратный корень указанного числа
Желто-коричневый Возвращает тангенс указанного числа (угла).

фильтра

Функция Описание
Массив Возвращает вариант, содержащий массив
Фильтр Возвращает отсчитываемый от нуля массив, содержащий подмножество.
массива строк на основе критерия
IsArray Возвращает логическое значение, которое указывает,
указанная переменная представляет собой массив
Присоединиться Возвращает строку, состоящую из нескольких подстрок.
в массиве
LBound Возвращает наименьший индекс для
указанная размерность массива
Сплит Возвращает отсчитываемый от нуля одномерный массив, содержащий
указанное количество подстрок
UBound Возвращает самый большой индекс для
указанная размерность массива
Функция Описание
ИнСтр Возвращает позицию первого появления
одна строка внутри другой.Поиск начинается с первого символа
строка
InStrRev Возвращает позицию первого вхождения одной строки
внутри другого. Поиск начинается с последнего символа строки
LCase Преобразует указанную строку в нижний регистр
Левый Возвращает указанное количество символов из
левая часть строки
Лен Возвращает количество символов в строке
LTrim Удаляет пробелы в левой части строки
RTrim Удаляет пробелы в правой части строки
Накладка Удаляет пробелы как с левой, так и с правой стороны
строка
Средняя Возвращает указанное количество символов из
строка
Заменить Заменяет указанную часть строки другой строкой a
указанное количество раз
Правый Возвращает указанное количество символов из
правая часть строки
Космос Возвращает строку, состоящую из указанного количества
помещения
StrComp Сравнивает две строки и возвращает значение, представляющее
результат сравнения
Строка Возвращает строку, содержащую повторяющийся символ
указанная длина
StrReverse Оборачивает строку
UCase Преобразует указанную строку в верхний регистр
Функция Описание
CreateObject Создает объект указанного типа
Eval Оценивает выражение и возвращает результат
Пусто Возвращает логическое значение, которое указывает,
указанная переменная была инициализирована или нет
IsNull Возвращает логическое значение, указывающее,
указанное выражение не содержит допустимых данных (Null)
IsNumeric Возвращает логическое значение, указывающее,
выражение можно оценить как число
IsObject Возвращает логическое значение, указывающее,
указанное выражение является объектом автоматизации
RGB Возвращает число, представляющее RGB.
значение цвета
Круглый Округляет число
ScriptEngine Возвращает скрипт
используемый язык
ScriptEngineBuildVersion Возвращает номер версии сборки
используемый движок сценариев
ScriptEngineMajorVersion Возвращает основной номер версии
используемый скриптовый движок
ScriptEngineMinorVersion Возвращает дополнительный номер версии
используемый скриптовый движок
Название типа Возвращает подтип
указанной переменной
VarType Возвращает значение, указывающее подтип указанного
переменная

.

vbscript — VBS вызывает CMD с цитатой в аргументе

Переполнение стека

  1. Около
  2. Продукты

  3. Для команд
  1. Переполнение стека
    Общественные вопросы и ответы

  2. Переполнение стека для команд
    Где разработчики и технологи делятся частными знаниями с коллегами

  3. Вакансии
    Программирование и связанные с ним технические возможности карьерного роста

  4. Талант
    Нанимайте технических специалистов и создавайте свой бренд работодателя

  5. Реклама
    Обратитесь к разработчикам и технологам со всего мира

.

vbscript — статус VBS Microsoft.XMLHTTP

Переполнение стека

  1. Около
  2. Продукты

  3. Для команд
  1. Переполнение стека
    Общественные вопросы и ответы

  2. Переполнение стека для команд
    Где разработчики и технологи делятся частными знаниями с коллегами

  3. Вакансии
    Программирование и связанные с ним технические возможности карьерного роста

  4. Талант
    Нанимайте технических специалистов и создавайте свой бренд работодателя

  5. Реклама
    Обратитесь к разработчикам и технологам со всего мира

.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *