Как создавать диалоговые окна с помощью VBScript? Всем привет, в этом уроке я вам покажу, как быстро создавать диалоговые окна в Windows, с помощью которых мы так часто подшучиваем над своими коллегами. Я представлю небольшой обзор команд с пояснениями для того, чтобы вы не просто копировали диалоговые окна с сайта, а смогли сами импровизировать, одновременно обучаясь. Это будет знакомый вам по предыдущим компьютерным приколам скриптовый язык VBScript, и всё, что нам как всегда понадобится, это простой Блокнот, который мы, после заполнения кода, будем сохранять в укромном месте с расширением .vbs.
VBScript – это простой язык программирования, исполняемый в системе сценарием Windows Script Host. Легко кодируется в Блокноте, а лучше в специальных текстовых редакторах с расширенными возможностями, как например, AkelPad или Notepad ++ (они, в отличие от встроенного Блокнота, понимают русскую кодировку; выберите Кириллицу – Windows-1251). Именно эта связка сценария и скрипта используется Windows для того, чтобы создавать диалоговые окна . Это гораздо проще, чем использовать такие языки как С и С ++. Однако подробное знакомство с VBScript задачей настоящей статьи не ставилось; здесь я лишь приведу ряд конкретных примеров того как создавать диалоговые окна с более-менее осмысленным для читающего содержанием и вариантами развития событий по результатам действий.
Как создавать диалоговые окна с ошибкой?
Итак, создадим простое диалоговое окно с двумя кнопками. И создадим окно с псевдоошибкой. Откроем текстовый редактор, и создадим сообщение, в котором:
x=msgbox("содержание_ошибки", 5+16, "автор_ошибки")
Кавычки и скобки обязательны. Значок “+” позволяет использовать в одном скрипте множественные функции окна. В поле «содержание ошибки» вы можете написать любое сообщение, которое впоследствии прочитает пользователь. А в поле «автор ошибки» напишите того, кто это сообщение якобы пришлёт. Ими могут быть сама система Windows, или сосед по офису. А может быть директор или администратор. Решать опять же вам. Останавливаться не буду, идём дальше. Вот каким будут выглядеть диалоговые окна после того, как вы сохраните документ в формате .vbs.
Поле «5+16» приказывает системе создавать диалоговые окна с ярлыком критической ошибки и двумя кнопками. Это, как видно, кнопки «повтор» и «отмена». Но как вы уже поняли, можно создавать диалоговые окна и с другими настройкам, и всё это благодаря комбинации цифр или чисел. Это – числовые выражения постоянных, отвечающие за выводимые кнопки, значки и режимы окна. Подробнее смотрим ниже:
0 (кнопка ОК) 1 (кнопки OK and Отмена) 2 (кнопки Прервать, Повтор и Пропустить) 3 (кнопки Да, Нет, Отмена) 4 (кнопки Да и Нет) 5 (кнопки Заново и Отменить) 16 (значок критической ошибки) 32 (значок помощи) 48 (значок предупреждения) 64 (значок информации) 256 (вторая кнопка по умолчанию) 512 (третья кнопка по умолчанию) 768 (четвёртая кнопка по умолчанию) 4096 (окно будет постоянно мешаться, перекрывая остальные окна других программ, пока пользователь не отреагирует) 262144 (поверх других окон) 524288 (текст сообщения выводится от правой части окна)
Нажатие кнопок для указанного кода, и, конечно, числовых комбинаций ни к чему не приведёт, но вы в силах будете указать системе, сколько раз те или иные сообщения будут появляться. Для этого просмотрите статью Множественные сообщения об ошибке. Если понадобится перенести строки в диалоговых окнах, можно воспользоваться написанием скрипта в формате:
wscript.quit MsgBox ("Привет!"&vbNewLine&"Как сам-то?",0)
Диалоговые окна VBS: множество постоянных и переменных.
В простейшем написании скрипта именно знак “+” позволит применять сразу несколько параметров в одном скрипте. Например, для написания окна типа:
Просто повторите скрипт так:
MsgBox "Немедленно выключить компьютер", 0 + 48 + 4096 + 524288, "Администратор"
Кстати, появление окна можно запустить по кругу, указав в скрипте команду на запуск его же по нажатию на любую из кнопок:
MsgBox "Повторно запускаю скрипт", 5+16, "Надоедливое окно" Set Sh = CreateObject("WSCript.Shell") Sh.Run "C:\Users\Desktop\скрипт.vbs" Set Sh = Nothing
где скрипт.vbs и есть тот самый скрипт, лежащий, скажем, на Рабочем столе (C:\Users\1\Desktop\). При этом избавиться от окна можно будет только через Диспетчер задач. Скрипт может также содержать и какую-то другую одну или несколько команд. Например, пара вводимых переменных не просто создаст интерактивный диалог, но запустит программу. Например, браузер. Ну, или не запустит:
Dim Window, exeName Window = MsgBox("Нажми на какую-то кнопку",1,"АДМИНИСТРАТОР") If Window = 1 Then MsgBox "Вы уверены? Запускаем скрипт..." Set objShell = CreateObject("WScript.Shell") objShell.Run """C:\Program Files\Mozilla Firefox\firefox.exe""" Set objShell = Nothing Else MsgBox "Пропускаем, так пропускаем..." End If
Успехов.
А как именно работает 256,512,768 и 4096? Как бы я не ставил, как бы я не указывал информацию, как бы я не корючился у меня всё равно не получается. Можете пожалуйста немного по подробнее объяснить?
Чуток потерпите. Закончу проект – дополню статью подробностями.
Ну и как?
Когда всё запустил, там всякая непонятная дребедень
Если я понял вопрос, в настройках NotePad ++ выберите Кодировку – Кириллицу – Windows-1251. И теперь пишите по-русски.
Согласен
Слушайте, по поводу кнопок, браузера и т.д. но блин а что если я хочу например сделать другую кнопку например DEL но надо вот так прописать?
Dim Window, exeName
Window = MsgBox(“Нажми на какую-то кнопку”,1,”АДМИНИСТРАТОР”)
If Window = Delete Then
Запустил файл. Вместо русских букв какие-то непонятные символы. Если писать по английски то всё нормально. В настройках блокнота стоит кириллица. Помогите пожалуйста, может что-то делаю не так?
Попробуйте так:
сначала открываете пустой документ Notepad, в котором выставляете Кодировки – Кодировки – Кириллица – Windows 1251
теперь пишите нужный код или вставляете скопированный с кириллицей.
Может я чего-то не понял, но у меня Windows 10 pro. Открываю блокнот формат – шрифт – кириллица (Где кодировки и Windows 1251 не вижу)
Снимок экрана 2021-01-30 125715
2-ой абзац статьи прочитайте. Вы его не читали, как я понял. Ссылки указаны на текстовые редакторы, которые позволяют по-русски писать. Встроенному Блокноту это не доступно.
Доступно, при сохранении в блокноте под выбором в каком формате сохранить (.txt, все) есть пункт “Кодировка”. Там выбираем ANSI и всё готово! Не благодарите)
спасибо большое статья супер! но иногда кракозябры но ниче
хочу спросить а как сделать так чтобы при нажатии на кнопку проигрывался звук из файла???