khaled9992

زيزوومي جديد
إنضم
25 يناير 2020
المشاركات
7
مستوى التفاعل
1
النقاط
0
غير متصل
السلام عليكم ورحمة الله وبركاته احتاج إلى تحويل لغة عرض تطبيقات سطح مكتب تدعم اللغة الصينية فقط إلى الانجليزية


Screenshot 2025-05-29 004732.webp
 

  • استخدم أدوات مثل:
    • Locale Emulator (لويندوز): يتيح لك تشغيل البرامج بلغة واجهة مختلفة. مفيد في حال كانت التطبيقات لا تتغير لغتها تلقائيًا حسب لغة النظام.
    • AppLocale (أداة قديمة من مايكروسوفت لكنها لا تزال تعمل مع بعض التطبيقات الصينية القديمة).

  • ابحث عن ملف باسم مثل config.ini, settings.json, أو lang.cfg داخل مجلد التثبيت.

  • افتح الملف بمحرر نصوص وابحث عن سطر فيه كلمة مثل language=zh أو lang=zh_CN وقم بتعديله إلى language=en أو lang=en_US.

تقبل مروري المتواضع وانتظر رد الخبراء
.
 
توقيع : القناص الرائع
تحياتي لك اخي الكريم وجدت ملفات اللغة للتطبيق عبارة عن ملفات بصيغ dlx , xml قمت بتعديل على الكلمات الصينية الى الانكليزية لم تتغير لغة العرض بعدها وجدت ملف dll يحتوي على نفس ملفات ال dlx , xml لكن لا اعرف كيف اعدل على الكلمات داخل ال dll واعادة حفظه استخدمت dnspy لفتح ال dll
 

يجب عليك تسجيل الدخول أو التسجيل لمشاهدة الرابط المخفي


حياك الله اخى الكريم
ان شاء الله يفيدك خبرائنا بالاجابة الأكيدة
ولحين حدوث ذلك دعنى احاول مساعدتك
تفضل هذا الدليل الاسترشادى:

ما دمت قد وصلت إلى مرحلة تعديل ملفات .dlx و.xml ولم يتغير شيء،
فغالبًا أن التطبيق يحمّل ملفات اللغة من داخل ملف الـ .dll مباشرة،
أو أن تلك الملفات مضغوطة بداخله ويجب تعديلها من المصدر.
بما أنك استخدمت dnSpy، فأنت بالفعل على الطريق الصحيح،
وسأشرح لك خطوات التعديل على ملفات اللغة داخل الـ DLL باستخدام dnSpy
وإعادة حفظها بالشكل السليم:

الخطوات لتعديل محتوى ملفات اللغة داخل DLL بواسطة dnSpy:​


  1. افتح ملف الـ DLL في dnSpy:
    • شغّل dnSpy.
    • افتح الـ DLL من خلال File > Open.
    • في الجزء الأيسر، ستظهر بنية الـ DLL (الأسماء تكون غالبًا على شكل أسماء مساحات Namespaces).
  2. استعرض الموارد (Resources):
    • ابحث عن قسم يحمل اسم Resources أو Embedded Resources.
    • افتحه وابحث عن الملفات التي لاحظت أن فيها محتوى لغوي (مثلاً .xml أو .dlx مضمنة).
  3. تعديل الموارد:
    • اضغط بزر الماوس الأيمن على الملف المراد تعديله داخل الموارد، واختر:
      • Save أو Extract لحفظه خارجيًا وتعديله.
      • بعد التعديل احفظ الملف المعدل.
  4. إعادة تضمين الملف المعدل داخل الـ DLL:
    • اضغط مجددًا على Resources داخل dnSpy.
    • اضغط بزر الماوس الأيمن واختر:
      • Edit Class أو Edit Resource.
      • أو اضغط بزر الماوس الأيمن على الملف القديم واختر Remove.
      • ثم اضغط بزر الماوس الأيمن واختر Add Resource وأضف الملف المعدل.
  5. حفظ الـ DLL بعد التعديل:
    • من قائمة File اختر Save Module.
    • ستظهر نافذة بها إعدادات الحفظ، اختر:
      • Mode: File
      • ثم اضغط OK لحفظ النسخة المعدلة من الـ DLL.
  6. استبدال النسخة القديمة بالنسخة الجديدة:
    • انسخ الـ DLL المعدل إلى مجلد البرنامج، بعد أخذ نسخة احتياطية من الأصل.
    • أعد تشغيل التطبيق وتحقق من تغيّر اللغة.

تنبيه مهم:​


  • تأكد أن تعديلاتك لا تخل بالبنية الأصلية للملف، خصوصًا إذا كنت تستخدم XML، لأن أي خطأ بسيط قد يجعل التطبيق يتوقف عن العمل.
  • أحيانًا تكون النصوص مشفرة أو مضغوطة داخل DLL بطريقة غير واضحة، لذا إذا لم تجد نصوص اللغة بشكل صريح، قد تحتاج لاستخدام برامج أقوى مثل ILSpy أو محررات Hex مثل HxD (للحالات المتقدمة).

.
 
توقيع : القناص الرائع

يجب عليك تسجيل الدخول أو التسجيل لمشاهدة الرابط المخفي

يجب عليك تسجيل الدخول أو التسجيل لمشاهدة الرابط المخفي

لا اجيد الاستخدام بشكل واسع على DNSPY شرح صور اذا تكرمت معرفتي محدودة بهيك مواضيع
DNSPY V 6.1.5

يجب عليك تسجيل الدخول أو التسجيل لمشاهدة الرابط المخفي


رابط ملف

جزاك الله كل خير
 

المرفقات

  • Screenshot 2025-05-29 152156.webp
    Screenshot 2025-05-29 152156.webp
    243.1 KB · المشاهدات: 1
جربت عدلت ملف تم تبديله بشكل سليم لكن بعد حفظه ظهرت هذه الرسالة

Writing C:\Users\HALID\Desktop\YX.UGMould.dll...
Instruction operand is null. Error occurred after metadata event BeginWriteMethodBodies during writing method 'System.Boolean ZYXDNGuarder::RunHVM()' (0x06005E34).
Instruction operand is null. Error occurred after metadata event BeginWriteMethodBodies during writing method 'System.Boolean ZYXDNGuarder::RunHVM()' (0x06005E35).
All files written to disk.

وبعد استبدال الملف المعدل اثناء فتح البرنامج ظهرت الرسالة الصورة بالمرفقات
 

المرفقات

  • Screenshot 2025-05-29 161330.webp
    Screenshot 2025-05-29 161330.webp
    45.8 KB · المشاهدات: 0

يجب عليك تسجيل الدخول أو التسجيل لمشاهدة الرابط المخفي


ممتاز جدًا، أنت وصلت للملف الصحيح داخل الـ DLL وفتحته بالفعل بنجاح داخل dnSpy.


الآن سأرشدك خطوة بخطوة مع الصور التوضيحية التي سأجهزها لك، لكن أولاً لنوضح بالضبط ما يظهر في لقطة الشاشة:


ما يظهر في dnSpy:​


  • الملف المفتوح هو:
    YXUGMould.All_Data.user.LayerToolbar_TypeLayer.xml
    وهو ملف XML مضمّن داخل DLL.
  • يحتوي على عناصر <Property> وكل واحدة فيها سطر مثل:
    Tooltip="前模镶件" Layers="..."
    وهذه القيم الصينية (مثل 前模镶件) هي ما تريد ترجمته.



المطلوب فعله الآن:​


الخطوة 1:​


من داخل dnSpy مباشرةً:


  1. اضغط زر الفأرة الأيمن على الملف LayerToolbar_TypeLayer.xml في الشجرة الجانبية.
  2. اختر Edit Resource.
  3. ستظهر نافذة بها المحتوى (نفس النص الذي في يمين الشاشة).
  4. قم بترجمة النص الموجود داخل Tooltip="" من الصينية إلى الإنجليزية، مثال:

    Tooltip="前模镶件" → Tooltip="Front Mold Insert"<br>Tooltip="产品" → Tooltip="Product"<br>Tooltip="自定义X1" → Tooltip="Custom X1"<br>
  5. بعد تعديل جميع القيم، اضغط OK لحفظ التعديلات داخل dnSpy.



الخطوة 2:​


  1. من الأعلى، اضغط على File > Save Module.
  2. لا تغير الإعدادات، فقط اضغط OK.
  3. سيتم حفظ نسخة DLL جديدة في نفس المجلد أو المكان الذي تختاره.



الخطوة 3:​


  1. انسخ DLL المعدّل.
  2. استبدله في مجلد التطبيق (بعد حفظ نسخة احتياطية من الأصل).
  3. شغّل البرنامج، وسترى النصوص ظهرت بالإنجليزية.


...
 
توقيع : القناص الرائع

يجب عليك تسجيل الدخول أو التسجيل لمشاهدة الرابط المخفي


الملف محمي بواسطة DNGuard،
وهي أداة حماية وتشويش (obfuscation/protection) تمنع تحليل وتعديل ملفات .NET مثل DLL وEXE.


ماذا يعني ذلك؟​


  • DNGuard يقوم بتشفير أو تشويش الكود والمصادر داخل DLL.
  • النصوص (مثل اللغة) قد تكون مشفّرة أو مجزأة، وقد لا تظهر بشكل واضح في dnSpy.
  • محاولة تعديل الملف مباشرة غالبًا تؤدي إلى تعطل البرنامج أو عدم تحميله.

الخيار الأفضل: ابحث عن نسخة غير محمية أو بديلة​


  • تحقق إن كان هناك إصدار من البرنامج غير محمي بـ DNGuard.
  • أو استخدم برنامج آخر يؤدي نفس الغرض ويدعم اللغة الإنجليزية رسميًا.

.
 
توقيع : القناص الرائع
عودة
أعلى