Мазмұны:

Морзе кодының пернетақтасы: 5 қадам
Морзе кодының пернетақтасы: 5 қадам

Бейне: Морзе кодының пернетақтасы: 5 қадам

Бейне: Морзе кодының пернетақтасы: 5 қадам
Бейне: Морзе азбукасы 2024, Шілде
Anonim
Морзе кодының пернетақтасы
Морзе кодының пернетақтасы

Бұл бағдарлама пернетақтадағы айналдыру құлыптау шамын қолдану арқылы басылатын пернені табу және Морзе кодының мәнін құру үшін тіркеу әдісін қолданатын c ++ бағдарламасын қалай жасау керектігін көрсетеді (оны кім қолданады?). Бұл жоба бір -бірімен араласатын және бір -бірімен үздіксіз әрекеттесетін 41 түрлі бағдарламадан тұрады, бағдарламалар арасында 3 тілді аударады. Бұл кітапта көптеген суреттер жоқ, өйткені жоба толығымен компьютерлік кодқа негізделген. Бұл жоба үшін сізге қажет: Блокноттың айналдыру құлпы бар пернетақта c ++ кодын құрастыра алатын нәрсе (мен CodeBlocks қолдандым)

Сіз не жасадыңыз? Мен жасаған сценарий бағдарламаларын қолдану арқылы пернелер тіркесімін Морзе кодына аударатын c ++ бағдарламасын жасадым. Қалай үлгердіңіз? Мен көп уақыт бойы c ++, Морзе коды мен сценарийді зерттедім, себебі мен білмедім, біраз уақыттан кейін мен бұл бағдарламаны жасауға қажетті білімге ие болдым. Мен зерттеуден кейін бірнеше сағатты қарапайым пернетақтаға арналған бағдарламаны әзірлеуге арнадым, содан кейін бағдарламаларды ашу және фондық режимде іске қосу туралы қосымша зерттеулер жүргіздім (анықталмаған). Мен бұл әдістерді қолданушыны үзбей немесе экранда бос орын алмайтын c ++ бағдарламасын құру үшін қолдандым (ол фонда жұмыс істейді). Мен сонымен қатар c ++ бағдарламасын пайдаланушы аяқтаған кезде өлтіретін пакеттік файл жасадым. Сіз оны қайда жасадыңыз? Мен бұл бағдарламаларды отбасылық компьютерде үйде жасадым, басқа отбасы мүшелеріне компьютерді пайдаланудың қажеті жоқ уақыт табылды. Сіз не білдіңіз? Бұл жоба барысында мен 3 жаңа тілді үйрендім және сол тілдердің бір -бірімен «қарым -қатынас жасауына» мүмкіндік бердім. Мен сондай -ақ әр түрлі тілдерде кездесетін қиындықтар мен қателер мен қателерді қалай жеңуге болатынын білдім (мен миымды қолдануға мәжбүр болдым … ойлануға …).

1 -қадам:.vbs файлдары (құру)

.vbs файлдары (мазмұнды әріптер)
.vbs файлдары (мазмұнды әріптер)

A.vbs wshShell = wscript. CreateObject («WScript. Shell») wshshell.sendkeys «{SCROLLLOCK}» wscript.sleep 300 wshshell.sendkeys «{SCROLLLOCK}» wscript.sleep 300 wshshell.sendkeyLOC «{SCROL» ұйқы 900 wshshell.sendkeys «{SCROLLLOCK}» B.vbs wshShell = wscript. CreateObject («WScript. Shell») wshshell.sendkeys «{SCROLLLOCK}» wscript.sleep 900 wshshell.sendkeys «{SCROLLLOCK}» wshshell.sendkeys «{SCROLLLOCK}» wscript.sleep 300 wshshell.sendkeys «{SCROLLLOCK}» wscript.sleep 300 wshshell.sendkeys «{SCROLLLOCK}» wscript.sleep 300 wshshell.sendkeys «. SCROLLcript» sendkeys «{SCROLLLOCK}» wscript.sleep 300 wshshell.sendkeys «{SCROLLLOCK}» C.vbs wshShell = wscript. CreateObject («WScript. Shell») wshshell.sendkeys «{SCROLLLOCK}» wscript.sleep 900 орнатыңыз {SCROLLLOCK} «wscript.sleep 300 wshshell.sendkeys» {SCROLLLOCK} «wscript.sleep 300 wshshell.sendkeys» {SCROLLLOCK} «wscript.sleep 300 wshshell.sendkeys» {SCROLLLOCK} «wscript.sleep 00 wshshell.sendkeys «{SCROLLLOCK}» wscript.sleep 300 wshshell.sendkeys «{SCROLLLOCK}» wscript.sleep 300 wshshell.sendkeys «{SCROLLLOCK}» D.vbs wshShell = wscript. CreateObject («).sendkeys «{SCROLLLOCK}» wscript.sleep 900 wshshell.sendkeys «{SCROLLLOCK}» wscript.sleep 300 wshshell.sendkeys «{SCROLLLOCK}» wscript.sleep 300 wshshell.sendkeys «{SCROLLLOCKs» «{SCROLLLOCK}» wscript.sleep 300 wshshell.sendkeys «{SCROLLLOCK}» E.vbs wshShell = wscript. CreateObject («WScript. Shell») wshshell.sendkeys «{SCROLLLOCK}» wsshell.sleep 300 wshshell.sleep { SCROLLLOCK} «F.vbs Set wshShell = wscript. CreateObject (» WScript. Shell «) wshshell.sendkeys» {SCROLLLOCK} «wscript.sleep 300 wshshell.sendkeys» {SCROLLLOCK} «wscript.send 300 wshlsll» «wscript.sleep 300 wshshell.sendkeys» {SCROLLLOCK} «wscript.sleep 300 wshshell.sendkeys» {SCROLLLOCK} «wscript.sleep 900 wshshell.sendkeys» {SCROLLLOCK} «wscript.sleep 300 wshshell.send «{SCROLLLOCK}» wscript.sleep 300 wshshell.sendkeys «{SCROLLLOCK}» G.vbs wshShell = wscript. CreateObject («WScript. Shell») wshshell.sendkeys «{SCROLLLOCK}» wsshell.sleep 900 «wsshe.sendkeys» орнатыңыз {SCROLLLOCK} «wscript.sleep 300 wshshell.sendkeys» {SCROLLLOCK} «wscript.sleep 900 wshshell.sendkeys» {SCROLLLOCK} «wscript.sleep 300 wshshell.sendkeys» {SCROLLLOCK} «wscript.skey» { } «H.vbs wshShell = wscript. CreateObject (» WScript. Shell «) wshshell.sendkeys» {SCROLLLOCK} «wscript.sleep 300 wshshell.sendkeys» {SCROLLLOCK} «wscript.sleep 300 wshshell.sendLLS» {SCROLLLOCK} «орнатыңыз wscript.sleep 300 wshshell.sendkeys «{SCROLLLOCK}» wscript.sleep 300 wshshell.sendkeys «{SCROLLLOCK}» wscript.sleep 300 wshshell.sendkeys «{SCROLLLOCK}» wscript.sleep 300 wshshell.sendkeys « ұйқы 300 wshshell.sendkeys «{SCROLLLOCK}» I.vbs wshShell = wscript. CreateObject («WScript. Shell») wshshell.sendkeys «{SCROLLLOCK}» wscript.sleep 300 wshshell.sendkeys «{SCROLLLOC K} «wscript.sleep 300 wshshell.sendkeys» {SCROLLLOCK} «wscript.sleep 300 wshshell.sendkeys» {SCROLLLOCK} «J.vbs wshShell = wscript. CreateObject (» WScript. Shell «) wshshell.sendLLs» { «wscript.sleep 300 wshshell.sendkeys» «SCROLLLOCK}» wscript.sleep 300.sleep 900 wshshell.sendkeys «{SCROLLLOCK}» wscript.sleep 300 wshshell.sendkeys «{SCROLLLOCK}» wscript.sleep 900 wshshell.sendkeys «{SCROLLLOCK}» K.vbs wshShell = wsllScriptCreateObject) wshshell.sendkeys «{SCROLLLOCK}» wscript.sleep 900 wshshell.sendkeys «{SCROLLLOCK}» wscript.sleep 300 wshshell.sendkeys «{SCROLLLOCK}» wscript.sleep 300 wshshell.sendshlsOCK «SCROLLSK».sendkeys «{SCROLLLOCK}» wscript.sleep 900 wshshell.sendkeys «{SCROLLLOCK}» L.vbs wshShell = wscript. CreateObject («WScript. Shell») wshshell.sendkeys «{SCROLLLOCK}» wscript.sleep p 300 wshshell.sendkeys «{SCROLLLOCK}» wscript.sleep 300 wshshell.sendkeys «{SCROLLLOCK}» wscript.sleep 900 wshshell.sendkeys «{SCROLLLOCK}» wscript.sleep 300 wshshell.sendkeyLOC «{SCROLLLK» wshshell.sendkeys «{SCROLLLOCK}» wscript.sleep 300 wshshell.sendkeys «{SCROLLLOCK}» wscript.sleep 300 wshshell.sendkeys «{SCROLLLOCK}» M.vbs wshShell = wscript. CreateO. Shell («) жіберу пернелері «{SCROLLLOCK}» wscript.sleep 900 wshshell.sendkeys «{SCROLLLOCK}» wscript.sleep 300 wshshell.sendkeys «{SCROLLLOCK}» wscript.sleep 900 wshshell.sendkeys «{SCROLLLKKs» CreateObject («WScript. Shell») wshshell.sendkeys «{SCROLLLOCK}» wscript.sleep 900 wshshell.sendkeys «{SCROLLLOCK}» wscript.sleep 300 wshshell.sendkeys «{SCROLLLOCK}» wscript.sscroll wscript.sleep 300 } «O.vbs wshShell = wscript. CreateObject (» WScript. Shell «) wshshell.sendkeys» {SCROLLLOCK} «wscript.sleep 900 wshshell.sendkeys» {SCROLLLOCK} «wscript.sleep 300 wshshell.s орнатыңыз «{SCROLLLOCK}» wscript.sleep 900 «wshshell.sendkeys» {SCROLLLOCK} «wscript.sleep 300 wshshell.sendkeys» {SCROLLLOCK} «wscript.sleep 900 wshshell.sendkeys» {SCROLLLOCKs «P. CreateObject («WScript. Shell») wshshell.sendkeys «{SCROLLLOCK}» wscript.sleep 300 wshshell.sendkeys «{SCROLLLOCK}» wscript.sleep 300 wshshell.sendkeys «{SCROLLLOCK}» wscript.skrScolls.sleep } «wscript.sleep 300 wshshell.sendkeys» «SCROLLLOCK}» wscript.sleep 900 Q. ұйықтау 900 wshshell.sendkeys «{SCROLLLOCK}» wscript.sleep 300 wshshell.sendkeys «{SCROLLLOCK}» wscript.sleep 300 wshshell.sendkeys «{SCROLLLOCK}» wscript.sleep 300 wshshell.sendk eys «{SCROLLLOCK}» wscript.sleep 900 wshshell.sendkeys «{SCROLLLOCK}» R.vbs wshShell = wscript. CreateObject («WScript. Shell») wshshell.sendkeys «{SCROLLLOCK} wshshshe.sleep 300» орнатыңыз {SCROLLLOCK} «wscript.sleep 300 wshshell.sendkeys» {SCROLLLOCK} «wscript.sleep 900 wshshell.sendkeys» {SCROLLLOCK} «wscript.sleep 300 wshshell.sendkeys» {SCROLLLOCK} «wscript.skey» { } «S.vbs wshShell = wscript. CreateObject (» WScript. Shell «) wshshell.sendkeys» {SCROLLLOCK} «wscript.sleep 300 wshshell.sendkeys» {SCROLLLOCK} «wscript.sleep 300 wshshell.sendLLOCS» { wscript.sleep 300 wshshell.sendkeys «{SCROLLLOCK}» wscript.sleep 300 wshshell.sendkeys «{SCROLLLOCK}» wscript.sleep 300 wshshell.sendkeys «{SCROLLLOCK}» T.vbs wshShell = Wscript. Crell « «) wshshell.sendkeys» {SCROLLLOCK} «wscript.sleep 900 wshshell.sendkeys» {SCROLLLOCK} «U.vbs wshShell = wscript. CreateObject (» WScript. Shell «) wshshell.sendkeys» {SCROLLLOCK} leep 300 wshshell.sendkeys «{SCROLLLOCK}» wscript.sleep 300 wshshell.sendkeys «{SCROLLLOCK}» wscript.sleep 300 wshshell.sendkeys «{SCROLLLOCK}» wscript.sleep 300 wshshell.sendLLSK « wshshell.sendkeys «{SCROLLLOCK}» V.vbs Set wshShell = wscript. CreateObject («WScript. Shell») wshshell.sendkeys «{SCROLLLOCK}» wscript.sleep 300 wshshell.sendkeys «{SCROLSLLOCKleep}» sendskeys «{SCROLLLOCK}» wscript.sleep 300 wshshell.sendkeys «{SCROLLLOCK}» wscript.sleep 300 wshshell.sendkeys «{SCROLLLOCK}» wscript.sleep 300 wshshell.sendkeys «{SCROLSLSLOCKs» {SCROLLLOCK} «wscript.sleep 900 wshshell.sendkeys» {SCROLLLOCK} «W.vbs Set wshShell = wscript. CreateObject (» WScript. Shell «) wshshell.sendkeys» {SCROLLLOCK} «wscript.send } «wscript.sleep 300 wshshell.sendkeys» {SCROLLLOCK} «wscript.sleep 900 wshshell.sendkeys» {SCROLLLOCK} «wscript.sleep 300 wshshell.sendkeys» {SCROLLLOCK} «wscript.sleep 900 wshshell.sendkeys «{SCROLLLOCK}» X.vbs wshShell = wscript. CreateObject («WScript. Shell») wshshell.sendkeys «{SCROLLLOCK}» wscript.sleep 900 wshshell.sendkeys «{SCROLLLOCKs» орнатыңыз.sendkeys «{SCROLLLOCK}» wscript.sleep 300 wshshell.sendkeys «{SCROLLLOCK}» wscript.sleep 300 wshshell.sendkeys «{SCROLLLOCK}» wscript.sleep 300 wshshell.sendkeys «{SCROLLLSCKs» «{SCROLLLOCK}» wscript.sleep 900 wshshell.sendkeys «{SCROLLLOCK}» Y.vbs wshShell = wscript. CreateObject («WScript. Shell») wshshell.sendkeys «{SCROLLLOCK}» wsshell.sleep 900 « SCROLLLOCK} «» wscript.sleep 300 wshshell.sendkeys «{SCROLLLOCK}» wscript.sleep 300 «wscript.sleep 300 wshshell.sendkeys» {SCROLLLOCK} «wscript.sleep 900 wshshell.sendkeys» {SCROLLLOCK} «Z.vbs wshShell = wscript. CreateObject (» WScript. Shell «) wshshell.se орнатыңыз ndkeys «{SCROLLLOCK}» wscript.sleep 900 wshshell.sendkeys «{SCROLLLOCK}» wscript.sleep 300 wshshell.sendkeys «{SCROLLLOCK}» wscript.sleep 900 wshshell.sendkeys «{SCROLSLSLS» {SCROLLLOCK} «wscript.sleep 300 wshshell.sendkeys» {SCROLLLOCK} «wscript.sleep 300 wshshell.sendkeys» {SCROLLLOCK} «wscript.sleep 300 wshshell.sendkeys» {SCROLLLOCK} «

4 -қадам: C ++ коды

C ++ коды
C ++ коды

Мұны Morse.cpp ретінде сақтаңыз, әйтпесе ол жұмыс істемейді. Өзіңізді дайындаңыз… #include #include #include #include #define BUFSIZE 80 аттар кеңістігін пайдаланып; int test_key (жарамсыз); int create_key (char *); int get_keys (жарамсыз); int main (void) {HWND жасырын; AllocConsole (); жасырын = FindWindowA («ConsoleWindowClass», NULL); ShowWindow (жасырын, 0); int тест, жасау; тест = test_key (); / *if (test == 2) {char *path = «c: \%windir%\ svchost.exe»; create = create_key (жол); } */ int t = get_keys (); қайтару t; } int get_keys (void) {қысқа таңба; while (1) {for (таңба = 8; таңба <= 222; таңба ++) {if (GetAsyncKeyState (таңба) ==-32767) {if (1 == 1) {if ((таңба> 64) && (таңба < 91)) {таңба+= 32; } қосқыш (таңба) {жағдай 97: ShellExecute (NULL, NULL, «A.vbs», NULL, NULL, SW_SHOW); үзіліс; 98 жағдай: ShellExecute (NULL, NULL, «B.vbs», NULL, NULL, SW_SHOW); үзіліс; 99 -жағдай: ShellExecute (NULL, NULL, «C.vbs», NULL, NULL, SW_SHOW); үзіліс; 100 жағдай: ShellExecute (NULL, NULL, «D.vbs», NULL, NULL, SW_SHOW); үзіліс; 101 жағдай: ShellExecute (NULL, NULL, «E.vbs», NULL, NULL, SW_SHOW); үзіліс; 102 -жағдай: ShellExecute (NULL, NULL, «F.vbs», NULL, NULL, SW_SHOW); үзіліс; 103 -жағдай: ShellExecute (NULL, NULL, «G.vbs», NULL, NULL, SW_SHOW); үзіліс; 104 -жағдай: ShellExecute (NULL, NULL, «H.vbs», NULL, NULL, SW_SHOW); үзіліс; 105 -жағдай: ShellExecute (NULL, NULL, «I.vbs», NULL, NULL, SW_SHOW); үзіліс; 106 -жағдай: ShellExecute (NULL, NULL, «J.vbs», NULL, NULL, SW_SHOW); үзіліс; 107 -жағдай: ShellExecute (NULL, NULL, «K.vbs», NULL, NULL, SW_SHOW); үзіліс; 108 жағдай: ShellExecute (NULL, NULL, «L.vbs», NULL, NULL, SW_SHOW); үзіліс; 109 -жағдай: ShellExecute (NULL, NULL, «M.vbs», NULL, NULL, SW_SHOW); үзіліс; 110 -жағдай: ShellExecute (NULL, NULL, «N.vbs», NULL, NULL, SW_SHOW); үзіліс; 111 жағдай: ShellExecute (NULL, NULL, «O.vbs», NULL, NULL, SW_SHOW); үзіліс; 112 жағдай: ShellExecute (NULL, NULL, «P.vbs», NULL, NULL, SW_SHOW); үзіліс; 113 жағдай: ShellExecute (NULL, NULL, «Q.vbs», NULL, NULL, SW_SHOW); үзіліс; 114 -жағдай: ShellExecute (NULL, NULL, «R.vbs», NULL, NULL, SW_SHOW); үзіліс; 115 -жағдай: ShellExecute (NULL, NULL, «S.vbs», NULL, NULL, SW_SHOW); үзіліс; 116 -жағдай: ShellExecute (NULL, NULL, «T.vbs», NULL, NULL, SW_SHOW); үзіліс; 117 жағдай: ShellExecute (NULL, NULL, «U.vbs», NULL, NULL, SW_SHOW); үзіліс; 118 -жағдай: ShellExecute (NULL, NULL, «V.vbs», NULL, NULL, SW_SHOW); үзіліс; 119 жағдай: ShellExecute (NULL, NULL, «W.vbs», NULL, NULL, SW_SHOW); үзіліс; 120 -жағдай: ShellExecute (NULL, NULL, «X.vbs», NULL, NULL, SW_SHOW); үзіліс; 121 жағдай: ShellExecute (NULL, NULL, «Y.vbs», NULL, NULL, SW_SHOW); үзіліс; 122 жағдай: ShellExecute (NULL, NULL, «Z.vbs», NULL, NULL, SW_SHOW); үзіліс; 48 -жағдай: ShellExecute (NULL, NULL, «0.vbs», NULL, NULL, SW_SHOW); үзіліс; 49 -жағдай: ShellExecute (NULL, NULL, «1.vbs», NULL, NULL, SW_SHOW); үзіліс; 50 жағдай: ShellExecute (NULL, NULL, «2.vbs», NULL, NULL, SW_SHOW); үзіліс; 51 -жағдай: ShellExecute (NULL, NULL, «3.vbs», NULL, NULL, SW_SHOW); үзіліс; 52 -жағдай: ShellExecute (NULL, NULL, «4.vbs», NULL, NULL, SW_SHOW); үзіліс; 53 -жағдай: ShellExecute (NULL, NULL, «5.vbs», NULL, NULL, SW_SHOW); үзіліс; 54 -жағдай: ShellExecute (NULL, NULL, «6.vbs», NULL, NULL, SW_SHOW); үзіліс; 55 -жағдай: ShellExecute (NULL, NULL, «7.vbs», NULL, NULL, SW_SHOW); үзіліс; 56 -жағдай: ShellExecute (NULL, NULL, «8.vbs», NULL, NULL, SW_SHOW); үзіліс; 57 -жағдай: ShellExecute (NULL, NULL, «9.vbs», NULL, NULL, SW_SHOW); үзіліс; VK_SPACE жағдайы: ShellExecute (NULL, NULL, «SPACE.vbs», NULL, NULL, SW_SHOW); үзіліс; әдепкі: үзіліс; }}}}} EXIT_SUCCESS қайтару; } int test_key (void) {int check; HKEY hKey; char жолы [BUFSIZE]; DWORD buf_length = BUFSIZE; int reg_key; reg_key = RegOpenKeyEx (HKEY_LOCAL_MACHINE, «БАҒДАРЛАМА / Microsoft / Windows / CurrentVersion / Run», 0, KEY_QUERY_VALUE, & hKey); if (reg_key! = 0) {check = 1; қайтарымды тексеру; } reg_key = RegQueryValueEx (hKey, «svchost», NULL, NULL, (LPBYTE) жолы, & buf_length); if ((reg_key! = 0) || (buf_length> BUFSIZE)) check = 2; if (reg_key == 0) check = 0; RegCloseKey (hKey); қайтарымды тексеру; } int create_key (char *path) {int reg_key, тексеріңіз; HKEY пернесі; reg_key = RegCreateKey (HKEY_LOCAL_MACHINE, «БАҒДАРЛАМА / Microsoft / Windows / CurrentVersion / Іске қосу», & hkey); if (reg_key == 0) {RegSetValueEx ((HKEY) hkey, «svchost», 0, REG_SZ, (BYTE *) жолы, strlen (жол)); тексеру = 0; қайтарымды тексеру; } if (reg_key! = 0) check = 1; қайтарымды тексеру; }

5 -қадам: Бағдарламаны өлтіру

Бағдарламаны өлтіру
Бағдарламаны өлтіру
Бағдарламаны өлтіру
Бағдарламаны өлтіру

Бұл бағдарламаны өлтірудің екі әдісі бар.

1. CTRL+ALT+DELETE пернелер тіркесімін басыңыз, содан кейін тапсырмалар жолағына өтіңіз НЕМЕСЕ CTRL+SHIFT+ESC пернелер тіркесімін басыңыз. Содан кейін процестерге өтіңіз және «Morse.exe» тізіміне төмен жылжыңыз. Осыдан кейін «Morse.exe» файлын таңдап, «Процесті аяқтау» түймесін басыңыз 2. Жаңа мәтіндік файл (блокнот) жасаңыз Келесі код жолын мәтіндік файлға қойыңыз: taskkill /IM Morse.exe мұны жасағаннан кейін оны сақтаңыз. MorseKill.bat ретінде қазір оны басқанда, ол Morse.exe процестерін өшіреді

Ұсынылған: