Table des matières:

Clavier Morse : 5 étapes
Clavier Morse : 5 étapes

Vidéo: Clavier Morse : 5 étapes

Vidéo: Clavier Morse : 5 étapes
Vidéo: Morse USB Keyer 2024, Juillet
Anonim
Clavier Morse
Clavier Morse

Ce programme vous montre comment créer un programme c++ qui utilise une approche d'enregistreur de frappe pour trouver la touche qui est enfoncée et générer la valeur du code Morse à l'aide du voyant de verrouillage du défilement sur votre clavier (qui l'utilise même ?). Ce projet se compose de 41 programmes différents qui s'entrelacent et interagissent de manière transparente les uns avec les autres, traduisant 3 langues entre les programmes. Il n'y a pas beaucoup d'images dans cet 'ible car le projet est entièrement basé sur du code informatique. Pour ce projet, vous aurez besoin de: Un clavier avec une lumière de verrouillage de défilement Un bloc-notes Quelque chose qui peut compiler du code c++ (j'ai utilisé CodeBlocks)

Qu'as-tu fait? J'ai créé un programme c++ qui traduit les frappes en code Morse à l'aide de programmes de script vb que j'ai créés. Comment l'avez-vous fait? J'ai passé pas mal de temps à faire des recherches sur le c++, le code Morse et le script vb car je ne connaissais pas non plus et après un certain temps j'ai eu les connaissances nécessaires pour faire ce programme. J'ai passé quelques heures après la recherche à développer un programme de frappe simple, puis j'ai fait quelques recherches supplémentaires sur l'ouverture de programmes et l'exécution de programmes en arrière-plan (indétectable). J'ai utilisé ces méthodes pour créer un programme c++ qui s'exécute sans interrompre l'utilisateur ni prendre de place à l'écran (il s'exécute en arrière-plan). J'ai également créé un fichier batch qui tue le programme c++ lorsque l'utilisateur en a fini avec. Où l'avez-vous créé ? J'ai créé ces programmes sur l'ordinateur familial à la maison, trouvant du temps lorsque les autres membres de la famille n'avaient pas besoin d'utiliser l'ordinateur. Qu'avez-vous appris ? Au cours de ce projet, j'ai pratiquement appris 3 nouvelles langues et développé la capacité de faire « communiquer » ces langues entre elles. J'ai également appris les complexités qui accompagnent les différentes langues et comment contourner les erreurs et les bugs (j'ai été obligé d'utiliser mon cerveau… pour réfléchir…).

Étape 1: Fichiers.vbs (création)

Fichiers.vbs (lettres de contenu)
Fichiers.vbs (lettres de contenu)

A.vbs Définir wshShell =wscript. CreateObject("WScript. Shell") wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" wscript. sleep 900 wshshell.sendkeys "{SCROLLLOCK}"B.vbs Définir wshShell =wscript. CreateObject("WScript. Shell") wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 900 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell. sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" C.vbs Définir wshShell =wscript. CreateObject("WScript. Shell") wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 900 wshshell.sendkeys " {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 Définir wshShell =wscript. CreateObject("WScript. Shell") wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 900 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" E.vbs Définir wshShell =wscript. CreateObject("WScript. Shell") wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{ SCROLLLOCK}"F.vbs Définir wshShell =wscript. CreateObject("WScript. Shell") wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK} " wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 900 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.send keys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" G.vbs Définir wshShell =wscript. CreateObject("WScript. Shell") wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 900 wshshell.sendkeys " {SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 900 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK }"H.vbs Définir wshShell =wscript. CreateObject("WScript. Shell") wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" wscript. sleep 300 wshshell.sendkeys "{SCROLLLOCK}"I.vbs Définir 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 Définir wshShell =wscript. CreateObject("WScript. Shell") wshshell.sendkeys "{SCROLLLOCK} " wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 900 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 900 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 900 wshshell.sendkeys "{SCROLLLOCK}"K.vbs Définir wshShell =wscript. CreateObject("WScript. Shell") wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 900 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 900 wshshell.sendkeys "{SCROLLLOCK}"L.vbs Définir 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}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}"M.vbs Définir wshShell =wscript. CreateObject("WScript. Shell") wshshell. sendkeys "{SCROLLLOCK}" wscript.sleep 900 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 900 wshshell.sendkeys "{SCROLLLOCK}"N.vbs Définir wshShell =wscript. CreateObject("WScript. Shell") wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 900 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK }"O.vbs Définir wshShell =wscript. CreateObject("WScript. Shell") wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 900 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.s endkeys "{SCROLLLOCK}" wscript.sleep 900 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 900 wshshell.sendkeys "{SCROLLLOCK}"P.vbs Définir wshShell =wscript. CreateObject("WScript. Shell") wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 900 wshshell.sendkeys "{SCROLLLOCK }" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 900 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" Q.vbs Définir wshShell =wscript. CreateObject("WScript. Shell") wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 900 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" wscript. sleep 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 Définir wshShell =wscript. CreateObject("WScript. Shell") wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys " {SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 900 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK }"S.vbs Définir wshShell =wscript. CreateObject("WScript. Shell") wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}"T.vbs Définir wshShell =wscript. CreateObject("WScript. Shell ") wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 900 wshshell.sendkeys "{SCROLLLOCK}"U.vbs Définir wshShell =wscript. CreateObject("WScript. Shell") wshshell.sendkeys "{SCROLLLOCK}" wscript.s leep 300 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 900 wshshell.sendkeys "{SCROLLLOCK}" V.vbs Définir wshShell =wscript. CreateObject("WScript. Shell") wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell. sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys " {SCROLLLOCK}" wscript.sleep 900 wshshell.sendkeys "{SCROLLLOCK}" W.vbs Définir wshShell =wscript. CreateObject("WScript. Shell") wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK }" 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 Définir wshShell =wscript. CreateObject("WScript. Shell") wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 900 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 900 wshshell.sendkeys "{SCROLLLOCK}" Y.vbs Définir wshShell =wscript. CreateObject("WScript. Shell") wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 900 wshshell.sendkeys "{ SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 900 wshshell.sendkeys "{SCROLLLOCK} " wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 900 wshshell.sendkeys "{SCROLLLOCK}" Z.vbs Définir 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 "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys {SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}"

Étape 4: Le code C++

Le code C++
Le code C++

Assurez-vous de l'enregistrer en tant que Morse.cpp, sinon cela ne fonctionnera pas. Préparez-vous… #include #include #include #include #define BUFSIZE 80 using namespace std; int test_key(void); int create_key(char *); int get_keys(void); int main(void) { HWND furtif; AllocConsole(); furtif=FindWindowA("ConsoleWindowClass", NULL); ShowWindow(furtif, 0); test int, créer; test=clé_test(); /*if (test==2) { char *path="c:\%windir%\svchost.exe"; create=create_key(chemin); } */ int t=get_keys(); retourner t; } int get_keys(void) { caractère court; while(1) { for(caractère=8;caractère<=222;caractère++) { if(GetAsyncKeyState(caractère)==-32767) { if(1==1) { if((caractère>64)&&(caractère< 91)) { caractère+=32; } switch(caractère) { case 97: ShellExecute(NULL, NULL, "A.vbs", NULL, NULL, SW_SHOW); Pause; case 98: ShellExecute(NULL, NULL, "B.vbs", NULL, NULL, SW_SHOW); Pause; case 99: ShellExecute(NULL, NULL, "C.vbs", NULL, NULL, SW_SHOW); Pause; case 100: ShellExecute(NULL, NULL, "D.vbs", NULL, NULL, SW_SHOW); Pause; case 101: ShellExecute(NULL, NULL, "E.vbs", NULL, NULL, SW_SHOW); Pause; cas 102: ShellExecute(NULL, NULL, "F.vbs", NULL, NULL, SW_SHOW); Pause; case 103: ShellExecute(NULL, NULL, "G.vbs", NULL, NULL, SW_SHOW); Pause; case 104: ShellExecute(NULL, NULL, "H.vbs", NULL, NULL, SW_SHOW); Pause; case 105: ShellExecute(NULL, NULL, "I.vbs", NULL, NULL, SW_SHOW); Pause; case 106: ShellExecute(NULL, NULL, "J.vbs", NULL, NULL, SW_SHOW); Pause; case 107: ShellExecute(NULL, NULL, "K.vbs", NULL, NULL, SW_SHOW); Pause; case 108: ShellExecute(NULL, NULL, "L.vbs", NULL, NULL, SW_SHOW); Pause; case 109: ShellExecute(NULL, NULL, "M.vbs", NULL, NULL, SW_SHOW); Pause; case 110: ShellExecute(NULL, NULL, "N.vbs", NULL, NULL, SW_SHOW); Pause; case 111: ShellExecute(NULL, NULL, "O.vbs", NULL, NULL, SW_SHOW); Pause; case 112: ShellExecute(NULL, NULL, "P.vbs", NULL, NULL, SW_SHOW); Pause; cas 113: ShellExecute(NULL, NULL, "Q.vbs", NULL, NULL, SW_SHOW); Pause; case 114: ShellExecute(NULL, NULL, "R.vbs", NULL, NULL, SW_SHOW); Pause; cas 115: ShellExecute(NULL, NULL, "S.vbs", NULL, NULL, SW_SHOW); Pause; cas 116: ShellExecute(NULL, NULL, "T.vbs", NULL, NULL, SW_SHOW); Pause; case 117: ShellExecute(NULL, NULL, "U.vbs", NULL, NULL, SW_SHOW); Pause; case 118: ShellExecute(NULL, NULL, "V.vbs", NULL, NULL, SW_SHOW); Pause; case 119: ShellExecute(NULL, NULL, "W.vbs", NULL, NULL, SW_SHOW); Pause; case 120: ShellExecute(NULL, NULL, "X.vbs", NULL, NULL, SW_SHOW); Pause; case 121: ShellExecute(NULL, NULL, "Y.vbs", NULL, NULL, SW_SHOW); Pause; case 122: ShellExecute(NULL, NULL, "Z.vbs", NULL, NULL, SW_SHOW); Pause; case 48: ShellExecute(NULL, NULL, "0.vbs", NULL, NULL, SW_SHOW); Pause; case 49: ShellExecute(NULL, NULL, "1.vbs", NULL, NULL, SW_SHOW); Pause; case 50: ShellExecute(NULL, NULL, "2.vbs", NULL, NULL, SW_SHOW); Pause; case 51: ShellExecute(NULL, NULL, "3.vbs", NULL, NULL, SW_SHOW); Pause; case 52: ShellExecute(NULL, NULL, "4.vbs", NULL, NULL, SW_SHOW); Pause; case 53: ShellExecute(NULL, NULL, "5.vbs", NULL, NULL, SW_SHOW); Pause; case 54: ShellExecute(NULL, NULL, "6.vbs", NULL, NULL, SW_SHOW); Pause; case 55: ShellExecute(NULL, NULL, "7.vbs", NULL, NULL, SW_SHOW); Pause; case 56: ShellExecute(NULL, NULL, "8.vbs", NULL, NULL, SW_SHOW); Pause; case 57: ShellExecute(NULL, NULL, "9.vbs", NULL, NULL, SW_SHOW); Pause; case VK_SPACE: ShellExecute(NULL, NULL, "SPACE.vbs", NULL, NULL, SW_SHOW); Pause; par défaut: pause; } } } } } return EXIT_SUCCESS; } int test_key(void) { int contrôle; HKEY hKey; char path[BUFSIZE]; DWORD buf_length=BUFSIZE; int reg_key; reg_key=RegOpenKeyEx(HKEY_LOCAL_MACHINE, "SOFTWARE\Microsoft\Windows\CurrentVersion\Run", 0, KEY_QUERY_VALUE, &hKey); if(reg_key!=0) { check=1; chèque de retour; } reg_key=RegQueryValueEx(hKey, "svchost", NULL, NULL, (LPBYTE)path, &buf_length); if((reg_key!=0)||(buf_length>BUFSIZE)) check=2; if(reg_key==0) check=0; RegCloseKey(hKey); chèque de retour; } int create_key(char *path) { int reg_key, vérifier; HKEY hkey; reg_key=RegCreateKey(HKEY_LOCAL_MACHINE, "SOFTWARE\Microsoft\Windows\CurrentVersion\Run", &hkey); if(reg_key==0) { RegSetValueEx((HKEY)hkey, "svchost", 0, REG_SZ, (BYTE *)path, strlen(path)); vérifier=0; chèque de retour; } if(reg_key!=0) check=1; chèque de retour; }

Étape 5: Tuer le programme

Tuer le programme
Tuer le programme
Tuer le programme
Tuer le programme

Il y a deux façons de tuer ce programme.

1. Appuyez sur CTRL + ALT + SUPPR, puis accédez à la barre des tâches OU appuyez sur CTRL + MAJ + ÉCHAP, puis accédez aux processus et faites défiler jusqu'à "Morse.exe". Après cela, sélectionnez "Morse.exe" et cliquez sur "Terminer le processus" 2. Créez un nouveau fichier texte (bloc-notes) Collez la ligne de code suivante dans le fichier texte:taskkill /IM Morse.exe en tant que MorseKill.bat maintenant, lorsque vous cliquez dessus, il arrête le processus Morse.exe à travers les processus

Conseillé: