16+
Взломы среднего и высокого уровня — 2

Бесплатный фрагмент - Взломы среднего и высокого уровня — 2

Секреты, приколы, программирование, знание компьютера. Cборник кодов моих программ

Объем: 52 бумажных стр.

Формат: epub, fb2, pdfRead, mobi

Подробнее

Взломы среднего и высокого уровня 2

Сикреты, приколы, программирование, знание компьютера

Cборник кодов моих программ

Здравствуйте!

Меня зовут Александр Могилевский , живу в Канаде с 2000го года, мне сейчас 37 лет. В первой книге я вам писал немного введения в мир программирования и взломов и в основном я вам описывал чужие программы. Сейчас я хочу поделится с вами своими программами, я б сказал что они скорее среднего уровня, чем высокого, в общем это смотря как на это посмотреть. Ну и по ходу написания кодов я попробую еще добавить разных приколов и знаний от се6я! Давайте для начала напишем одну программу, которая по вводу текста говорит вам этот текст голосом робота. Вы наверное подумаете! А зачем она комуто нужна?! Тут дело фантазии, можно просто поприкаловатся, или если вы занимаетесь созданием сайтов с чатами можно её подключить к вашему чату и назвать его голосовой чат. Еще можно говорить по телефону с кемто, кому вы не хотите выдавать свой реальный голос, ну и вконце концов глухонемые могут пользоватся этой программой. Для тех кто не читал мою первую книгу, повторюсь, для запуска этих кодов и для компеляции их, нужно иметь программу под названием Autoit! После инсталации у вас появится папка под названием Autoit, возможно с разными номерами, в зависимости от того, какой версией вы пользуетесь, там чуть глубже в папках вы найдете файл примерно вот такого названия SciTE4.exe с расширением. ехе — тоесть запускаемый файл, это и есть компелятор! Удачи! В этом коде вы увидите первую функцию! Название программы!

TEXT TO VOICE!

#include <GUIConstantsEx.au3>

#include <GDIPlus.au3>

#include <StaticConstants.au3>

#include <ButtonConstants.au3>

#include <IE.au3>

Deeman ()

Func Deeman ()


Local Const $CLSID_SpVoice =» {96749377-3391-11D2—9EE3-

00C04F797396}»; этот кусочек надо писать вместе с тем что выше!


Local Const $IID_ISpVoice =» {6C44DF74—72B9-4992-A1EC-EF996E0422D4}»

Local Const $SPF_DEFAULT = 0


Local Const $sSpVoice = «SetNotifySink hresult (ptr)» & _

«SetNotifyWindowMessage hresult (hwnd; uint; long; long);" & _

«SetNotifyCallbackFunction hresult (ptr; long, long);" & _

«SetNotifyCallbackInterface hresult (ptr; long, long);" & _

«SetNotifyWin32Event hresult ();" & _

«WaitForNotifyEvent hresult (dword);" & _

«GetNotifyEventHandle hresult ();" & _

«SetInterest hresult (long; long);" & _

«GetEvents hresult (ulong; ptr; ptr)» & _

«GetInfo hresult (ptr);" & _

«SetOutput hresult (ptr; boolean);" & _

«GetOutputObjectToken hresult (ptr);" & _

«GetOutputStream result (ptr);" & _

«Pause hresult ();" & _

«Resume hresult ();" & _

«SetVoice hresult (ptr);" & _

«GetVoice hresult (ptr);" & _

«Speak hresult (wstr; dword; ulong);" & _

«SpeakStream hresult (ptr; dword; ulong);" & _

«GetStatus hresult (ptr; ptr);" & _

«Skip hresult (wstr; long; ulong);" & _

«SetPriority hresult (long);" & _

«GetPriority hresult (ptr);" & _

«SetAlertBoundary hresult (long);" & _

«GetAlertBoundary hresult (ptr);" & _

«SetRate hresult (long);" & _

«GetRate hresult (ptr);" & _

«SetVolume hresult (ushort);" & _

«GetVolume hresult (ptr);" & _

«WaitUntilDone hresult (ulong);" & _

«SetSyncSpeakTimeout hresult (ulong);" & _

«GetSyncSpeakTimeout hresult (ptr);" & _

«SpeakCompleteEvent hresult ();" & _

«IsUISupported hresult (ptr; ptr; ptr; ptr);" & _

«DisplayUI hresult (hwnd; ptr; ptr; ptr; ulong);»

Opt («GUICoordMode», 2)

GUISetBkColor (0X000000)

Global $hGuiWin = GUICreate («Robot from Deeman», 550, 200)

GUISetBkColor (0x000000, $hGuiWin)

GUICtrlCreatePic('5.jpg’, 0, 0, 0, 0)

GUICtrlSetState (-1, $GUI_DISABLE)

$Input_1 = GUICtrlCreateInput («Hello, from Deeman!», 35, 55, 480, 40)

$Button_1 = GUICtrlCreateButton («Start Talk», -270, 30, 70)

GUISetState ()

While 1

$msg = GUIGetMsg ()

Select

Case $msg = $GUI_EVENT_CLOSE

ExitLoop

Case $msg = $Button_1

$oSpVoice = ObjCreateInterface ($CLSID_SpVoice, $IID_ISpVoice, $sSpVoice)

$oSpVoice.SetRate (-3)

$text = GUICtrlRead ($Input_1)

$oSpVoice. speak ($text, $SPF_DEFAULT, 0)

EndSelect

WEnd

EndFunc;==> Deeman

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

Deeman ()

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

Func Deeman ()

Дальше 4 строчки, которые назначают константы локальными, это как набор символов или алфавит, чтото постоянное в общем!

Local Const $CLSID_SpVoice =» {96749377-3391-11D2—9EE3—00C04F797396}»; Этот кусочек пишется с тем что выше вместе!


Local Const $IID_ISpVoice =» {6C44DF74—72B9-4992-A1EC-EF996E0422D4}»


Local Const $SPF_DEFAULT = 0


Local Const $sSpVoice = «SetNotifySink hresult (ptr)» & _

не 6уду вникать в детали, тут можно мозг поламать, но переменные впринципе как и функции можно называть разными (желательно краткими) именами, это тоже делается для облегчения и запоминания, каждая переменная для какойто комманды присваивается в той же строке, ну в общем идём дальше. А дальше идёт длинный набор комманд, которые наша программа передаёт прямо на компьютер, тоесть она указывает компьютеру что нужно делать, а именно подключения голосовых функций робота (если таковой имеется), у меня мужской голос на компьютере стандартный, у вас может быть другой голос инопланетянина какогото. Последняя комманда!

«DisplayUI hresult (hwnd; ptr; ptr; ptr; ulong);»

Дальше идут стандартные комманды нашей программы, строка!

Opt («GUICoordMode», 2)

назначает координатный режим, чтото типа того, строка!

GUISetBkColor (0X000000)

задаёт цвет фона, в нашем случае чёрный цвет. Дальше строка!

Global $hGuiWin = GUICreate («Robot from Deeman», 550, 200)

в этой строке переменная $hGuiWin назначается глобальной (Global) и программа создаёт окошко программы (GUI) под названием «Robot from Deeman», и устанавливает размер окошка 550 на 200, 550 длина (горизонталь), 200 высота (вертикаль). Эта строка лишняя впринципе, но если мы будем добавлять больше функций, кнопок или окошек в программе то она может пригодится, так как мы в ней добавляем переменную GUISetBkColor (0x000000, $hGuiWin), которая назначалась глобальной и на неё можно прописывать и кнопки разные и всякие инпуты (строчки для ввода текста). Эта строка не обязательна, но я решил добавить и обьясню вам что она делает!

GUICtrlCreatePic('5.jpg’, 0, 0, 0, 0)

если вы поместите в папку вместе с нашей программой фотографию под названием 5 с расширением jpg, то у вас на фоне программы вместо чёрного цвета появится фотка под названием 5.jpg, дальше идут 4 нуля через запятую, это координаты, означающие, что наша фотография будет размещена по углам программы, тоесть на весь размер нашего окошка программы, который сейчас чёрный. Некоторые строчки я буду пропускать, такие как!

GUICtrlSetState (-1, $GUI_DISABLE)

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

$Input_1 = GUICtrlCreateInput («Hello, from Deeman!», 35, 55, 480, 40)

создаёт переменную под названием $Input_1 для поля ввода текста, потом создаёт само поле для ввода текста (комманд, которые вы будете вписывать для робота, что б он их говорил), и в поле для ввода текста я напишу для вас уже готовый краткий текст Hello, from Deeman привет от меня кароче ну и размеры этого поля для ввода в 4ре цифры. Следующая строчка

$Button_1 = GUICtrlCreateButton («Start Talk», -150, 30, 70)

создаёт кнопку под названием Start Talk (начать говорить), размеры в 3 цифры ну и спереди приписуется переменная для этой кнопки под названием $Button_1 (кнопка 1).

Слкдующая строка!

GUISetState ()

это начало показа нашей программы (запуск можно сказать).

Следующая строка!

While 1

начало цикла!

Сделующая строка!

$msg = GUIGetMsg ()

программа получает сообщение, и переменная прописуется к этой комманде для дальшейшей работы! Следующая строка!

Select

возможность выборочного режима. Следующая строка!

Case $msg = $GUI_EVENT_CLOSE

2 строки назад мы именно для этого действия и прописали переменную $msg, для того, что б сейчас сказать программе, $GUI_EVENT_CLOSE тоесть когда мы нажмём кнопку справа вверху х крестик в общем для закрытия программы, тогда программа закроется.

ExitLoop

выход из первого цикла. Следующая строка!

Case $msg = $Button_1

тут начало кнопки и переменная, для того что б она понимала комманды по нажатию нашей кнопки под названием Start Talk. Дальше пишем комманды для нашей кнопки, а именно что б после её нажатия наш робот говорил наш вписаный текст тут 4 комманды!

$oSpVoice = ObjCreateInterface ($CLSID_SpVoice, $IID_ISpVoice, $sSpVoice)

$oSpVoice.SetRate (-3)

$text = GUICtrlRead ($Input_1)

$oSpVoice. speak ($text, $SPF_DEFAULT, 0)

указую роботу что б он произносил вписаный нами текст для него. Следующая строка!

EndSelect

конец выборочного режима. Следующая строчка!

WEnd

конец цикла, работы программы. Следующая строка!

EndFunc;==> Deeman

конец функции под названием Deeman и конец всей программы!

Мы создали программу, которая по вводу вашего текста после нажатия на кнопку будет говорить текст. Чуть не забыл сказать, тут в программе есть еще один ньюанс, настройка в общем, строка!

$oSpVoice.SetRate (-3)

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

******************************************************************************

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

FLOOD BOT FROM DEEMAN!

#include <GUIConstantsEx.au3>

#include <GDIPlus.au3>

Бесплатный фрагмент закончился.

Купите книгу, чтобы продолжить чтение.