هل من الممكن تعيين وضع توافق Windows في التطبيق في وقت التشغيل؟

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

  •  19-09-2019
  •  | 
  •  

سؤال

نحن نستخدم مكتبة الطرف الثالث التي لا تعمل في بعض الأحيان بشكل صحيح على WIN7. نحن نعرف كيفية تكوين هذا في وقت التثبيت، ولكن نود أيضا التفكير في إعداده في وقت التشغيل. هل هذا ممكن، أو هل يجب تعيين هذا السياق قبل إطلاقه؟ (أعتقد أن هناك فرصة ضئيلة إلى لا شيء، لكنها احسبت سأطلب أي حال)

(تطبيق C ++ - وليس ذلك يهم حقا)

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

المحلول

لا يمكن تغيير إعدادات التوافق بمجرد تشغيل التطبيق.

ومع ذلك، فإن ما يمكنك فعله هو تطبيق قاذفة يتأكد من صحة إعدادات التوافق ثم تطلق طلبك. بالطبع، تحتاج إلى التأكد من أن تطبيق Launcher لا يحتوي على مشاكل في التوافق.

نصائح أخرى

تعد إعدادات التوافق فقط وحدات ماكرو مسبقة مسبقا تحجب أجزاء من API Win32 في ملفات الرأس غير المتوفرة على النظام الأساسي المحدد.

ومع ذلك، نظرا لأن API بأكمله يتم توفيره بواسطة DLLs، فيمكنك تحديد نظام التشغيل الذي يعمل في وقت التشغيل، ثم احصل على نقاط إدخال النظام الأساسي الضروري باستخدام loadlibrary. و getprocaddress..

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