Как написать vbs скрипт

написать скрипт программу в блокнотеС этой статьей вы не научитесь программировать и даже не напишите как таковую программу, но найдете здесь отличные VBS скрипты и BAT файлы, которые без проблем напишете в обычном блокноте Windows, сможете усовершенствовать по своему, потом похвастаться перед друзьями и близкими. Возможно это поднимет вам настроение и вы отлично проведете время.

Большинство похожих скриптов пишутся для удобства и автоматизации каких-либо действий на компьютере с ОС Windows. Представленные же ниже скрипты мало окажутся полезными (может мне так кажется), но они отлично подойдут для первоначального знакомства с «кодингом». Вы отлично проведете время, удивив как себя, так и знакомых чайников (не программистов), плюс это еще один хороший вариант убить время за компьютером.

Немного терминологии:

  • VBS — язык программирования для создания скриптов в ОС Windows, создается/редактируется в Блокноте Windows, имеет разрешение «.vbs». Думаю, продолжать не имеет смысла, ибо это мало о чем скажет, особенно новичкам. Интересующимся — статья в Википедии.
  • BAT — пакетный файл, в народе просто «батник». Расширение файла «.bat». Дальше аналогично — статья в Википедии.

Данных расширений (vbs, bat) файлы создаются во всеми известном Блокноте Windows (Notepad). Для большего удобства создания скриптов рекомендуется использовать усовершенствованный (скажем так) блокнот — Notepad++. Он удобен подсветкой синтаксиса большого количества языков программирования, если вам это мало о чем говорит, то скачайте и пишите в нем — ошибок сделаете меньше в коде, ну или будет их проще найти, чем в том же мало функциональном Блокноте Windows.

Скачать Notepad++ можно на официальном сайте.

Для наглядности пример (слева — Блокнот Windows, справа — Notepad++):

Блокнот Windows и Notepad++

Приступим

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

Научим компьютер здороваться

  1. Открываем Блокнот (или Notepad Plus Plus).
  2. Копируем в вставляем код:

    Set sapi=CreateObject(«sapi.spvoice»)
    sapi.Speak «Hello!»

  3. Обязательное условие: кавычки должны быть “такими”, «ёлочки» не подойдут, скрипт не будет обрабатываться и выйдет ошибка. Вместо слова «Hello» можете написать что угодно, даже по русски, при наличии русского голосового движка.
  4. Дальше выбираем Файл — Сохранить как — Тип файла — Все файлы — название.vbs
  5. Называйте файл как хотите, но не забудьте в конце прописать расширение — .vbs (пример — Privet.vbs).
  6. Теперь пробуйте проверить свой скрипт — запустите файл двойным щелчок мыши.

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

Теперь, сделаем следующее: пропишем данный скрипт в автозагрузку, а это означает то, что при запуске компьютера вам будет произнесено написанное в программе слово (слова), если как в примере, то будет говорить — «Hello» при каждом включении компьютера. Как это сделать?

Все просто, программу (скрипт) добавить в автозагрузку можно таким же образом, то есть через такой же VBS скрипт. Создаем файл в блокноте, копируем/вставляем (Ctrl+C/Ctrl+V) следующий код:

Dim vOrg, objArgs, root, key, WshShell
root = «HKEY_CURRENT_USERSoftwareMicrosoftWindowsCurrentVersionRun»
KeyHP = «Program»
Set WshShell = WScript.CreateObject(«WScript.Shell»)
WshShell.RegWrite root+keyHP,»C:Privet.vbs /autorun»

Изменяем путь до скрипта «говорилки», вот эту строчку — C:Privet.vbs на свою. Прописываем где у вас лежит этот скрипт и как называется. Дальше сохраняем только что созданную мини программу в блокноте и запускаем. Все, теперь компьютер будет с вами здороваться пр каждом включении.

Открыть дисковод

  1. Открыть блокнот. Скопировать/Вставить следующий код:

    Set a = CreateObject(«WMPlayer.OCX.7»)
    Set b = a.CdromCollection
    Set c = b.Item(0)
    Set d = c.Eject

  2. Сохранить с расширением .vbs
  3. Запустить скрипт и откроется дисковод.

Есть более интересная модификация данного скрипта:

Set WMPlayer = CreateObject(«WMPlayer.OCX.7»)
do
WMPlayer.CdRomCollection.Item(0).Eject()
loop

В данном случае будет все время открываться-закрываться CD/DVD-привод, на ноутбуках в этом случае будет открываться после каждого его закрытия.

Внимание! Второй код (открытие-закрытие дисковода), некоторые антивирусы видят как вредоносную программу. Антивирус Касперского (в т.ч. и Kaspersky Free) его видит именно так и уничтожает сразу же. В первом же случае (просто открытие дисковода) для антивирусных программ не является вредоносным скриптом.

Чтобы прекратить автоматически открывать-закрывать дисковод необходимо:

  1. Запустить диспетчер задач (комбинация клавиш Windows — Ctrl+Alt+Del).
  2. Перейти на вкладку «Процессы».
  3. Найти процесс wscript.exe — правая кнопка мыши — завершить процесс.

Игра

Интересная находка из Сети — игра на VBS. Необходимо угадать число от 0 до 100. Скрипт автоматически при запуске задает (разгадывает) число, которое вам необходимо угадать и ввести в специальном окошке, при неправильном ответе даются подсказки, например меньше или больше.

угадайка играНиже тот самый код который необходимо скопировать и вставить в блокнот, далее сохранить (расширение .vbs).

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

Set y = CreateObject(«Scripting.FileSystemObject»)
Set y = Nothing
Do
a = 0
u = 0
Randomize
Number = Int((RND*99)+1)
MsgBox «Я загадал число от 1 до 100, попробуй отгадать»,64,»Угадайка»
Do
a = a + 1
c = InputBox(«Угадай число» & vbCrLf & vbCrLf & «Попытка: » & a & vbCrLf & vbCrLf & «Чтобы посмотреть результаты введите число !» & vbCrLf & vbCrLf & «Для выхода оставьте поле пустым» & vbCrLf & vbCrLf,»Угадайка»)
If c = «!» Then CreateObject(«WScript.Shell»).Run «notepad C:WindowsResult.dll»,3,True : Exit Do
If c <> «» Then
If IsNumeric(c) = True Then
If CInt(c) < Number Then MsgBox «Нет,это не » & c & «. Я загадал число больше»,64,»Угадайка»
If CInt(c) > Number Then MsgBox «Нет,это не » & c & «. Я загадал число меньше»,64,»Угадайка»
If CInt(c) = Number Then
Set y = CreateObject(«Scripting.FileSystemObject»)
MsgBox («Количество попыток: » & a)
If MsgBox («Правильно, это было число » & c & «. Начать заного?»,36,»Угадайка») = 6 Then Exit Do Else WScript.Quit
End If
Else
MsgBox «Это не число!»,16,»Угадайка»
a = a — 1
End If
Else
a = a — 1
l = MsgBox («Ты ничего не ввел. Выйти из программы?»,36,»Угадайка»)
If l = 6 Then WScript.Quit
End If
Loop
loop

Ну и перед тем как переходить к батникам (.BAT) воспользуемся самым полезным VBS скриптом из всех перечисленных в этой статье.

Скрипт закрывающий wscript.exe

Сам скрипт:

Set TaskKill = CreateObject(«WScript.Shell»)
TaskKill.Run «TaskKill /f /im wscript.exe»

По сути он делает тоже самое, что чуть выше объяснялось в диспетчере задач, как например нельзя просто взять и закрыть надоедливый скрипт открывающий-закрывающий дисковод, а запустив данный скрипт все запущенные будут закрыты. Это как клин клином вышибают.

Немного познакомились с VBS скриптами и о том как их писать в блокноте, теперь рассмотрим несколько примеров использования BAT файлов (далее — батник).

Завершение работы /Перезагрузка компьютера

Совсем простой батник состоящий всего из одной строки.

  1. Открываем Блокнот.
  2. Пишем следующий код:

    shutdown -s -t 1 -c -f

  3. Далее Файл — Сохранить как — нзвание.bat
  4. Обратите внимание на расширение файла, это уже не VBS скрипт, а батник, по этому в конце названия прописываем .bat (Пример compoff.bat).
  5. Запускаем только что созданный батник двойным щелчком мыши и компьютер выключится (Завершение работы).

Есть такой вариант кода:

shutdown -r -t 1 -c -f

Все также, прописываем в блокноте, сохраняем с расширением .bat и после запуска компьютер перезагрузится (обычная перезагрузка компьютера).

Удаление обновлений

Данный батник пригодится в том случае, если вы уже обновились до Windows 10. В чем суть? В этом батнике перечислены команды по удалению нескольких обновлений, как видно из названия — обновления телеметрии, или как раз одна из шпионских штучек системы, мы однажды уже говорили как отключить функции слежки Windows 10, в данном же случае вы просто создаете батник, в содержимое копируете код ниже и запускаете, после чего будут удалены перечисленные обновления.

@echo
echo
echo Step 1: Delete Updates Telemetry
wusa /uninstall /kb:3068708 /quiet /norestart
wusa /uninstall /kb:3022345 /quiet /norestart
wusa /uninstall /kb:3075249 /quiet /norestart
wusa /uninstall /kb:3080149 /quiet /norestart

Таким образом можно удалить абсолютно любое обновление, даже назойливое KB971033 которое проверяет копию Windows 7 на подлинность.

В Интернете встречается много различных скриптов, якобы безвредных, но будьте осторожны, прежде чем пробовать непонятно какой скрипт, некоторые из них могут навредить, например — вносить изменения в реестр, а в случае каких ошибок система будет выдавать ошибки, в таком случае придется или восстанавливать реестр Windows или сделать восстановление системы.


Загрузить PDF


Загрузить PDF

VBScipt очень простой, но мощный язык программирования, который является родным для Windows. Он используется, главным образом, для создания веб-серверных приложений. VBScript встраивается в файлы HTML и является достаточно простым и прямолинейным. Обратите внимание, что VBScript отличается от Visual Basic, который используется для программирования для ПК.

  1. Изображение с названием 229827 1 1

    1

    Выберите хороший редактор кода. Разумеется, вы можете использовать Блокнот, но удобнее будет пользоваться специальным редактором с подсветкой синтаксиса языка VBScript.

  2. Изображение с названием 229827 2 1

    2

    Установите Internet Explorer. Internet Explorer является единственным браузером, который поддерживает VBScript, поскольку является продуктом Microsoft. Чтобы увидеть VBScript в действии, вам будет необходимо установить Internet Explorer.

    • Поскольку Internet Explorer поддерживается только ОС Windows, лучше всего, если вы будете программировать на компьютере с ОС Windows.
  3. Изображение с названием 229827 3 1

    3

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

    • Используйте (апостроф) для обозначения комментариев. Любая строка, начинающаяся с апострофа, рассматривается как комментарий и не обрабатывается скриптом. Использование комментариев помогает другим разработчикам и вам самим разобраться в том, что делает данный код.
    • Используйте _ (нижнее подчеркивание), чтобы продолжить строку. Обычно конец строки обозначается просто переходом на следующую, но если она оказывается слишком длиной, вы можете просто использовать _ в конце незаконченной строки для обозначения того, что текущая строка продолжается на следующей строке.

    Реклама

  1. 1

    Создайте HTML страницу. VBScript существует в пределах HTML сайтов. Чтобы увидеть, как работает ваш VBScript, вам понадобится создать HTML-файл и отрыть его в Internet Explorer. Откройте редактор кода и введите следующий код:[1]

    <html>
    <head>
    <title>VBScript Test</title>
    </head>
    <body>
    
    </body>
    </html>
    
  2. 2

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

    <html>
    <head>
    <title>VBScript Test</title>
    </head>
    <body>
    <script language="vbscript" type="text/vbscript">
    
    </script>
    </body>
    </html>
    
  3. 3

    Используйте VBScript на сервере ASP. Если вы пишете скрипт VBScript для ASP-сервера, указать то, что далее начинается скрипт, вы можете при помощи специального тэга:

    <html>
    <head>
    <title>VBScript Test</title>
    </head>
    <body>
    <%
    
    %>
    </body>
    </html>
    

    Реклама

  1. 1

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

    <html>
    <head>
    <title>VBScript Test</title>
    </head>
    <body>
    <script language="vbscript" type="text/vbscript">
    document.write()
    </script>
    </body>
    </html>
    
  2. 2

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

    <html>
    <head>
    <title>VBScript Test</title>
    </head>
    <body>
    <script language="vbscript" type="text/vbscript">
    document.write("Hello World!")
    </script>
    </body>
    </html>
    
  3. 3

    Откройте HTML файл в браузере. Сохраните код в формате .HTML. Откройте получившийся файл при помощи Internet Explorer. На странице простым текстом должно отобразиться Hello World!.

    Реклама

  1. 1

    Объявите переменные. Переменные позволяют хранить данные, с которыми вы сможете работать позже. Объявить переменные необходимо при помощи команды dim прежде, чем присвоить им какие-либо значения. Вы можете объявить несколько переменных сразу. Переменные должны начинаться с буквы и могут содержать до 255 символов латиницы и цифр. В нашем примере объявим переменную «age»:

    <html>
    <head>
    <title>VBScript Test</title>
    </head>
    <body>
    <script language="vbscript" type="text/vbscript">
    dim age
    </script>
    </body>
    </html>
    
  2. 2

    Присвойте переменным значения. Теперь, когда переменная объявлена, вы можете присвоить ей значение. Используйте знак равенства =, чтобы задать значение переменной. Вы можете использовать команду Write, чтобы отобразить переменную на экране и удостовериться в том, что все работает.

    <html>
    <head>
    <title>VBScript Test</title>
    </head>
    <body>
    <script language="vbscript" type="text/vbscript">
    dim age
    age = 30
    document.write(age)
    </script>
    </body>
    </html>
    
  3. 3

    Манипулирование переменными. Для работы с переменными вы можете использовать все математические операции. Эти операции записываются так же, как и любые математические операции. Все ваши переменные, включая те, в которые будет записываться результат всех манипуляций, должны быть предварительно объявлены.

    <html>
    <head>
    <title>VBScript Test</title>
    </head>
    <body>
    <script language="vbscript" type="text/vbscript">
    dim x
    dim y
    dim sum
    x = 10
    y = 5
    sum = x + y
    document.write(sum)
    'the page will display "15"
    </script>
    </body>
    </html>
    
  4. 4

    Создайте массив. Массив, по существу, представляет собой таблицу (строку), которая содержит более одного значения. Массив обрабатывается как одна переменная. Как и другие переменные, массивы тоже необходимо объявлять. Вы также должны указать количество переменных, которые могут храниться в массиве. Обратите внимание, что нумерация массива начинается с 0. Позже вы сможете обращаться к данным из массива.

    <html>
    <head>
    <title>VBScript Test</title>
    </head>
    <body>
    <script language="vbscript" type="text/vbscript">
    Dim names(2)
    Dim mother
    names(0) = "John"
    names(1) = "Jane"
    names(2) = "Pat"
    mother = names(1)
    </script>
    </body>
    </html>
    
  5. 5

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

    <html>
    <head>
    <title>VBScript Test</title>
    </head>
    <body>
    <script language="vbscript" type="text/vbscript">
    Dim table(2,2)
    'This will create a 3x3 table
    table(0,0) = "A" 
    table(0,1) = "B"
    table(0,2) = "C"
    table(1,0) = "D"
    table(1,1) = "E"
    table(1,2) = "F"
    table(2,0) = "G"
    table(2,1) = "H"
    table(2,2) = "I"
    </script>
    </body>
    </html>
    

    Реклама

  1. 1

    Узнайте разницу между процедурами и «sub» и «function». В VBScript существует два вида процедур: sub (подпрограммы) и function (функции). Эти два типа процедур позволяют вашей программе производить определенные действия.[2]

    • Процедуры Sub могут осуществлять действия, но не могут возвращать в программу значения.
    • Процедуры Function могут вызывать другие процедуры, а также возвращать значения.
  2. 2

    Напишите процедуру sub и вызовите ее. Вы можете использовать подпрограммы (sub), чтобы создавать задачи, которые ваша программа может вызвать позже. Используйте Sub и End Sub, чтобы добавить подпрограмму. Используйте Call, чтобы активировать подпроцедуру

    <html>
    <head>
    <title>VBScript Test</title>
    </head>
    <body>
    <script language="vbscript" type="text/vbscript">
    Sub mysubproc()
    	document.write("This was written in a sub procedure")
    End Sub
    
    Call mysubproc()
    'This will display the message written in the sub procedure
    </script>
    </body>
    </html>
    
  3. 3

    Создайте процедуру function. Функции позволяют выполнять простые команды и возвращать программе значения. Процедуры-функции и формируют основу и функциональность вашей программы. Используйте Function и End Function, чтобы обозначить содержимое функции.

    <html>
    <head>
    <title>VBScript Test</title>
    </head>
    <body>
    <script language="vbscript" type="text/vbscript">
    Function multfunction(x,y)
    multfunction = x*y
    End Function
    
    document.write(multfunction(4,5))
    'This will use your function and insert 4 and 5 into the x and y variables. 
    'The result will be printed on the screen.
    </script>
    </body>
    </html>
    

    Реклама

Источники

Об этой статье

Эту страницу просматривали 16 120 раз.

Была ли эта статья полезной?

VBScript is a lightweight scripting version of the popular Microsoft Visual Basic, developed by as the name suggests, Microsoft. It is used to develop dynamic web pages. It is much lighter compared to Visual Basic programming language but works as a scripting language like JavaScript. To run VBScript on the client-side, the client must have to use Internet Explorer because other browsers are still not supported by the VBScript. 

How to make a VBScript program?

Just like many other simple scripting languages, VBScript can be written on a simple word editor, like notepad and other such softwares (e.g. notepad++, Wordpad, etc.). Refer the following steps to get a better idea of making a VBScript program: 

Step 1: Open up a word editor of your choice (Here, notepad is used). 

  
Step 2: For now, here is a simple VBScript program that will make a simple message dialog box to appear on the screen. The code for such a program in VBScript is: 
 

a = msgbox("Have a good day, fellow GFG reader!", 0, "Making a VBScript program")

Code Explanation: You can put anything as long as it follows the variable declaration rules in VBScript instead of “a” which is at the beginning of the above code. Effectively, We can break and understand the above code in the following manner: 
 

put_any_Variable_name = msgbox("Your main text here", 0, "Your title text here")

  
To change the property of the dialog box with respect to what you need, refer the following data: 

Code Property
0 Only “OK” button will be displayed. ????
1 OK and Cancel buttons will be displayed. ???? ❌
2 Abort, Retry, and Ignore buttons will be displayed. ???? ???? ????
3 Yes, No, and Cancel buttons will be displayed. ✅❎❌
4 Yes and No buttons will be displayed. ✅❎
5 Retry and Cancel buttons will be displayed. ???? ❌
16 Critical Message icon will be shown in the dialog box ????
32 Warning Query icon will be shown in the dialog box ❓
48 Warning Message icon will be shown in the dialog box ????
64 Information Message icon will be shown in the dialog box ⏺
0 First button will become default
256 Second button will become default
512 Third button will become default
768 Fourth button will become default
0 Triggers the application modal (basically, the current application will stop working until the user responds to the dialog box)
4096 Triggers the System modal (basically, all applications will stop working until the user responds to the dialog box)

Change “0” in the above written code with any of the numbers provided just above. 
To get more than one above mentioned property in you dialog box, you can simple write, for example: “0+16”, instead of “0” in above code. 
For reference, the code: 
 

hydro = msgbox("Remember to drink water!", 0+64, "Hydration Check")

will give the following output: 
 

That’s it, we have just written a basic VBScript program that will display a dialog box as output. Now onto saving this program. 

How to save a VBScript program?

Follow the steps given below to save a VBScript program: 

Step 1: Press Ctrl + Shift + S on the keyboard, Or click File>Save As on the notepad window, this will open up a Save As dialog window asking where to save the current notepad document. 
 

  
Step 2: Now write any file name of your choice for this notepad document but make sure you write .vbs as its extension. Make sure to add “.vbs” after writing the file name in the “File name:” field. 
 

  
Step 3: Now, change the value of “Save as type:” field from “Text Documents (*.txt)” to “All Files (*.*)” by clicking on it with help of the drop down menu. 
 

  
Step 4: Finally, click on save after choosing an appropriate location of where the file should be saved to. 
 

How to run a VBScript program?

Now, this is a very simple thing to do, simply double click on the now saved .vbs file from wherever you saved it and voila! It will run and give you the following output: 
 

VBScript is a lightweight scripting version of the popular Microsoft Visual Basic, developed by as the name suggests, Microsoft. It is used to develop dynamic web pages. It is much lighter compared to Visual Basic programming language but works as a scripting language like JavaScript. To run VBScript on the client-side, the client must have to use Internet Explorer because other browsers are still not supported by the VBScript. 

How to make a VBScript program?

Just like many other simple scripting languages, VBScript can be written on a simple word editor, like notepad and other such softwares (e.g. notepad++, Wordpad, etc.). Refer the following steps to get a better idea of making a VBScript program: 

Step 1: Open up a word editor of your choice (Here, notepad is used). 

  
Step 2: For now, here is a simple VBScript program that will make a simple message dialog box to appear on the screen. The code for such a program in VBScript is: 
 

a = msgbox("Have a good day, fellow GFG reader!", 0, "Making a VBScript program")

Code Explanation: You can put anything as long as it follows the variable declaration rules in VBScript instead of “a” which is at the beginning of the above code. Effectively, We can break and understand the above code in the following manner: 
 

put_any_Variable_name = msgbox("Your main text here", 0, "Your title text here")

  
To change the property of the dialog box with respect to what you need, refer the following data: 

Code Property
0 Only “OK” button will be displayed. ????
1 OK and Cancel buttons will be displayed. ???? ❌
2 Abort, Retry, and Ignore buttons will be displayed. ???? ???? ????
3 Yes, No, and Cancel buttons will be displayed. ✅❎❌
4 Yes and No buttons will be displayed. ✅❎
5 Retry and Cancel buttons will be displayed. ???? ❌
16 Critical Message icon will be shown in the dialog box ????
32 Warning Query icon will be shown in the dialog box ❓
48 Warning Message icon will be shown in the dialog box ????
64 Information Message icon will be shown in the dialog box ⏺
0 First button will become default
256 Second button will become default
512 Third button will become default
768 Fourth button will become default
0 Triggers the application modal (basically, the current application will stop working until the user responds to the dialog box)
4096 Triggers the System modal (basically, all applications will stop working until the user responds to the dialog box)

Change “0” in the above written code with any of the numbers provided just above. 
To get more than one above mentioned property in you dialog box, you can simple write, for example: “0+16”, instead of “0” in above code. 
For reference, the code: 
 

hydro = msgbox("Remember to drink water!", 0+64, "Hydration Check")

will give the following output: 
 

That’s it, we have just written a basic VBScript program that will display a dialog box as output. Now onto saving this program. 

How to save a VBScript program?

Follow the steps given below to save a VBScript program: 

Step 1: Press Ctrl + Shift + S on the keyboard, Or click File>Save As on the notepad window, this will open up a Save As dialog window asking where to save the current notepad document. 
 

  
Step 2: Now write any file name of your choice for this notepad document but make sure you write .vbs as its extension. Make sure to add “.vbs” after writing the file name in the “File name:” field. 
 

  
Step 3: Now, change the value of “Save as type:” field from “Text Documents (*.txt)” to “All Files (*.*)” by clicking on it with help of the drop down menu. 
 

  
Step 4: Finally, click on save after choosing an appropriate location of where the file should be saved to. 
 

How to run a VBScript program?

Now, this is a very simple thing to do, simply double click on the now saved .vbs file from wherever you saved it and voila! It will run and give you the following output: 
 

Introduction: The Ultimate VBS Tutorial

VBS is one of the most popular programming languages on instructables so there surely will be several instructable guides on programming VBS. However, most of them rush through commands and just show the basic way to do them. They also have a lot of the same basic material. I decided to search all around instructables and w3schools.com until I had a very good list of commands. When I did I started this tutorial that really shows a lot of detail about each command. Now lets start making VBS scripts… 

You will need…

-A computer running Windows 98 or higher (No Macs)
-Notepad
-Time
-A brain

Step 1: First Things First…

Open Notepad

Start>All Programs>Accessories>Notepad

Lets get ready to script!

Step 2: Save Me!

Before we begin I should teach you how to save a vbs file in notepad.
To save a file you have to click File>Save As

Then type
name.vbs

Where it says name you can put whatever you want but it MUST end with .vbs

Step 3: Message Boxes

This makes an error message how you like it.

msgbox («Message goes here»,0+16,»Title goes here»)

if the user is supposed to make a decision the variable can be added like this.

variable=msgbox («Message goes here»,0+16,»Title goes here»)

The numbers in the middle vary what the messge box looks like.
Here is the list

0 — ok button only
1 — ok and cancel
2 — abort, retry and ignore
3 — yes no and cancel
4 — yes and no
5 — retry and cancel
TO CHANGE THE SYMBOL (RIGHT NUMBER)
16 — critical message icon
32 — warning icon
48 — warning message
64 — info message
DEFAULT BUTTON
0 = vbDefaultButton1 — First button is default
256 = vbDefaultButton2 — Second button is default
512 = vbDefaultButton3 — Third button is default
768 = vbDefaultButton4 — Fourth button is default
SYSTEM MODAL
4096 = System modal, alert will be on top of all aplications

Note: There are some extra numbers. You just have to add them to the numbers already there like

msgbox («Hello World», 0+16+0+4096)

Step 4: Input Boxes

Input boxes allow the user to INPUT a text string. Here is the code for one.

variable=inputbox («Message»,»Title»,»Default Text»)

Any of the text between the commas is optional by just not putting anything there like

variable=inputbox («Type a Message»,,»Message»)

Step 5: Working With Variables

Math is one of the most simple tasks for a computer. VBS can do complex math in a snap.

Vbs mainly does algebraic math but you can do other than that. First we should make a variable. That is the easiest task in the scripting world.

dim variable name here

Variables can be placed where text goes like this…

Msgbox (var)

The only rule for naming variables is no spaces allowed.
To do math, in between each part of the equation must have a space like so.

y + 5 = 6 * 8

You can also treat an equation like a variable…

Msgbox (5.5 * 3)

Note: VBS will give you an error specifically for dividing by zero so just don’t do that.

Step 6: Strings

Strings are variables that hold text. You can make a string like this.

«This is a text string»

VBS will let you treat the text string as a variable but you can make a text string a variable as easy as this.

dim name

name = «This is a text string»

Note:You have to have the quotation marks or else the script will think your talking about a variable.

Note 2:Text strings do have a capacity limit to how much information they hold so be careful.

Step 7: Decisions, Decisions…

What if you needed the program to check if a variable was at a certain value? In programming that is extremely easy. The decision making command is called the IF THEN ELSE statement. An example program would be…

if 200 > 16 then
msgbox («200 is greater than 16»)
else
msgbox («200 isn’t greater than 16»)
end if

That was a foolish example (since 200 will always be greater than 16) of how the if statement works. So now you see IF 200 > 16 THEN let the user know ELSE tell the user it isn’t then END the IF statement.

So now you can make a program that will do one of two things. Can you do more? Yes! That is called a nested IF statement. For example…

if 200 > 16 then
msgbox («200 is greater than 16»)
else
if 200 = 16 then
msgbox («200 is equal to 16»)
else
msgbox («200 isn’t greater than 16»)
end if
end if

This program will say if 200 is equal to, greater than or less than 16.

The same can be used with text strings.

if userinput = password then
msgbox («Welcome»)
else
msgbox («Access denied»)
end if

Note that ‘userinput’ and ‘password’ are variable holding text strings not text strings themselves.

Step 8: Doing the Loop

What if you want a program to repeat something forever or until something happens? Have I got a command for you! It’s the do loop command! Its most basic use is this.

do
msgbox («Hi»)
loop

A more complex version would be

do until 24 > 8
msgbox («Hi»)
loop

A similar version of that code would be

do
msgbox («Hi»)
loop until 24 > 8

While the two codes look the same there is a difference. That is, the first code won’t even go into the loop if the criteria is met before the loop is started while the second one has to go through the loop at least once because the ‘loop until’ is after everything in the loop.

Step 9: Important Command

One of the things that makes VBS special is it can work with other programs that are compatible with it by creating something called an object. In other words a VBS script can get more commands by controlling other programs. To use objects you have to let the script know what you are going to call it. Here is how you set an object…

set name = wscript.CreateObject(«what the object is»)

It is a good idea to set objects in the first lines of your code. There are two reasons for that.

1.It makes your program clearer to read.

2.It’s impossible to use an object that hasn’t been set. Its best to get that done first to avoid errors.

The next two steps will show two examples of objects.

Step 10: Shell

  Say you want your script to do something like run a program or DOS-ish commands. This object is perfect. It is called the Windows Shell object. Here is a simple way to use it to open a directory.

 set wshshell = wscript.CreateObject(«wscript.shell»)

wshshell.run C:Windows

The C:Windows folder should open.
Another command is sendkeys. It will, well, send keys, to applications. Say you want to send hello world into a program, just type.

set wshshell = wscript.CreateObject(«wscript.shell»)
wshshell.sendkeys «Hello World»

Another command is the Echo command which sends a message box with no picture, an OK button, and Windows Script Host in the title. An example is.

set wshshell = wscript.CreateObject(«wscript.shell»)
wshshell.echo «Hello World»

Step 11: Sapi

Did you ever want to make a computer talk? Sure you could open the text to speech window, but what if you want a computer to read results without any user interface?  Just use the SAPI (Speech Application Programming Interface) object.

Set Sapi = Wscript.CreateObject(«SAPI.SpVoice»)
Sapi.speak «Hello world»

The speak command can also use variables.

Set Sapi = Wscript.CreateObject(«SAPI.SpVoice»)
Sapi.speak variable

Step 12: Date and Time

These commands will show the date or time if used correctly. They can be treated like variables.

———————(Date)————————-
Date (Returns system date)
Day (Returns the day (1-31)from the date command) ex. Day (Date)
Month (Returns the month (1-12) from the date command) ex. Month (Date)
Year (Returns the year from the date command) ex. Year (Date)
———————(Time)————————
Time (Returns the current system time to the second)
Second (Returns the second (0-59) from the time command) ex. Second (Time)
Minute (Returns the minute (0-59) from the time command) ex. Minute (Time)
Hour (Returns the hour (0-23) from the time command) ex. hour (Time)

For example 

msgbox (Date)
msgbox (Time)

That is a simple program that shows the use of the Date and Time commands. 

A more elaborate program that uses all of the commands listed here and some extra can be found here .

Step 13: Reading Plain Text

Say you want the computer to read from a file and store the contents as a text string. Here is a code that does just that.

Dim Textstring

Set objFSO = CreateObject(«Scripting.FileSystemObject»)

Set objText = objFSO.OpenTextFile(«File.txt», 1)

Textstring = objText.ReadAll

Step 14: Final Exam…

This time take what you have learned from this instructable and write a program by yourself. Comment it so we all can enjoy it.

Step 15: Bye

Thank you for reading this instructable. Comment anything cool you come up with so we can all share our discoveries. 
                                                                                                                                                            -Super_Nerd-

Step 16: Additional Steps: the String Function «Replace»

mohamadelmoussa asked for a command that would replace certain words with others in text strings. The replace command is definitely, what he was looking for. Here is the basic syntax.

Replace(string,»change this to»,»this»)

Here is an example of using the replace function…

text=»This is a good instructable!»
msgbox (Replace(text,»a good»,»an awesome»))

Thanks for the compliment example. 

4 People Made This Project!

Recommendations

В этом начальном уроке, мы изучим синтаксис 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)

Понравилась статья? Поделить с друзьями:
  • Как написать unit тест php
  • Как написать unit test c
  • Как написать uefi загрузчик
  • Как написать txt файл
  • Как написать trash talk