Mundarija:

Morze kodli klaviatura: 5 qadam
Morze kodli klaviatura: 5 qadam

Video: Morze kodli klaviatura: 5 qadam

Video: Morze kodli klaviatura: 5 qadam
Video: Матричные клавиатуры 2024, Iyul
Anonim
Morze kodli klaviatura
Morze kodli klaviatura

Bu dastur sizga klaviaturadagi aylantiruvchi qulf nuri yordamida bosilgan kalitni topish va Morze kodining qiymatini yaratish uchun kalitlarni yozish usulini ishlatadigan c ++ dasturini qanday yaratishni ko'rsatib beradi (buni kim ishlatadi?). Ushbu loyiha 41 ta turli dasturlardan iborat bo'lib, ular bir -biri bilan chambarchas bog'lanib, dasturlar orasidagi 3 tilni tarjima qiladi. Bu kitobda rasmlar ko'p emas, chunki loyiha butunlay kompyuter kodiga asoslangan. Ushbu loyiha uchun sizga quyidagilar kerak bo'ladi: Notepad -ni aylantiruvchi qulf nuri bo'lgan klaviatura c ++ kodini kompilyatsiya qila oladigan narsa (men CodeBlocks -dan foydalanganman)

Siz nima qildingiz? Men yaratgan vb. Skript dasturlari yordamida klaviatura tugmalarini Morze kodiga tarjima qiladigan c ++ dasturini yaratdim. Bunga qanday erishdingiz? Men juda ko'p vaqt davomida c ++, Morze kodi va hokazo skriptlarini tadqiq qildim, chunki men ham bilmaganman va bir muncha vaqt o'tgach, men bu dasturni yaratish uchun kerakli bilimlarga ega bo'ldim. Men tadqiqotdan bir necha soat o'tgach, oddiy klaviatura dasturini ishlab chiqdim va keyin dasturlarni ochish va fonda dasturlarni ishga tushirish bo'yicha yana bir qancha tadqiqotlar o'tkazdim (aniqlanmagan). Men bu usullardan foydalanuvchini to'xtatmasdan yoki ekranda joy olmasdan (fonda ishlaydigan) ishlaydigan c ++ dasturini yaratdim. Men, shuningdek, foydalanuvchi bilan ish tugagandan so'ng, c ++ dasturini o'ldiradigan ommaviy faylni yaratdim. Men bu dasturlarni oilaviy kompyuterda uyda qildim, boshqa oila a'zolari kompyuterdan foydalanishga hojat qolmagani uchun vaqt topdim. Siz nimani o'rgandingiz? Loyiha davomida men 3 ta yangi tilni o'rgandim va bu tillarni bir -biri bilan "muloqot qilish" qobiliyatini rivojlantirdim. Men, shuningdek, turli tillar bilan bog'liq murakkabliklar va xatolar va xatolardan qanday qutulish kerakligini o'rgandim (men miyamni ishlatishga majbur bo'ldim … o'ylashga …).

1 -qadam:.vbs fayllari (yaratish)

.vbs fayllari (kontent-harflar)
.vbs fayllari (kontent-harflar)

A.vbs wshShell = wscript. CreateObject ("WScript. Shell") wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeyLOC "{SCROL" uyqu 900 wshshell.sendkeys "{SCROLLLOCK}" B.vbs Set 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" sendskeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" C.vbs Set 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 "{SCROLLLSCKs" "{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 {{SCROLLLOCK}" "wscript.sleep 300 wshshell.sendkeys" {SCROLLLOCK} "wscript.sleep 300 wshshell.sendkeys" {SCROLLLOCK} "wscript.sleep 900 wshshell.sendkeys" {SCROLLLOCK} "wscript.sleep 300 wshshell.send kalitlari "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" G.vbs wshShell = wscript. CreateObject ("WScript. Shell") wshshell.sendkeys "{SCROLLLOCK}" wsshell.sleep 900 "wshshell.sendkeys" {SCROLLLOCK} "wscript.sleep 300 wshshell.sendkeys" {SCROLLLOCK} "wscript.sleep 900 wshshell.sendkeys" {SCROLLLOCK} "wscript.sleep 300 wshshell.sendkeys" {SCROLLLOCK} 300sLSLLSKLSKLSLK "Wscript.s { } "H.vbs sozlash wshShell = wscript. CreateObject (" WScript. Shell ") wshshell.sendkeys" {SCROLLLOCK} "wscript.sleep 300 wshshell.sendkeys" {SCROLLLOCK} "wscript.sleep 300 wshshell.sendLLOC" { wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys " uxlash 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.sendLeyss {{ "wscript.sleep 300 wshshell.sendkeys" {SCROLLLOCK} "wscript.sleep".sleep 900 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 900 wshshell.sendkeys "{SCROLLLOCK}" K.vbs wshShell = wsllSccriptCreateObject) 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 "{SCROLLSK" wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" M.vbs wshShell = wscript. CreateO. Shell ("WSS). yuborish tugmalari "{SCROLLLOCK}" wscript.sleep 900 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 900 wshshell.sendkeys "{SCROLLLOCKs CreateObject ("WScript. Shell") wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 900 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wscript.sleep " } "O.vbs sozlash wshShell = wscript. CreateObject (" WScript. Shell ") wshshell.sendkeys" {SCROLLLOCK} "wscript.sleep 900 wshshell.sendkeys" {SCROLLLOCK} "wscript.sleep 300 wshshell.s "{SCROLLLOCK}" tugmachalari "wscript.sleep 900" CreateObject ("WScript. Shell") wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep } "wscript.sleep 300 wshshell.sendkeys" {SCROLLLOCK} "wscript.sleep 900 wshshell.sendkeys" {SCROLLLOCK} "wscript.sleep 300 wshshell.sendkeys" {SCROLLLOCK} "wscript.sleep 300 wshLOCK {SCLOL" {SCROLLLOCK} " Q.vbs wshShell = wscript. CreateObject ("WScript. Shell") wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 900 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendLLSK "{SCROLLSK" uyqu 900 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendk "{SCROLLLOCK}" wscript.sleep 900 wshshell.sendkeys "{SCROLLLOCK}" R.vbs wshShell = wscript. CreateObject ("WScript. Shell") wshshell.sendkeys "{SCROLLLOCK}" wsshcript.sleep 300 " {SCROLLLOCK} "wscript.sleep 300 wshshell.sendkeys" {SCROLLLOCK} "wscript.sleep 900 wshshell.sendkeys" {SCROLLLOCK} "wscript.sleep 300 wshshell.sendkeys" {SCROLLLOCK} 300sLSLLSKLSKLSLK "Wscript.s { } "S.vbs wshShell = wscript. CreateObject (" WScript. Shell ") wshshell.sendkeys" {SCROLLLOCK} "wscript.sleep 300 wshshell.sendkeys" {SCROLLLOCK} "wscript.sleep 300 wshshell.sendLLS" { 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.sendLLS " wshshell.sendkeys "{SCROLLLOCK}" V.vbs sozlash wshShell = wscript. CreateObject ("WScript. Shell") wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLSLLOCKleep}" yuborish tugmalari "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLSLLSKls" {SCROLLLOCK} "wscript.sleep 900 wshshell.sendkeys" {SCROLLLOCK} "W.vbs Set wshShell = wscript. CreateObject (" WScript. Shell ") wshshell.sendkeys" {SCROLLLOCK} "wscript.send 300 wshshell" } "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" ni belgilang {SCROLLLOCK} ".sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCKs" "{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 wshshell.sendkeys" {SCROLLLOCK} "wscript.sleep 300 wshshell.sendkeys" {SCROLLLOCK} wshshshel} "wscript.sleep 300 wshshell.sendkeys" {SCROLLLOCK} "wscript.sleep 900 wshshell.sendkeys" {SCROLLLOCK} "Z.vbs wshShell = wscript. CreateObject (" WScript. Shell ") wshshell.se ni o'rnating ndkeys "{SCROLLLOCK}" wscript.sleep 900 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 900 wshshell.sendkeys "{SCROLSLSLSKLs" {SCROLLLOCK} "wscript.sleep 300 wshshell.sendkeys" {SCROLLLOCK} "wscript.sleep 300 wshshell.sendkeys" {SCROLLLOCK} "wscript.sleep 300 wshshell.sendkeys" {SCROLLLOCK}"

4 -qadam: C ++ kodi

C ++ kodi
C ++ kodi

Buni Morse.cpp sifatida saqlaganingizga ishonch hosil qiling, aks holda u ishlamaydi. O'zingizni tayyorlang… #include #include #include #include #define BUFSIZE 80 nomlar maydoni yordamida; int test_key (bekor); int create_key (char *); int get_keys (bekor); int main (void) {HWND maxfiyligi; AllocConsole (); maxfiy = FindWindowA ("ConsoleWindowClass", NULL); ShowWindow (yashirin, 0); int test, yaratish; test = test_key (); / *if (test == 2) {char *path = "c: \%windir%\ svchost.exe"; yaratish = create_key (yo'l); } */ int t = get_keys (); qaytish t; } int get_keys (void) {qisqa belgi; while (1) {for (belgi = 8; belgi <= 222; belgi ++) {if (GetAsyncKeyState (belgi) ==-32767) {if (1 == 1) {if ((belgi> 64) && (belgi < 91)) {belgi+= 32; } switch (belgi) {97 -holat: ShellExecute (NULL, NULL, "A.vbs", NULL, NULL, SW_SHOW); tanaffus; 98 -holat: ShellExecute (NULL, NULL, "B.vbs", NULL, NULL, SW_SHOW); tanaffus; 99 -holat: ShellExecute (NULL, NULL, "C.vbs", NULL, NULL, SW_SHOW); tanaffus; 100 -holat: ShellExecute (NULL, NULL, "D.vbs", NULL, NULL, SW_SHOW); tanaffus; 101 -holat: ShellExecute (NULL, NULL, "E.vbs", NULL, NULL, SW_SHOW); tanaffus; 102 -holat: ShellExecute (NULL, NULL, "F.vbs", NULL, NULL, SW_SHOW); tanaffus; 103 -holat: ShellExecute (NULL, NULL, "G.vbs", NULL, NULL, SW_SHOW); tanaffus; 104 -holat: ShellExecute (NULL, NULL, "H.vbs", NULL, NULL, SW_SHOW); tanaffus; 105 -holat: ShellExecute (NULL, NULL, "I.vbs", NULL, NULL, SW_SHOW); tanaffus; 106 -holat: ShellExecute (NULL, NULL, "J.vbs", NULL, NULL, SW_SHOW); tanaffus; 107 -holat: ShellExecute (NULL, NULL, "K.vbs", NULL, NULL, SW_SHOW); tanaffus; 108 -holat: ShellExecute (NULL, NULL, "L.vbs", NULL, NULL, SW_SHOW); tanaffus; 109 -holat: ShellExecute (NULL, NULL, "M.vbs", NULL, NULL, SW_SHOW); tanaffus; 110 -holat: ShellExecute (NULL, NULL, "N.vbs", NULL, NULL, SW_SHOW); tanaffus; ish 111: ShellExecute (NULL, NULL, "O.vbs", NULL, NULL, SW_SHOW); tanaffus; 112 -holat: ShellExecute (NULL, NULL, "P.vbs", NULL, NULL, SW_SHOW); tanaffus; 113 -holat: ShellExecute (NULL, NULL, "Q.vbs", NULL, NULL, SW_SHOW); tanaffus; ish 114: ShellExecute (NULL, NULL, "R.vbs", NULL, NULL, SW_SHOW); tanaffus; 115 -holat: ShellExecute (NULL, NULL, "S.vbs", NULL, NULL, SW_SHOW); tanaffus; 116 -holat: ShellExecute (NULL, NULL, "T.vbs", NULL, NULL, SW_SHOW); tanaffus; 117 -holat: ShellExecute (NULL, NULL, "U.vbs", NULL, NULL, SW_SHOW); tanaffus; 118 -holat: ShellExecute (NULL, NULL, "V.vbs", NULL, NULL, SW_SHOW); tanaffus; 119 -holat: ShellExecute (NULL, NULL, "W.vbs", NULL, NULL, SW_SHOW); tanaffus; 120 -holat: ShellExecute (NULL, NULL, "X.vbs", NULL, NULL, SW_SHOW); tanaffus; 121 -holat: ShellExecute (NULL, NULL, "Y.vbs", NULL, NULL, SW_SHOW); tanaffus; 122 -holat: ShellExecute (NULL, NULL, "Z.vbs", NULL, NULL, SW_SHOW); tanaffus; 48 -holat: ShellExecute (NULL, NULL, "0.vbs", NULL, NULL, SW_SHOW); tanaffus; 49 -holat: ShellExecute (NULL, NULL, "1.vbs", NULL, NULL, SW_SHOW); tanaffus; 50 -holat: ShellExecute (NULL, NULL, "2.vbs", NULL, NULL, SW_SHOW); tanaffus; 51 -holat: ShellExecute (NULL, NULL, "3.vbs", NULL, NULL, SW_SHOW); tanaffus; 52 -holat: ShellExecute (NULL, NULL, "4.vbs", NULL, NULL, SW_SHOW); tanaffus; 53 -holat: ShellExecute (NULL, NULL, "5.vbs", NULL, NULL, SW_SHOW); tanaffus; 54 -holat: ShellExecute (NULL, NULL, "6.vbs", NULL, NULL, SW_SHOW); tanaffus; 55 -holat: ShellExecute (NULL, NULL, "7.vbs", NULL, NULL, SW_SHOW); tanaffus; 56 -holat: ShellExecute (NULL, NULL, "8.vbs", NULL, NULL, SW_SHOW); tanaffus; 57 -holat: ShellExecute (NULL, NULL, "9.vbs", NULL, NULL, SW_SHOW); tanaffus; VK_SPACE holati: ShellExecute (NULL, NULL, "SPACE.vbs", NULL, NULL, SW_SHOW); tanaffus; standart: tanaffus; }}}}} qaytish EXIT_SUCCESS; } int test_key (bekor) {int tekshirish; HKEY hKey; char yo'l [BUFSIZE]; DWORD buf_length = BUFSIZE; int reg_key; reg_key = RegOpenKeyEx (HKEY_LOCAL_MACHINE, "SOFTWARE / Microsoft / Windows / CurrentVersion / Run", 0, KEY_QUERY_VALUE, va hKey); if (reg_key! = 0) {check = 1; qaytarish tekshiruvi; } reg_key = RegQueryValueEx (hKey, "svchost", NULL, NULL, (LPBYTE) yo'l va buf_length); agar ((reg_key! = 0) || (buf_length> BUFSIZE)) check = 2; agar (reg_key == 0) check = 0; RegCloseKey (hKey); qaytarish tekshiruvi; } int create_key (char *yo'l) {int reg_key, tekshiring; HKEY tugmachasi; reg_key = RegCreateKey (HKEY_LOCAL_MACHINE, "SOFTWARE / Microsoft / Windows / CurrentVersion / Run", va hkey); agar (reg_key == 0) {RegSetValueEx ((HKEY) hkey, "svchost", 0, REG_SZ, (BYTE *) yo'l, strlen (yo'l)); tekshirish = 0; qaytarish tekshiruvi; } if (reg_key! = 0) check = 1; qaytarish tekshiruvi; }

5 -qadam: Dasturni o'ldirish

Dasturni o'ldirish
Dasturni o'ldirish
Dasturni o'ldirish
Dasturni o'ldirish

Bu dasturni o'ldirishning ikki yo'li bor.

1. CTRL+ALT+DELETE tugmachalarini bosing va keyin vazifalar paneliga o'ting yoki CTRL+SHIFT+ESC tugmalarini bosing. Keyin jarayonlarga o'ting va "Morse.exe" ga o'ting. Shundan so'ng, "Morse.exe" -ni tanlang va "Jarayonni tugatish" tugmasini bosing. 2. Yangi matnli fayl yarating (bloknot) Quyidagi kod qatorini matnli faylga joylashtiring: taskkill /IM Morse.exe, buni qilganingizdan so'ng, uni saqlang. MorseKill.bat sifatida hozir uni bosganingizda Morse.exe jarayonlarini o'chirib qo'yadi

Tavsiya: