السلام عليكم أنا أبحث على شيئين من خلال طرحي للموضوع ؟ :
1 - عندما أضيف برنامجي لقائمة المنسدلة (popupMenu) و أعمل "إفتح بواسطة" كيف يأخد مسار الملف الدي وقع عليه الإختيار تلقائيا عندما يفتح ؟؟
2- و في نفس المجال على ما أعتقد كيف أمنع برنامج ما من خاصية "إفتح بواسطة" يعني متلا أحمي برامجي من الفتح بواسطة برامج التنقيح ؟؟
كل هدا ممكن يكون السر في Hook و خصائصة أو رسائل النظام ؟؟ يعني لو كان هناك شرح و لو بسيط حول الأمر
و جازاكم الله خيرا.
السلام عليكم
أولا بارك الله فيك يا أخ DeltaAziz على الإفادة و جازاك الله كل خير
فقط ممكن سؤال تاني هل من الممكن تجاوز هده العملية قصدي Anti Reverse Engineering
+ ممكن تدعيمها بتعليمات التحقق من بنية البرنامج نفسه (Stream) .
ممكن سؤال أخر كنت أستعمل paramstr(0) و لم أكن أعرف معنى 0 لدا و على حسب المتال لكل رقم وظيفة ممكن
تعطيني بعض القيم الاخرى ؟؟ و حالات إستعمالها؟؟
نعم
كل شيئ ممكن
لذلك قلت انت وشطارتك
مسالة الحماية مثل لعبة بين القط والفار
صاحب النفس الطويل ينتصر (الى ان ياخذ المنهزم أنفاسه وتبدا جولة اخرى)
Paramstr = Parameter String
وهو عبارة عن نصوص
اول عنصر هو اسم البرنامج بما فيه المسار كامل
العناصر الباقية هي ما يمرر للبرنامج (خيارات او ملفات او...)
ان مررت ملف لبرنامجك فاسم الملف + مساره يكون في العنصر الثاني اي
لكني جربت الحل و لم يعمل ؟؟؟
جربت الحل و لم يعمل ! وماذا تريد ان اجيبك ؟
لم تذكر اي تفاصيل ماذا فعلت او كيف فعلته
اقل شيئ ارفق محاولتك او اظهر الكود الذي كتبته حتى يمكن وضع اليد على الخطأ
كود :
procedure TForm1.FormCreate(Sender: TObject);
begin
if ParamStr(1) <> '' then
Edit1.Text := ParamStr(1);
end;
وو ضعت مسار الملف التنفيدي في الريجيستري (مكان خاصية إظافة رز للمنسدلة للمجلدات؟)
لأني عامل برنامج خوصصة الملفات !
الكود سليم
يبدو ان الخطا بما كتبته في الرجيستري
متاكد انك لم تضع %1
ما ذا كتبت بالضبط في الرجيستري ؟
هدا هوا ملف الإظافة (لم أقم بالعملية برمجيا فقط للتجريب؟؟)