delphi4arab منتديات دلفي للعرب
ابقاء برنامج في حالة ترقب - نسخة قابلة للطباعة

+- delphi4arab منتديات دلفي للعرب (https://delphi4arab.net/forum)
+-- قسم : منتديات دلفي للعرب التعليمية (https://delphi4arab.net/forum/forumdisplay.php?fid=3)
+--- قسم : سؤال و جواب حول دلفي (https://delphi4arab.net/forum/forumdisplay.php?fid=15)
+--- الموضوع : ابقاء برنامج في حالة ترقب (/showthread.php?tid=5859)



ابقاء برنامج في حالة ترقب - Ninja C0d3r - 16-01-2014

السلام عليكم

ممكن اخوان كيف اجعل برنامجي يترقب حدوث شئ ما
مثلا تشغيل بروسيس ياسم test.exe في حالة تشغيل ذلك بروسيس يظهر رسالة ان ذلك يروسيس شغال
طبعا مع عدم استهلاك موارد الجهاز مثل استخدام تايمر


ابقاء برنامج في حالة ترقب - SMP3 - 16-01-2014

يتوجب عليك استخدام Global Api Hook على داول تشغيل الملفات و تحميل البروسس :
OpenProcess
LoadLibrary
ShellExecute


ابقاء برنامج في حالة ترقب - Ninja C0d3r - 16-01-2014

SMP3 كتب :يتوجب عليك استخدام Global Api Hook على داول تشغيل الملفات و تحميل البروسس :
OpenProcess
LoadLibrary
ShellExecute

ممكن شروحات لاني لم افهم اي شئ :eek:


ابقاء برنامج في حالة ترقب - SMP3 - 17-01-2014

إقتباس :ممكن شروحات لاني لم افهم اي شئ
ان لم تفهم شيئا .. فأنصحك بالابتعاد عن الموضوع أو الفكرة ..
أية أخطاء قد تسبب انهيار للنظام ..



ابقاء برنامج في حالة ترقب - Ninja C0d3r - 22-01-2014

SMP3 كتب :ان لم تفهم شيئا .. فأنصحك بالابتعاد عن الموضوع أو الفكرة ..
أية أخطاء قد تسبب انهيار للنظام ..

انا اعتقد انه هنالك طرق بسيطة غير عمل هوك
يعني انا رأيت برنامج يعمل نفس ما قلت في الطلب و لكن لا اعتقد انه يستخدم hook


ابقاء برنامج في حالة ترقب - ALmuhhnad - 23-01-2014

السلام عليكم


تستطيع عمل ذلك بدون هووك .. لكن الطريقة الافضل هي عمل الهوك إذا كنت تريد عمل حامي فيروسات مثلاً

الطريقة بدون عمل هوك هي كتالي( تتطلب إستعمال تامير او حلقة Loop ) :
1- يتوجب عليك ان تملك شيء يدل على العملية التي تريد ترقبها مثلاً اسمها(test.exe) .. أو اسم الكلاس الرئيسي لها أو اي شيء يدل على العملية ولا تشترك فيه باقي العمليات
2- تقوم بعمل جرد للعميات الحالية التي تعمل ثمب بعد ذلك تبحث عن العملية التي تترقبها من عملية الجرد التي قمت بها قبل قليل .. مثلاً تبحث عن اسم العملية ..
3- بعد أن تجد العملية قم بالحصول على الهاندل الخاص بها واعمل ما شئت بها .

ملاحظة : يفضل إستعمال Thread خاص بهذه العملية ^^ .. كي لا يحصل أي بطئ بالجهاز ولا داعي أن تجعل عملية الترقب سريعه

إذا لم تتضح أي خطوة تفضل بالسؤال


ابقاء برنامج في حالة ترقب - Houdini - 24-01-2014

برايي الدي يحدد عمل الهوك او الاعنماد فقط على الـ loop هو مادا تريد يفعل برنامجك
فانتبه الفرق بينهما كبير
بـ hook البرنامج الهدف لن يعمل حتى تسمح له
بـ loop البرنامج الهدف يبدا العمل فعلاا و لا ينتظرك حتى تسمح له