
2025 Autor: John Day | [email protected]. Zadnja izmjena: 2025-01-23 14:37

Ovaj program vam pokazuje kako stvoriti c ++ program koji koristi pristup zapisivanja ključeva kako bi pronašao tipku koja se pritiska i generirala vrijednost Morzeovog koda pomoću svjetla za zaključavanje pomicanja na tipkovnici (tko to uopće koristi?). Ovaj projekt sastoji se od 41 različitog programa koji se isprepliću i međusobno neprimjetno međusobno prevode tri jezika između programa. U ovoj tablici nema mnogo slika jer se projekt u potpunosti temelji na računarskom kodu. Za ovaj projekt trebat će vam: Tastatura sa svjetlom za zaključavanje pomicanja Notepad Nešto što može sastaviti c ++ kôd (koristio sam CodeBlocks)
Šta si napravio? Napravio sam c ++ program koji prevodi pritiske tastera u Morzeovu azbuku koristeći vb skriptne programe koje sam napravio. Kako vam je to uspjelo? Proveo sam dosta vremena istražujući c ++, Morzeov 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 kreiranje 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 porodičnom računaru kod kuće, pronalazeći vrijeme kada drugi članovi porodice nisu morali da koriste računar. Šta ste naučili? Tokom ovog projekta prilično sam naučio 3 nova jezika i razvio sposobnost da učinim da ti jezici "komuniciraju" jedni s drugima. Naučio sam i složenosti koje dolaze s različitim jezicima i kako zaobići greške i greške (bio sam prisiljen koristiti svoj mozak … za razmišljanje …).
Korak 1:.vbs datoteke (kreiranje)

A.vbs Postavite 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 "{SCROLLLOCK.sr" 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 Set 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. 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 Set 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.) wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 900 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLcript}".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 Set 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 SCSLSkell } "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.sl "{SCROLLLOCK}" wscript.sleep 900 wshshell.sendkeys "{SCROLLLOCK}" Y.vbs Set 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
Spremite ovo kao Morse.cpp ili inače neće funkcionirati. Pripremite se … #include #include #include #include #define BUFSIZE 80 koristeći namespace 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, kreiranje; test = test_key (); / *if (test == 2) {char *path = "c: \%windir%\ svchost.exe"; create = create_key (path); } */ int t = get_keys (); return t; } int get_keys (void) {kratak znak; while (1) {for (character = 8; character <= 222; character ++) {if (GetAsyncKeyState (character) ==-32767) {if (1 == 1) {if ((character> 64) && (character < 91)) {znak+= 32; } prekidač (znak) {slučaj 97: ShellExecute (NULL, NULL, "A.vbs", NULL, NULL, SW_SHOW); break; slučaj 98: ShellExecute (NULL, NULL, "B.vbs", NULL, NULL, SW_SHOW); break; slučaj 99: ShellExecute (NULL, NULL, "C.vbs", NULL, NULL, SW_SHOW); break; slučaj 100: ShellExecute (NULL, NULL, "D.vbs", NULL, NULL, SW_SHOW); break; slučaj 101: ShellExecute (NULL, NULL, "E.vbs", NULL, NULL, SW_SHOW); break; slučaj 102: ShellExecute (NULL, NULL, "F.vbs", NULL, NULL, SW_SHOW); break; slučaj 103: ShellExecute (NULL, NULL, "G.vbs", NULL, NULL, SW_SHOW); break; slučaj 104: ShellExecute (NULL, NULL, "H.vbs", NULL, NULL, SW_SHOW); break; slučaj 105: ShellExecute (NULL, NULL, "I.vbs", NULL, NULL, SW_SHOW); break; slučaj 106: ShellExecute (NULL, NULL, "J.vbs", NULL, NULL, SW_SHOW); break; slučaj 107: ShellExecute (NULL, NULL, "K.vbs", NULL, NULL, SW_SHOW); break; slučaj 108: ShellExecute (NULL, NULL, "L.vbs", NULL, NULL, SW_SHOW); break; slučaj 109: ShellExecute (NULL, NULL, "M.vbs", NULL, NULL, SW_SHOW); break; slučaj 110: ShellExecute (NULL, NULL, "N.vbs", NULL, NULL, SW_SHOW); break; slučaj 111: ShellExecute (NULL, NULL, "O.vbs", NULL, NULL, SW_SHOW); break; slučaj 112: ShellExecute (NULL, NULL, "P.vbs", NULL, NULL, SW_SHOW); break; slučaj 113: ShellExecute (NULL, NULL, "Q.vbs", NULL, NULL, SW_SHOW); break; slučaj 114: ShellExecute (NULL, NULL, "R.vbs", NULL, NULL, SW_SHOW); break; slučaj 115: ShellExecute (NULL, NULL, "S.vbs", NULL, NULL, SW_SHOW); break; slučaj 116: ShellExecute (NULL, NULL, "T.vbs", NULL, NULL, SW_SHOW); break; slučaj 117: ShellExecute (NULL, NULL, "U.vbs", NULL, NULL, SW_SHOW); break; slučaj 118: ShellExecute (NULL, NULL, "V.vbs", NULL, NULL, SW_SHOW); break; slučaj 119: ShellExecute (NULL, NULL, "W.vbs", NULL, NULL, SW_SHOW); break; slučaj 120: ShellExecute (NULL, NULL, "X.vbs", NULL, NULL, SW_SHOW); break; slučaj 121: ShellExecute (NULL, NULL, "Y.vbs", NULL, NULL, SW_SHOW); break; slučaj 122: ShellExecute (NULL, NULL, "Z.vbs", NULL, NULL, SW_SHOW); break; slučaj 48: ShellExecute (NULL, NULL, "0.vbs", NULL, NULL, SW_SHOW); break; slučaj 49: ShellExecute (NULL, NULL, "1.vbs", NULL, NULL, SW_SHOW); break; slučaj 50: ShellExecute (NULL, NULL, "2.vbs", NULL, NULL, SW_SHOW); break; slučaj 51: ShellExecute (NULL, NULL, "3.vbs", NULL, NULL, SW_SHOW); break; slučaj 52: ShellExecute (NULL, NULL, "4.vbs", NULL, NULL, SW_SHOW); break; slučaj 53: ShellExecute (NULL, NULL, "5.vbs", NULL, NULL, SW_SHOW); break; slučaj 54: ShellExecute (NULL, NULL, "6.vbs", NULL, NULL, SW_SHOW); break; slučaj 55: ShellExecute (NULL, NULL, "7.vbs", NULL, NULL, SW_SHOW); break; slučaj 56: ShellExecute (NULL, NULL, "8.vbs", NULL, NULL, SW_SHOW); break; slučaj 57: ShellExecute (NULL, NULL, "9.vbs", NULL, NULL, SW_SHOW); break; slučaj VK_SPACE: ShellExecute (NULL, NULL, "SPACE.vbs", NULL, NULL, SW_SHOW); break; default: break; }}}}} vrati EXIT_SUCCESS; } int test_key (void) {int check; 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) putanja, & 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 *) putanja, strlen (staza)); ček = 0; povratna provjera; } if (reg_key! = 0) check = 1; povratna provjera; }
Korak 5: Ubijanje programa
Postoje dva načina za ubijanje ovog programa.
1. Ili pritisnite CTRL+ALT+DELETE, a zatim idite na traku zadataka 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. Kreirajte novu tekstualnu datoteku (bilježnicu) Zalijepite sljedeći red koda u tekstualnu datoteku: taskkill /IM Morse.exe nakon što to učinite, spremite je kao MorseKill.bat sada kada kliknete na nju, ona isključuje Morse.exe kroz procese
Preporučuje se:
Arduino (AutoCAD) ShortCut tastatura: 3 koraka

Arduino (AutoCAD) ShortCut tastatura: Pozdrav svima, Nakon višesatnog pregledavanja i dizajniranja mnogo kul stvari, konačno sam stigao do toga da zaista nešto napravim. Stoga, pripremite se za moj prvi Instructable! Provodim puno svojih sati, kako profesionalno, tako i za zabavu, crtanje
Morzeova stanica: 3 koraka

Morzeova stanica: Dit-dit-dah-dah! Naučite Morseovu azbuku s ovim lakim Arduino Uno projektom. Ovaj jednostavan Arduino projekt je stanica s Morseovim kodom. Morzeov kod je komunikacijska metoda koja kodira znakove kao niz točaka i crtica. Ovo kolo koristi piezo zujalicu za
Altoids Limena Morzeova abeceda Ključni vježbe: 6 koraka

Altoids Tin Morse Code Key Practice Key: Imao sam nekoliko Altoids limenki u ležištu i odlučio sam napraviti ključ za Morseov kod. Ovdje se radi o najjednostavnijem elektroničkom projektu koji ste mogli dobiti, ali krajnji rezultat je zabavan. Materijali: Altoids Limeno - prazno i obrisanoPiezo Buzzer
Morzeova tastatura: 8 koraka

Morzeova tastatura: Ovaj projekt je mala tastatura na kojoj korisnici unose Morzeovu azbuku i znakove šalju na priključeni računar. Jedinica je inspirirana američkim Dot-dash koderom (CO-3B, MX-4495). Objavio sam svoj verzija prve generacije na Arduino projektnom čvorištu i grijehu
Brza i prljava Das tastatura (prazna tastatura): 3 koraka

Brza i prljava Das tastatura (prazna tastatura): Das tastatura je naziv najpopularnije tastature bez natpisa na tasterima (prazna tastatura). Das tastatura se prodaje po cijeni od 89,95 USD. Ovo uputstvo će vas voditi iako ćete sami napraviti bilo koju staru tastaturu koja vam leži