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

[ تمت الإجابة ]المقابض الخاصة بالنوافذ و الشعور ببعض العمليات

مغلق
بدأه تغريد في 6 يناير 2007 · 6 رد · 2,105 مشاهدة · في أرشيف قسم Windows APIs
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

السلام عليكم

السؤال الاول : كيف يمكن الحصول علي مقبض القائمة المنسدلة التي تظهر عند الضغط كلك يمين في اي مكان في الوندوذ

وبشكل عام كيف يمكن الحصول علي مقبض اي نافذة؟

السؤال الثاني : كيف اجعل برنامجي يشعر بامر copy ... الذي يقوم بة المستخدم لنسخ بعض الملفات او المجلدات

والغاء هذا الامر او يقوم بة برنامجي بدلا من الوندوذ ؟

#2

السلام عليكم ورحمة الله وبركاته ........

هذا موضوع كنت قد كتبته وان لم يكن متقدما :lol: الا انه يفي بالغرض :lol: :lol:

اخوكم Dr.Pain

#3

من اجل معرفة مقبض نافذة ما يمكنك استعمال ال API

Private Declare Function FindWindow Lib "user32.dll" Alias "FindWindowA" (ByVal lpClassName As String, ByVal lpWindowName As String) As Long

و هذا ال API يلزمك باستعمال دالتين اضافيتين و هما

Private Declare Function GetClassName Lib "user32.dll" Alias "GetClassNameA" (ByVal hwnd As Long, ByVal lpClassName As String, ByVal nMaxCount As Long) As Long
-----------------
Private Declare Function GetWindowText Lib "user32.dll" Alias "GetWindowTextA" (ByVal hwnd As Long, ByVal lpString As String, ByVal cch As Long) As Long

أما اذا كانت النافذة هي النافذة الظاهر فيمكينك بكل بساطة استعمال API التالي :

Private Declare Function GetForegroundWindow Lib "user32.dll" () As Long

بالنسبة للسؤال التالي حقيقة لم اصادفه مسبقا لكن على ما اظن انك سوف تحتاجين الى عمل GlobalHook من اجل قراءة الرسائل بين البرامج و النظام و اعتراضها لكن كيف يتم ذلك في الحالة التي طرحتها حقيقة لا علم لي

#4

شكر جزير للاخوة الذين قدموا المساعدات السابقة

ولكن نرجوا المساعد في كيفية ان يشعر برنامنجي بامر delete مثلا ويتحكم فية بدل من الوندوذ

نرجوا الافادة

#5

هاي................................................

لا يوجد احد في هذا المنتدي

#6

ارجو ان تطيلي بالك فانا بعد ما اضع السؤال ولفترة طويلة اجد الحل بنفسي وبدون استعانة من احد احيانا

موقوف من المشاركة لقلة الأدب

============================

#7

طبعا جذبنى الموضوع ( لانه يتعلق بال hook :D )

زى ما قال الاستاذ أيوب

الموضوع محتاج عمل global hook

لكن global hook على أيه بالضبط

أمممممم ... أعتقد أن رسائل الويندوز كال copy و paste و delete تعتبر low level message

لكن غير متأكد لذلك ندع هذه الرسائل جانبا مؤقتا

الفكرة اللى فى دماغى إن إحنا نعمل hook على ال clipboard

عن طريق عمل hook على الرسالة WM_DRAWCLIPBOARD بالتحديد للشعور بالتغيير فى ال clipboard

هذا ما يحضرنى الآن , و لى عودة مع الموضوع

أرجو رجاء شديد من يريد المتابعة مع الموضوع القراءة المتفحصة لل hooking و ليس إنتظار الكود جاهز

لا تراجع و لا إستسلام

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

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

عدد الزوار حالياً

المتواجدون خلال آخر دقيقتين · يتحدّث كل ٣٠ ثانية

—الإجمالي—أعضاء مسجّلون—زوار بدون تسجيل

جارٍ التحقق من المتواجدين…