سؤال

لدي جرة تمت إزالة رقمها السحري ونوعها السحري لجميع ملفات الفصل، ولست على دراية كبيرة بهذه المنطقة المحددة.ما هي أفضل طريقة للبدء في إضافة 0XCAFEBABE مرة أخرى والنوع مرة أخرى في كل ملف فئة وإعادة تعبئة الجرة؟

يحرر:لقد قمت بالتحقق، فقط الرقم السحري مفقود، والملفات سليمة إذا قمت بإضافتها يدويًا.

هل كانت مفيدة؟

المحلول

إذا كنت ترغب في القيام بذلك في وقت التشغيل، فيمكنك إنشاء الفصل الدراسي الخاص بك.لقد أرفقت بعض الكود الزائفي الذي قد يحصل عليك في الطريق: giveacodicetagpre.

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

نصائح أخرى

إذا كنت تريد فقط إضافة الرقم السحري مرة أخرى إلى ملفات الفصل الدراسي، فيمكنك استخدام برنامج نصي بسيط لهذا الغرض (بافتراض أنك تستخدم Linux، أو لديك Cygwin على Windows).

قم أولاً بإنشاء ملف يحتوي على 4 بايت فقط من الرأس (CAFEBABE).

بعد ذلك، قم باستخراج ملفات الفئة من الجرة إلى دليل ما، وقم بتشغيل هذا الأمر في الجذر:

find . -name "*.class" | while read file; do
    mv ${file} ${file}-old
    cat /path/to/file/with/header ${file}-old > $file
    rm ${file}-old
done

ملحوظة:يعمل البرنامج النصي أعلاه في bash، ولكن يجب أن تكون قادرًا على كتابة شيء مشابه لأي shell، أو حتى لنظام التشغيل Windows.

ولكن ماذا تقصد بـ "لديك رقمهم السحري و تمت إزالة النوع"؟إذا تم تشويه الرمز الثانوي بأي شكل من الأشكال، فقد يكون إصلاح التغييرات أكثر صعوبة إن لم يكن مستحيلاً.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top