32 بت VC ++ إعادة توزيعها على 64 بت نظام التشغيل؟
-
25-09-2019 - |
سؤال
باستخدام Visual Studio ، قمت ببناء تطبيق C ++ يعمل في 32 بت. سيتم نشره على خوادم Windows 32 بت و 64 بت. لن يتم تشغيله في وضع 64 بت (ولكن تحت واو).
هل يجب أن أقوم بتضمين كلاً من C ++ البصرية 32 بت و 64 بت ، وتثبيت 32 بت على النوافذ 32 بت و 64 بت على النوافذ 64 بت ، أم أنها يكفي فقط لتثبيت 32 بت إعادة توزيعها؟
المحلول
يكفي تثبيت 32 بت إعادة توزيع.
نصائح أخرى
تحرير: لقد علقت أدناه على إجابة مضللة ، لكن الإجابة هي تحتاج فقط إلى إعادة توزيع 32 بت ، مثل كاريل بترانيك أجاب أول.
هذا ليس جوابا. يجب أن يكون مجرد تعليق ، لكن بما أنني لا أملك السمعة المطلوبة لذلك ...:
أردت فقط أن أحذر الناس من المعلومات المقدمة من رويل. لا ، لا تتضمن الحزم القابلة لإعادة توزيع 64 بت Visual C ++ أيضًا DLLs 32 بت.
لقد اختبرت حتى نظرية (). حاولت تشغيل تطبيق يتطلب إعادة توزيع C ++ 2010 Visual C ++ 2010 ، وقد دفعني إلى أنه يحتاج إلى ذلك. قمت بعد ذلك بتثبيت 64 بت واحد ، وما زال يدفعه إلى إصدار 32 بت من Visual C ++ 2010. بعد تثبيت واحد 32 بت ، عملت.
لماذا يأتي الناس بنظريات ويزودونهم كإجابات يتفوق علي. أو ربما تم "تشجيعه" من قبل نظام السمعة لإعطاء ليس فقط غير ضروري ، ولكن أيضًا معلومات خاطئة. أو ربما كان يربك C ++ مع إعادة توزيع DirectX 9 (أن يتم تثبيت كل من DLL 32 بت و 64 بت).
كلاهما منتجات Microsoft ، لكن لا تدع هذا يخدعك.
ينشئ تطبيق C ++ الخاص بك 32 بت EXE ، وربط 32 بت DLLs. كما يحدث ، واحد أو اثنان من DLLs هما Microsoft CRT DLLs ، لكن نظام التشغيل لا يزال يستخدم نفس القواعد. لذلك ، لا تحتاج إلى 64 بت DLLs.
قم بتجميعه باستخدام خيار /MT وسيتم تجميع مكتبة وقت تشغيل VC ++ في EXE ، لذلك لا داعي للقلق بشأن توزيعه.
Project> Properties> خصائص التكوين> C/C ++> توليد الكود> مكتبة وقت التشغيل> متعدد الخيوط (/MT).
تتضمن الحزمة القابلة لإعادة توزيع 64 بت Visual C ++ كلا من C ++ البصرية 32 بت القابلة لإعادة توزيعها و 64 بت Visual C ++ القابلة للتوزيع.