اولا شكرا جزيلا لاخي صاحب الموضوع المهم والذي سبق وبحثت جوانبه ولم اجد اجابة شافية وثانيا الشكر كل الشكر لاخونا الكريم الشبح على المعلومات الرائعة وبعد اذن صاحب الموضوع لي بعض التساؤلات بخصوص هذا الطرح
في الحقيقة عندي برنامج يقراء ملف الابروم من احد انواع الهواتف وكنت اضطر الى تحميل هذا الاخير الى برنامج hexedituer ومن ثم ابحث عن قيم معينة داخل الملف وهذه القيم هي شفرة الهاتف ..كل هذا العمل اليدوي اردت ان اختصره من خلال انشاء برنامج احمل له الملف عن طريق opendialog ومن ثم يعطيني القيم المرادة مباشرة ولم اجد حل لان تحميل ملف الى الذاكرة كان بطيئ ومليئ بالاخطاء ....ويبدو لي انك اخي الشبح تمتلك الحل واتمنى ان توضحلي طريقة استخدام هذه الخورزميات وهل تنفع في حالتي هذه مع اجمل التحايا اخي الفاضل
السلام عليكم
إدا كنت ستعدل في بايتات الملف من Memo
سيتوجب عليك تحويل HexStr إلى Byte Array
هده دالتين واحدة لتحويل HexStr و الأخرى لإعادة الكتابة في الملف من جديد
PHP كود :
type TByteArray = array of Byte;
procedure HexStr2ByteArray(const HexStr: string; out ByteArray: TByteArray); var I: Integer; begin SetLength(ByteArray, Length(HexStr) div 2); for I := 0 to Pred(Length(HexStr) div 2) do begin ByteArray[I] := StrToInt('$' + Copy(HexStr, (I * 2) + 1, 2)); end; end;
عيد مبارك اخي الشبح ولجميع الاخوة الكرام سيتم ان شاء الله تطبيق المثال ومحاولة فهم جيد للكود وفي الحقيقة اخي الشبح لقد رفعت الغموض عن هذه المعارف وفتح لنا باب واسع من المعرفة وياريت المزيد من الامثلة او فتح موضوع مستقل تشرح جميع جوانب هذا الموضوع الشيق