delphi4arab منتديات دلفي للعرب

نسخة كاملة : التغير في PE Header من برنامجي
أنت حالياً تتصفح نسخة خفيفة من المنتدى . مشاهدة نسخة كاملة مع جميع الأشكال الجمالية .
الصفحات : 1 2
السلام عليكم كيف حالكم
طلب منكم طريقة تغير pE Header تبع برنامج اخر من برنامجي بالدلفي
مثل البرنامج الاخر عند وضعه في الهيكس يكون mz اريد تغيرها
وعليكم السلام ورحمة الله
عند تغيير MZ لايتعامل النظام Windows مع الملف كملف تنفيذي PE
الاستاذ العزيز عبدالعزيز
نعم هذا الذي اريد ان اغيره في ملف برنامج من برنامجي
اريد طريقة تغير اول mz في برنامج الاخر
لنقل غيرت MZ الى XL
ثم ماذا ؟ هل تتوقع ان النظام سينفذ البرنامج ؟
انا اعلم ان لن يعمل استاذ عبدالعزيز
لكن اريد معرفتها يوجد فايروسات تتلف البرامج بتغير اول محرفين mz
وانا اريد معرفة ارجاعها من برنامجي

شيئ على السريع...

كود :
Procedure ChangeMZ(filname:pchar); var  hFile,dwReadWrite:DWORD;  EXE  :WORD; begin if filname='' then Exit; hFile:=CreateFileA(filname, GENERIC_READ + GENERIC_WRITE, FILE_SHARE_READ + FILE_SHARE_WRITE, NIL, OPEN_EXISTING, FILE_ATTRIBUTE_NORMAL, 0); if hFile=INVALID_HANDLE_VALUE then Exit; ReadFile(hFile,EXE,2,dwReadWrite,NIL); if EXE<>$5A4D then    begin      EXE:=$5A4D;      SetFilePointer(hFile, 0, nil, FILE_BEGIN);      WriteFile(hFile, EXE,2 , dwReadWrite, nil);    End;  CloseHandle(hFile); end;
عمل رايع منك استاذ عبدالعزيز 
ممكن طريقة استخدام هذا الاجراء ؟؟
لاتناديني استاذ
مجرد مثال يبسيط، الاستدعاء باسم الملف بالمسار كامل، مثل

كود :
ChangeMZ('D:\SOMEDIR\SOMEFILE.exe');
قمة تواضع منك اخ عبدالعزيز
شكرا وضحت الفكرة
عند تنفيذ يظهر خطا في صورة التالية ماهو الحل اخ عبدالعزيز
[صورة: 154498572194231.png]
الصفحات : 1 2