لماذا لا يتم تشغيل بعض البرامج التي تم تجميعها لـ X86 بموجب X64 ، بينما يفعل البعض

StackOverflow https://stackoverflow.com/questions/4303302

  •  29-09-2019
  •  | 
  •  

سؤال

لقد رأيت أن بعض البرامج التي كتبت من قبلي وتجميعها لـ X86 باستخدام ML.exe تعمل بشكل جيد على فوز 7 X64. أعتقد أن هذا بسبب تكنولوجيا واو.

ومع ذلك ، هناك بعض البرامج (غير مكتوبة من قبلي) التي لا تعمل. يعطون الخطأ الذي:إصدار هذا الملف غير متوافق مع إصدار Windows الذي تقوم بتشغيله. تحقق من نظام الكمبيوتر الخاص بك لمعرفة ما إذا كنت بحاجة إلى إصدار X86 (32 بت) أو X64 (64 بت) من البرنامج ، ثم اتصل بناشر البرنامج

هل هناك أي طريقة يمكنني من خلالها تعديل Exe لهذه البرامج لجعلها تعمل على Win 7 X64. ما هو الفرق الأساسي في هذه البرامج التي تجعلها مختلفة عن البرامج الأخرى التي تعمل بشفافية.

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

المحلول

إنها بالفعل برامج من 8 أو 16 بت. يعمل Windows X64 في الوضع الطويل ، والذي لا يدعم وضع 8086 الظاهري ، المطلوب لمثل هذه البرامج. لا توجد طريقة لجعلهم يعملون أقل من إعادة تجميعهم من المصدر أو تشغيلها في جهاز افتراضي.

نصائح أخرى

يمكن أن يكون أحد الأسباب مزيجًا من المكتبات .NET والمكتبات الأصلية. يتم تجميع مكتبات .NET في وقت التشغيل كـ X64 (إذا لم تحدد بشكل صريح x86) وتم تشغيل المكتبات الأصلية في وضع x86. لا يمكن تشغيل Togehther.

سبب آخر هو الوصول إلى السجل. اعتمادًا على واجهة برمجة التطبيقات المستخدمة ، يمكن إعادة توجيه X86App في وضع WOW64 إلى جزء آخر من السجل. إذا كانت واجهة برمجة تطبيقات الوصول إلى السجل غير متسقة ، فيمكنها أن تواجه مشكلة.

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