تعلم معي كيف تتعامل مع البرامج الخارجيّة
#11
إقتباس :نعم البرنامج يقوم بجلب المعلومات ،وارسالها الى المفكرة مع تغيير بسيط كما قلت

الحمد الله... يعني مشي الحال معك Smile جميل اخي الكريم...

طيب اخواني
لمن اراد ان يكمل... اعطيكم الآن المهمة او الوظيفة البيتية :eek:
والمطلوب هو عمل برنامج يجلب المعلومات من الآلة الحاسبة
وهذا لمن احب ان يكمل ...

وأن لم يفعل هذا احد.. اضع انا الحلّ بعد كم يوم ان شاء الله

بارك الله لكم السلام عليكم ورحمة الله
فرّج همّ المهمومين يا الله
اللهم فك قيد اسرانا و اسرى المسلمين
الرد
#12
السلام عليكم ,,

أعتذر عن التأخر الشديد في الرد !!
لكن لعلي ألحق بالأخوه الذين أحاوبوا وأضع إجابتي ,,
بالنسبة للكود الذي وضعت ( للحصول على النص في المفكره ) :
كود :
procedure TForm1.Button1Click(Sender: TObject); var forr, edi : THandle; Tex: string; begin forr := FindWindow('Notepad',nil); edi := FindWindowEx(forr,0,'Edit',nil); SetLength(Tex,Max_Path); SendMessage(edi,WM_GETTEXT,Max_Path,LongInt(@Tex[1])); edit1.Text:=Tex; end;

الإجابة بتغيير حرف الـ G إلى S
( GETTEXT >>> SETTEXT )
ولكن أعتقد هذا ليس حلا كاملا !! حيث لا يتم ارسال النص الموجود في الإيدت ,,
وبذلك يعدل الكود إلى الكود التالي :
كود :
procedure TForm1.Button1Click(Sender: TObject); var forr, edi : THandle; Tex: string; begin Tex := Edit1.Text ; forr := FindWindow('Notepad',nil); edi := FindWindowEx(forr,0,'Edit',nil); SetLength(Tex,Max_Path); SendMessage(edi,WM_SETTEXT,Max_Path,LongInt(@Tex[1])); end;
بارك الله لكم وبارك فيكم
شكوت إلى وكيع سوء حفظي ... فأرشدني إلى ترك المعاصي
وأخــبـرنـي بــأن الـعـلـم نـور ... ونـور الله لا يـهدى لـعـاصي
الرد
#13
السلام عليكم أخ _Moh أتيتك بالحل Big Grin ,,

للحصول على التكست من الحاسبة ( Get ) :

PHP كود :
procedure TForm1.Button3Click(Sender: TObject);
var
 
Fr,Ed : THandle ; Edt: String ;
begin
  Fr 
:=  FindWindow('SciCalc',nil);
  
Ed := FindWindowEx(Fr,0,'Edit',nil);
  
SetLength(Edt,MAX_Path);
  
SendMessage(Ed,WM_GETTEXT,Max_Path,LongInt(@Edt[1]));
  
Edit1.Text:= Edt ;
end; 

لوضع النص للحاسبه ( Set ) :

PHP كود :
procedure TForm1.Button4Click(Sender: TObject);
var
 
Fr,Ed : THandle ; Edt: String ;
begin
  Edit1
.Text := Edt ;
  
Fr :=  FindWindow('SciCalc',nil);
  
Ed := FindWindowEx(Fr,0,'Edit',nil);
  
SetLength(Edt,MAX_Path);
  
SendMessage(Ed,WM_SETTEXT,Max_Path,LongInt(@Edt[1]));
end; 
بارك الله فيك أخي الكريم ,, وأتـمنى منك التعمق أكثر بالدرس فقد أستمتعنا واستفدنا ,,
أكرر شكري لك أخي الكريم ,,
شكوت إلى وكيع سوء حفظي ... فأرشدني إلى ترك المعاصي
وأخــبـرنـي بــأن الـعـلـم نـور ... ونـور الله لا يـهدى لـعـاصي
الرد
#14
السلام عليكم
أمر رائع جدا Big Grin ,, حيث تستطيع تغير الـ Caption الخاص بالـ Buttons !
[صورة: d8da4de3a0.png]
لكن اواجه مشكله غريبه جدا!
وهي أنه عندما أجعل الفورم على StayOnTop فإن البرنامج لا يعمل على الوجه الصحيح !؟
يا ترىا لمـاذا ؟
وبارك الله فيكم
شكوت إلى وكيع سوء حفظي ... فأرشدني إلى ترك المعاصي
وأخــبـرنـي بــأن الـعـلـم نـور ... ونـور الله لا يـهدى لـعـاصي
الرد
#15
السلام عليكم هذا هو الحل ،ارسال المعلومة الى editالالة الحاسبة ...وشكرا
PHP كود :
procedure TForm1.Button6Click(Sender: TObject);
var
  
cal,edi  : THandle;
  
Tex: string;
begin
   cal
:= FindWindow('SciCalc',nil);
   
edi:= FindWindowEx(cal,0,'edit',nil);
   
SetLength(Tex,Max_Path);
   
Tex:= edit4.Text;
   
SendMessage(edi,WM_SETTEXT,Max_Path,LongInt(@Tex[1]));


end; 
الرد
#16
سلام الله عليكم اجمعين

إقتباس :لكن لعلي ألحق بالأخوه الذين أجاوبوا وأضع إجابتي ,,
لا بئس اخي الحبيب... اهلا وسهلا بك Smile
إقتباس :بالنسبة للكود الذي وضعت ( للحصول على النص في المفكره ) :
حربته وهو صحيح..
إقتباس :الإجابة بتغيير حرف الـ G إلى S
صحيح... ما شاء الله عليك اخي..
إقتباس :ولكن أعتقد هذا ليس حلا كاملا !! حيث لا يتم ارسال النص الموجود في الإيدت ,,
نعم اخي الحبيب.. هذا صحيح... يحتاج الى شئ من التعديل..
لكن الهدف الذي كنت اود ان ادل عليه كان حرف ال s ... وكان قصدي انه بذلك يمكن ارسال النصوص مع شئ من التعديل... لكن العبارة وصلت غير مفهوم والله المستعان... يعني الخطأ مني انا... سآمحوني :eek:
إقتباس :وبذلك يعدل الكود إلى الكود التالي :
بارك الله لك... جميل ...
إقتباس :للحصول على التكست من الحاسبة ( Get ) :
اجابة صحيحة... ما شاء الله طالب مجتهد :p
إقتباس :لوضع النص للحاسبه ( Set ) :
لا اخي الحبيب... هذه غير صحيحة... حاول مرة اخرى...
في حالتي يظهر في الألة الحاسبة كلمة left مهما وضعت من كلمة في الإديت بوكس...
يعني في خلل ما ... والخلل سهل ويسير... جرب وحاول مرة اخرى..
إقتباس :وأتـمنى منك التعمق أكثر بالدرس فقد أستمتعنا واستفدنا
والله يا اخي الحبيب... ان شاء الله سأحاول التعمق ولكن هذا الذي اعلمه الآن... ان وصلت انا الى شئ جديد فسأضعه هنا ان شاء الله... وان كان هناك من الإخوة من يعلم شئ عن هذا الموضوع فليتحفنا به جزاه الله عنا كل خير...
إقتباس :عندما أجعل الفورم على StayOnTop فإن البرنامج لا يعمل على الوجه الصحيح !!؟
يا ترىا لمـاذا ؟
ما الخلل اخي الكريم ؟ وما هو البرنامج الذي تضعه StayOnTop ؟ بارك الله فيك وجزاك خيرا
إقتباس :ماذا عن الضغط علي زر فى برنامج اخر ؟
اخي الكريم اجبتك عن هذا ... ربما لم تنتبه لذلك...
قلت لك اني لا اعلم... وانا ايضى احاول عمل لذلك لكن لا ادري كيف...
ربما احد الإخوة يعلم كيف ؟
اخي abualmonther
صحيحة الإجابة جزاك الله خيرا...
بارك الله لكم جميعا..
ومعاً الى الأمام Wink
فرّج همّ المهمومين يا الله
اللهم فك قيد اسرانا و اسرى المسلمين
الرد
#17
السلام عليكم
إقتباس :لا اخي الحبيب... هذه غير صحيحة... حاول مرة اخرى...
في حالتي يظهر في الألة الحاسبة كلمة left مهما وضعت من كلمة في الإديت بوكس...
يعني في خلل ما ... والخلل سهل ويسير... جرب وحاول مرة اخرى..
أهلا أخي العزيز ,, Big Grin
في الحقيقة جربت الكود وهو يعمل معي 100% !
تأكد من أن الحاسبة تعمل أولا :eek: ,
( السورس في المرفقات )
إقتباس :ما الخلل اخي الكريم ؟ وما هو البرنامج الذي تضعه StayOnTop ؟ بارك الله فيك وجزاك خيرا
الله اعلم أخي !
فعلا غريبه جدا !
السورس + البرنامج موجود في المرفقات للإطلاع عليه والتأكد من ذلك !
( ملاحظه : أستخدم دلفي 7 )


الملفات المرفقة
.rar   Setting & Getting.rar (الحجم : 165.68 ك ب / التحميلات : 178)
شكوت إلى وكيع سوء حفظي ... فأرشدني إلى ترك المعاصي
وأخــبـرنـي بــأن الـعـلـم نـور ... ونـور الله لا يـهدى لـعـاصي
الرد
#18
هممم اخي الكريم... غريب انا عندي لم ينفع السورس الذي وضعته..
على كل حال... حملته وجربته...

طيب اخي... ما رأيك بهذا ؟
PHP كود :
Edit1.Text := Edt ; 
في ال Set للآلة الحاسبة ؟

هههه اعتقد لم تنتبه عليه ؟
بجب ان يكون العكس... اليس كذلك اخي؟
بارك الله فيك

والسلام عليكم ورحمة الله
فرّج همّ المهمومين يا الله
اللهم فك قيد اسرانا و اسرى المسلمين
الرد
#19
السلام عليكم

في مايخص StayOnTop بسيط !!! إدا كان البحث بإسم الصنف مثلا و كان هناك واجهتين تحمل نفس إسم الصنف

فإذا أرسلنا رسالة لهده الواجهة فإنها تصل الواجهة الأولى (StayOnTop) وعليه حاول اول ترتيب الواجهات المفتوحة
ثم تحديد واجهة بإسمها أحسن .

بالتوفيق ,,
I'M Fly Like A G6

الرد
#20
moh__ كتب :هممم اخي الكريم... غريب انا عندي لم ينفع السورس الذي وضعته..
على كل حال... حملته وجربته...

طيب اخي... ما رأيك بهذا ؟
PHP كود :
Edit1.Text := Edt ; 
في ال Set للآلة الحاسبة ؟

هههه اعتقد لم تنتبه عليه ؟
بجب ان يكون العكس... اليس كذلك اخي؟
بارك الله فيك

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

نعم صحيح كيف لم أنتبه لهذا !! :eek:

بارك الله فيك ,,


tf6mehboul كتب :السلام عليكم

في مايخص StayOnTop بسيط !!! إدا كان البحث بإسم الصنف مثلا و كان هناك واجهتين تحمل نفس إسم الصنف

فإذا أرسلنا رسالة لهده الواجهة فإنها تصل الواجهة الأولى (StayOnTop) وعليه حاول اول ترتيب الواجهات المفتوحة
ثم تحديد واجهة بإسمها أحسن .

بالتوفيق ,,


وعليكم السلام ,,

نعم بالفعل أخي الكريم كلامك صحيح ( كنت أجرب مع Win X ويحدث معي الخطأ )

بارك الله فيكم جميعا
شكوت إلى وكيع سوء حفظي ... فأرشدني إلى ترك المعاصي
وأخــبـرنـي بــأن الـعـلـم نـور ... ونـور الله لا يـهدى لـعـاصي
الرد


التنقل السريع :


يقوم بقرائة الموضوع: بالاضافة الى ( 1 ) ضيف كريم