الله يعطيكون العافة
بس لو سمحتو انا بدّي طريقة او كود لنقر زر في برنامج اخر
ارجو المساعة
الله يعطيكون العافة
بس لو سمحتو انا بدّي طريقة او كود لنقر زر في برنامج اخر
ارجو المساعة
------------------
السلام عليكــم ورحمـة الله وبركاتــه ،،
مرفق مثال بسيط مكون من مشروعين .. Target و Simple
الـ Target هو المشروع الذي يحوي الزر المطلوب نقله
والـ Simple هو المشروع الذي سينقل الزر من المشروع الأول
المهم تقوم بتشغيل الـ Target.exe والـ Simple.exe .. ثم تضغط على زر ( نقل الزر ) وشاهد ماذا سيحدث
اعتذر عن عدم تمكني للمتابعه الدورية في وقتنا الحالي
فليقبل الجميع تقديري واحترامي .. ولكم تحياتي
السلام عليكــم ورحمـة الله وبركاتــه ،،
أرحب بأستاذي الكبير mrx_ta7ady وأسأل الله أن يوفقه ويجعل ما قدمه في ميزان حسانته .. أهلا بك وسهلا
وبالنسبة للمثال الذي أرفقته ... فهو ينقل الزر من فورم إلى فورم آخر ... ولكنه لا يقوم بنقر الزر في الفورم الآخر دون نقله
هل يمكنك تعديل المثال لينقر الزر في الفورم الآخر ؟؟
ولك جزيل الشكر والتقدير :)
تم تعديل هذه المشاركة بواسطة maajed555 في 16 مايو 2009 في 22:14
الف شكر الك اخي mrx_ta7ady على هذه المساعدة و لله ما اعرف كيف اتشكرك
الله يعطيك العافة ..... :wub: كلماتي تعجز عن شكرك !!؟؟
------------------
السلام عليكــم ورحمـة الله وبركاتــه ،،
على تعرف المقبض (hWnd) الخاص به؟
على حد علمى لابد من معرفة المقبض الخاص بهذا الزر حتى تستطيع التعامل معه
أعتقد أنك إذا كنت تعلم اسم النافذة التى تحتوى على الزر والنص المطبوع عليه يمكن باستخدام EnumChildWindows مع GetWindowText للوصول إلى مقبض الزر ثم استخدام
SendMessage مع WM_LBUTTONDOWN و WM_LBUTTONUP للضغط على الزر
ملحوظة: الدوال التى استخدمتها كلها دوال API :wacko:
إذا وجدت متسعا من الوقت سأقوم بتحضير مثال لك عن كيفية استخدام هذه الطريقة
إن قلت قال الله قال رسولـه همزوك همز المنكر المتعالي
أو قلت قد قال الصحابة والألـى تبعاً لهم بالقول والأعمال
أو قلت قـال الشافعي وأحمد و أبو حنيفة والإمام الغالي
صدوا عن وحي الإله ودينـه واحتالوا على حرام الله بالإحلال
يا أمةً لعبت بدين نبيها كتلاعب الصبيان في الأوحال
حاشا رسول الله يحكم بالهوى تلك إذاً حكومة الضلال
السلام عليكــم ورحمـة الله وبركاتــه ،،
شكرا للاستاذ ماجد على التنبيه وعلى اسلوب التنبيه :)
واعتذر جدا عن هذا الخطا الفادح .. قرات كلمة ( نقر ) قراءتها ( نقل )
العتب على النظر :$
وفي المرفقات المثال نفسه بعد التعديل
لكن لي ملاحظة بسيطة على المثال المرفق .. عند فتح كود المشروع الأول ستجد الامر ادناه مكرر مرتين تلو بعض
Call SendMessage(hCtrl, BM_Click, 0, ByVal 0&)
هذا التكرار فقط في حالة ان الزر المطلوب نقره خارج النافذة الحالية .. ما دون ذلك يمنع التكرار
وشكرا لسعة صدركم
تم تعديل هذه المشاركة بواسطة mrx_ta7ady في 17 مايو 2009 في 10:35
اعتذر عن عدم تمكني للمتابعه الدورية في وقتنا الحالي
فليقبل الجميع تقديري واحترامي .. ولكم تحياتي
السلام عليكــم ورحمـة الله وبركاتــه ،،
شكرا لك أستاذي الكريم ... وفيت وكفيت ما قصرت
كما أني أطالب الأستاذ GHOST2010 بالمثال الذي وعد به ... وأن يكون مشروحا ووافيا
كما أرجو منه أن يوضح كيفية استخراج المقبض للبرامج التي نستخدمها مثل المسنجر والبالتوك ... إن كان ذلك ممكنا
في انتظارك أخي الكريم ، لأني بحاجة ماسة للاستفادة ، مع الاستئذان والاعتذار لكاتب الموضوع في آن واحد
:blush:
السلام عليكــم ورحمـة الله وبركاتــه ،،
اقتباسكما أني أطالب الأستاذ GHOST2010 بالمثال الذي وعد به
أنا قلت لو وجدت متسعا من الوقت :angry: :angry:
كما أرى أن الأخ mrx قام بالواجب
وبنفس الطريقة التى استخدمها يمكن الوصول إلى مقبض أى نافذة بمعرفة عنوانها
تم تعديل هذه المشاركة بواسطة GHOST2010 في 17 مايو 2009 في 14:30
إن قلت قال الله قال رسولـه همزوك همز المنكر المتعالي
أو قلت قد قال الصحابة والألـى تبعاً لهم بالقول والأعمال
أو قلت قـال الشافعي وأحمد و أبو حنيفة والإمام الغالي
صدوا عن وحي الإله ودينـه واحتالوا على حرام الله بالإحلال
يا أمةً لعبت بدين نبيها كتلاعب الصبيان في الأوحال
حاشا رسول الله يحكم بالهوى تلك إذاً حكومة الضلال
السلام عليكــم ورحمـة الله وبركاتــه ،،
حصل خير أخي GHOST2010 ... كنت فقط أريد الاستزادة من الأمثلة خصوصا وأني حاولت أن أطبق المثال الذي أرفقه الاستاذ mrx_ta7ady على برنامج البالتوك ، ولكن للاسف العملية لم تنجح
عموما الله يعطيك ألف عافية ... والله يبارك لك في جميع أوقاتك حتى نستفيد من حضورك بشكل أكبر :)
السلام عليكــم ورحمـة الله وبركاتــه ،،
الاخ ماجد .. بإمكانك إستخدام إسم الـ Class بدلا من عنوانه
وللحصول على إسم الـ Class المطلوب قم بفتح الـ Spy++ بعد فتح البالتوك وخصوصا النافذة الهدف
ثم قم بالضغط على الـ Alt+F3 لتجد نافذة صغيره ظهرت وعنوانها Window Search
قم بعدها بتفعيل خيار الـ Hide Spy++ ليخفي البرنامج الأصلي لعدم الإزعاج
ثم قم بسحب ايقونة الـ Finder Tool الى النافذة الهدف او الاداة الهدف ايا كان نوعها
ثم دع زر الماوس لتجد معلومات هدفك ظاهره في النافذة الصغيرة سالفة الذكر .. إضغط Ok منها الآن
لتجد نفسك عدت إلى الـ Spy++ ومعلومات الهدف واضح تماما امامك الآن .. مثلا كالصورة ادناه
الـ SystemTray_Main هو إسم الـ Class الـ Parent والـ Static هو إسم الـ Class الـ Child والهدف
.. وصلنا الآن لجزئية كتابة الـ Code بالـ Visual Basic
قم بفتح المثال الموجود في المشاركة السابقة وإستبدل السطرين الشبيهين بما ادناه
hForm = FindWindowEx(0, 0, vbNullString, Text1.Text)
بالصيغة المناسبة وهي كالتالي
hForm = FindWindowEx(0, 0, Text1.Text, vbNullString)
وهذا باعتبار ان اسماء الـ Classes مكتوبة بداخل الـ TextBoxes
اما للتعويض يدويا فستكون على سبيل المثال
hForm = FindWindowEx(0, 0, "SystemTray_Main", vbNullString)
مع تغيير اللازم .. واعذرني .. لا املك هذا البالتوك لذا اضطررت للشرح على شيء وهمي
لكن هذا لا يمنع ان سؤالك مخالف وليس في مكانه ;)
التمس انا الآخر العذر من الإدارة .. اجبت من منطلق الشيء بالشيء يذكر
وعلى فكره .. طريقة الاخ جوست قياسية وجميلة .. لكن انا كمان معنديش وقت :lol:
وبالمناسبة كمان .. اشار الاخ جوست الى ان الطريقة التي تحدث عنها بالـ API
جدير بالذكر ايضا ان الفيجوال بيزك لا يدعم اي من ما قلناه .. لابد من الـ API هنا
وشكرا للجميع والسلام عليكم ورحمة الله وبركاته
اعتذر عن عدم تمكني للمتابعه الدورية في وقتنا الحالي
فليقبل الجميع تقديري واحترامي .. ولكم تحياتي
اتمنى ان يفيدكم هذا الكود
بحمد الله لقد عرفت الحل :lol:
بالمرفقات السورس يوضح ذلك
مجرب على برنامج المسنجر
------------------
السلام عليكــم ورحمـة الله وبركاتــه ،،
استاذي الكريم mrx_ta7ady
اشكرك شكرا جزيلا على ما تفضلت به ... وليت كل من خالف القوانين ينفع الآخرين بمثل ما نفعتني به :)
الاخ tornado320
شكرا لك أخي الكريم على المثال الجميل الذي أرفقته في مشاركتك الأخيرة
تم تعديل هذه المشاركة بواسطة maajed555 في 19 مايو 2009 في 22:14
المتواجدون خلال آخر دقيقتين · يتحدّث كل ٣٠ ثانية
جارٍ التحقق من المتواجدين…