![]() |
|
لماذا لا يتم نقل البيانات كما هي - نسخة قابلة للطباعة +- delphi4arab منتديات دلفي للعرب (https://delphi4arab.net/forum) +-- قسم : منتديات دلفي للعرب التعليمية (https://delphi4arab.net/forum/forumdisplay.php?fid=3) +--- قسم : سؤال و جواب حول دلفي (https://delphi4arab.net/forum/forumdisplay.php?fid=15) +--- الموضوع : لماذا لا يتم نقل البيانات كما هي (/showthread.php?tid=8582) |
RE: لماذا لا يتم نقل البيانات كما هي - Agmcz - 07-04-2017 نعم يمكن تحويل والتشغيل بكل سهولة لكن ما الغرض من هذه العملية؟ لأن البيانات في الحقيقة هي نفسها سواء كانت string او غيره RE: لماذا لا يتم نقل البيانات كما هي - mohamed49 - 07-04-2017 لا يوجد غرض فقط اريد ان اتحكم واستطيع فهم الية التلاعب بالاشياء وبعد الحل ربما سانظر اذا كان شيء سيقف في طريقي لاعيد التفكير فيه واذا عجزت عنه ساطرحه وهكذا حتى ترسخ بالراس RE: لماذا لا يتم نقل البيانات كما هي - Agmcz - 07-04-2017 شاهد المرفق RE: لماذا لا يتم نقل البيانات كما هي - mohamed49 - 07-04-2017 تمام يعني هل افهم انه لتشغيل الملف على شكل سترنغ يجب ان يكون سترنغ الملف الاصلي يعني غير محول الى هيكس او ديسيمال ثانيا بخصوص nullbyte كانت شكلت لي عقدة لاني اولا كنت احذفها ومرة اعمل لها استبدال وفي كل الاحوال كانت لا تعمل لكن ما شاء الله باكواد بسيطة ومفهومة اوصلت لي الفكرة بدون تعقيدات يعطبك العافية يا رب وزادك الله علما RE: لماذا لا يتم نقل البيانات كما هي - Agmcz - 07-04-2017 المدخل للدالة هو عنوان وليس string أو Byte أو Integer لذا فالنوع في هذه الحالة ليس مهم و المهم هو بداية البيانات الحقيقية لتعمل الدالة والغرض من التحويل في هذه الحالات إلى string لاستعمال دوال اخرى مثلا للتشفير انتبه فعند تحويل exe إلى string النتيجة في Memo ستظهر فقط MZP لأن MZP = 4D 5A 50 و يليها مباشرة 00 وكما نعرف أن 00 يعني ان السلسلة انتهت. RE: لماذا لا يتم نقل البيانات كما هي - mohamed49 - 07-04-2017 نعم لقد اخبرتني مرة عنها لذا اصبحت اعمل حلقة على الناتج ان كان يساوي #0 يتم استبداله واحيانا كنت اقوم بحذفه نهائيا لذا سالتك ان كان حذف null byte يؤثر على الملف ام لا لكن اظن انك لم تنتبه للسؤال لانك لم تجبن عليه RE: لماذا لا يتم نقل البيانات كما هي - محمد عبد العزيز - 07-04-2017 اخ محمد انت تدور في حلقة مفرغة RunPE يقوم بتنفيذ الملف التنفيذي بالذاكرة يعني الملف الذي بالذاكرة يكون نفسه الملف الذي بالقرص نفس البيانات، لا تحويل الى String ولا يحزنون ولا تغيير Null byte ولا شيئ RE: لماذا لا يتم نقل البيانات كما هي - mohamed49 - 07-04-2017 اعرف اخي انا اريد معرفة تطوير معرفتي فانا لا احتاجه من الاصل لكن عندما يشغلني شيء لا احب ان امر عليه مر الكرام ثانيا عندما تريد الحفظ في Liststring يجب على حسب خبرتي البسيطة انه يجب استبدال nulbyte والا فلن يكتب لك سوى الحرفين الاولين لانه كما قال الاخ يظن انه نهاية السترنغ فيتوقف والله اعلى واعلم RE: لماذا لا يتم نقل البيانات كما هي - Agmcz - 07-04-2017 النوع String في دلفي يتم كتابة طوله قبل ربع بايت من عنوان بداية السلسلة. فما دخل الإستبدال في حالتك؟؟؟ الله أعلم RE: لماذا لا يتم نقل البيانات كما هي - محمد عبد العزيز - 07-04-2017 إقتباس :انا اريد معرفة تطوير معرفتي...معرفة تطوير معرفتك ؟ تعلم الاشياء من الاساس هذا علم دقيق، صفر واحد، مبنى على المنطق، تخطأ في byte لا يعمل! حتى الان لك أكثر من ستة مواضيع تدور في نفس الحلقة المفرغة ما المشكل بالضبط! اطرح سؤال واضح. |