क्या मुझे C ++ रेडिस्ट के x64 और x86 दोनों संस्करणों की आवश्यकता है


6

यदि मेरे पास Microsoft C ++ Redist पैकेज का x64 और x86 संस्करण दोनों हैं, तो क्या मैं x86 संस्करण की स्थापना रद्द कर सकता हूं? अगर मैंने x86 संस्करण की स्थापना रद्द की, तो क्या x 64 संस्करण x86 पैकेज पर निर्भरता को कवर करेगा?

जवाबों:


10

क्या मुझे C ++ रेडिस्ट के x64 और x86 दोनों संस्करणों की आवश्यकता है? यदि मेरे पास Microsoft C ++ Redist पैकेज का x64 और x86 संस्करण दोनों हैं, तो क्या मैं x86 संस्करण की स्थापना रद्द कर सकता हूं?

यह निर्भर करता है कि आप 32-बिट और / या 64-बिट VC ++ प्रोग्राम का उपयोग करते हैं।

अगर मैंने x86 संस्करण की स्थापना रद्द की, तो क्या x 64 संस्करण x86 पैकेज पर निर्भरता को कवर करेगा?

नहीं, आपको 32-बिट VC ++ प्रोग्राम चलाने के लिए x86 संस्करण की आवश्यकता है, और 64-बिट VC ++ प्रोग्राम को चलाने के लिए आपको x64 संस्करण की आवश्यकता है।

तकनीकी व्याख्या :

अधिकांश कार्यक्रम समान तरीकों से बहुत सारी चीजें करते हैं। "पहिए को फिर से लगाने " से बचने के लिए, वे पुस्तकालयों का उपयोग करेंगे जो पूर्व लिखित कार्यों का संग्रह है जो कि काम की मात्रा को कम करने के लिए उपयोग किया जा सकता है। यह अच्छा है, लेकिन अगर हर कार्यक्रम में कार्यक्रमों में सामान्य कार्य शामिल होते हैं, तो बहुत सारी जगह बर्बाद हो जाएगी क्योंकि वे सभी समान हैं। साथ ही, यदि बग पाया गया और ठीक किया गया या लायब्रेरी में सुधार किया गया, तो फिक्स / सुधार को शामिल करने के लिए हर प्रोग्राम को फिर से शुरू करना होगा।

आंतरिक रूप से कार्यों को शामिल करने के बजाय इन सीमाओं को हल करने के लिए, अधिकांश प्रोग्राम उन कार्यों को एक .dllफ़ाइल में बाह्य रूप से संग्रहीत करेंगे । इस तरह, वे सभी समान कोड साझा कर सकते हैं जो व्यर्थ स्थान को कम करता है और सभी को एक ही समय में एकल लाइब्रेरी फ़ाइल को बदलकर उन्नत किया जा सकता है।

एक कार्यक्रम 32-बिट या 64-बिट हो सकता है, जो अन्य बातों के अलावा, चर और इस तरह के आकार को निर्धारित करता है। समस्या यह है कि 32-बिट कोड 64-बिट कोड के साथ संगत नहीं है, इसलिए 32-बिट प्रोग्राम को 32-बिट लाइब्रेरीज़ का उपयोग करना चाहिए और 64-बिट प्रोग्राम को 64-बिट लाइब्रेरीज़ का उपयोग करना चाहिए।

इसलिए, यदि कोई 32-बिट प्रोग्राम है, foobar.exeऔर 64-बिट प्रोग्राम है, foobar64.exeजो दोनों VC ++ पुस्तकालयों का उपयोग करते हैं, तो foobar.exeआवश्यकता होगी \x86\msvc*.dllऔर foobar64.exeआवश्यकता होगी \x64\msvc*.dll; वे गलत " बिटनेस " के पुस्तकालयों का उपयोग नहीं कर सकते हैं ।


0

X86 और x64 redistributables क्रमशः और केवल x86 और x64 कोड को कवर करते हैं। यही है, x64 संस्करण x86 कोड को कवर नहीं करता है, न ही इसके विपरीत।

जैसे कि क्या आप उन्हें सामान्य रूप से हटा सकते हैं, यह कहना मुश्किल है। यह इस बात पर निर्भर करता है कि आपके पास क्या अनुप्रयोग हैं और क्या उन्हें उन पुनर्वितरण की आवश्यकता है। यह उन्हें हटाने के लिए एक काफी सुरक्षित अभ्यास है, देखें कि क्या कोई समस्या प्रस्तुत करता है, और उन्हें वापस डाल दिया।


0

हटाया नहीं जाना चाहिए।

स्थापित ऑपरेटिंग सिस्टम को देखें जो बड़े विक्रेताओं को प्रदान करते हैं। 2005/2008/2010/2012 ... x86 और x64 सभी पैकेज मौजूद हैं। क्योंकि डेवलपर्स विविध कार्यक्रम इन पुस्तकालयों में से किसी का उपयोग कर सकते हैं।


0

आप vcredist x86 और x64 दोनों की जरूरत है, सबूत चाहते हैं? जब vcredist 2005 x64 स्थापित हो तो gta iv withot vcredist 2005 x86 चलाने का प्रयास करें। vcredist 2005 x64 और x86 Microsoft आधिकारिक वेबसाइट पर उपलब्ध है।


ऑप को दोनों की आवश्यकता क्यों है?
बर्टिब
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.