الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

تعطيل بعض ازرار الكيبورد

مغلق
بدأه Slack في 21 مارس 2006 · 4 رد · 5,308 مشاهدة · في المواضيع و الدروس القيّمة
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

السلام عليكم ..

يقول احد المطورين في ميكو في نظام Windows هناك طريقة واحدة لمراقبة احدات النظام الا وهي Hook ويستطرد ويقول بانها طريقة فعالة لان Microsoft دعمتها بشكل كامل طبعا ضمن امور معينة ويرجع عائدا ويقول بان API hooking ليست مدعومة رسميا لذلك حاولوا تفاديه قدر الامكان .. (على العموم إن شاء الله اشوف كم موضوع حول الـ Hook المسموح به اولا ومن ثم ندخل على API Hook)

المهم حديثنا سوف يتمحور حول عمل hook لتعطيل بعض ازرار الـ keyboard او بمعني ادق ليس تعطيل ازرار بل تعطيل حدث معين يعملوه الا وهو ctrl+alt

اذا حملت البرنامج المرفق وشغلته ستلاحظ msg تقول لك بان الازرار تعطلت .. (اذا لنرى)

في نسخة NT دعمت ميكو عمل keyboard hook في مستوى الـ low level

WH_KEYBOARD_LL

اما في مستوى High level .او Ring3

WH_KEYBOARD

للمزيد حول الدوال راجع API Reference او MSDN

لنتكلم عن الاولى اولا لان الدالة تعمل اتصال مع طبقة Ring0 فانها استخدامها قد يفيد في امور معقدة كتعطيل مثلا عمل ctrl+alt+del وغيرها

في هذه الدالة عندما توقف عمل احد المفاتيح فان النظام لن يستشعر بان الزر قد ضغط بل يعتبره ملغي تمام

اما الثانية فلاتتجاوز تطبيقاتها الـ Key logger وغيرها من تسجيل ضربات المفاتيح وغيرها :)

وفي النهاية الكود المصدر + البرنامج .. لمن يود الاطلاع عليهما ..

DisableLowLevelKeys.zip

#2

السلام عليكم ،

ما شاء الله مشاركة متميزة ،

ممكن استفسار ،

ما هو المصدر ؟

ومن اين حصلت على المثال ؟؟

تحياتي لك

/index.php/topic/264448-%D8%A7%D9%84%D8%A8%D8%AF%D8%A7%D9%8A%D8%A9-%D9%85%D8%B9-%D8%A7%D9%84%D8%A7%D9%86%D8%AF%D8%B1%D9%88%D9%8A%D8%AF/

 

اني وان كنت الاخير زمانه ---- لأتِ بما لم تستطعه الاوائلُ

#3
اقتباس
ممكن استفسار ،

ما هو المصدر ؟

ومن اين حصلت على المثال ؟؟

أما لاحظت في الكود

اقتباس
Module: DisableLowLevelKeys.cpp

Notices: Written 2000 Jeffrey Richter

كنت تسأل عن WH_KEYBOARD_LL

عليك بإضافة

#define _WIN32_WINNT 0x0400

قبل

#include <windows.h>

ان كان في المشروع الملف stdafx.h فأضف الجملة فقبل السابقة فيه ...

"First they ignore you, then they laugh at you, then they attack you, then you win"

===

اقتباس

حُكَّامُـنَا إِنْ تَصَـدّوا لِلْحِمَــى اقْتَحَمُـوا ***** وَإِنْ تَصَدَّى لَـهُ المُسْتَعْمِـرُ انْسَحَبُـوا

هُمْ يَفْرشـُونَ لِجَيْـشِ الغَــزْوِ أَعْيُنَـهُـمْ ***** وَيَدَّعُــونَ وُثُـوبَـاً قَـبْـلَ أَنْ يَثِـبُــوا

الحَاكِمُـونَ و«وَاشُنْـطُـنْ» حُكُومَتُـهُـمْ ***** وَاللامِعُــونَ وَمَـا شَعَّـوا وَلا غَرَبُــوا

القَاتِلُـــونَ نُبُــوغَ الشَّـعْــبِ تَرْضِـيَـــةً ***** لِلْمُعْتَدِيــنَ وَمَـا أَجْـدَتْـهُـمُ الـقُــرَبُ

لَهُمْ شُمُـوخُ «المُثَنَّـى» ظَاهِـرَاً وَلَهُـمْ ***** هَـوَىً إِلَـى بَابَـك الخَرْمِـيّ يُنْتَسَـبُ

البردوني "أبو تمام وعروبة اليوم" 1971

===

اقتباس
عبيد الهوى يحكمون البـلاد ***** ويحكمهــم كلّهـــم درهــــــم

و تقتـادهـم شهـوة لا تنــام ***** وهـــم فـي جـهالتهــم نــــوّم

ففــي كـــلّ ناحيــة ظـالـــم ***** غبــــــيّ يسـلـّطــــه أظلـــم

أيا من شبعتم على جوعــنا ***** وجـــوع بنينـا ألـم تتخمـــوا ؟

ألم تفهموا غضبة الكادحين ***** على الظلـم ؟ لا بدّ أن تفهموا

البردوني "نحن و الحاكمون "

#4

السلام عليكم ،

هاي وينك اخي cipher ؟؟

لم نعد نراك ؟؟ B)

مشكور على الرد ،

اقتباس
أما لاحظت في الكود

إقتباس

Module: DisableLowLevelKeys.cpp

Notices: Written 2000 Jeffrey Richter

بلى لاحظته ،

انا قصدي الموقع الذي حمل منه هذا البرنامج ؟؟

/index.php/topic/264448-%D8%A7%D9%84%D8%A8%D8%AF%D8%A7%D9%8A%D8%A9-%D9%85%D8%B9-%D8%A7%D9%84%D8%A7%D9%86%D8%AF%D8%B1%D9%88%D9%8A%D8%AF/

 

اني وان كنت الاخير زمانه ---- لأتِ بما لم تستطعه الاوائلُ

#5
الاخير زمانه كتب:
بلى لاحظته ،

انا قصدي الموقع الذي حمل منه هذا البرنامج ؟؟

http://msdn.microsoft.com/msdnmag/issues/0700/Win32/

هذا الموضوع مغلق.

مواضيع مشابهة