डिस्क्लेमर: यह वर्कअराउंड है , ए नहीं कि आपके उत्तर का हल है, लेकिन फिर भी, बहुत व्यवहार्य संभावना है।
यदि आप पूरी तरह से सुनिश्चित करना चाहते हैं कि वीएस से कोई निर्भरता नहीं है - लेकिन यह अपनी कमियों के साथ आता है - कोड जनरेशन सेटिंग्स में आप मल्टी थ्रेडेड (MT) / मल्टी थ्रेडेड डिबग (MD) के साथ जाना चुन सकते हैं (डीबग बड्स के लिए) ) एमटी डीएलएल (एमटीडी) / एमटी डीबग डीएलएल (एमडीडी) के बजाय।
क्या कमियां हैं?
- यह आपके निष्पादन योग्य आकार और आपके बाइनरी को बढ़ाता है (हालांकि यदि आप एक गेम बना रहे हैं तो यह शायद नगण्य है)
- इस तरह संकलित रनटाइम डीएलएस अपडेट से लाभ नहीं होगा। (उदाहरण यदि Microsoft VC ++ 2015 SP2, SP3, SP4 आदि को जारी करता है।) लेकिन यह आपके ऊपर है।
- अधिक RAM उपयोग (नगण्य भी) क्योंकि आप मौजूदा / लोडेड कोड (DLL) का फिर से उपयोग नहीं करते हैं
- आपको यह सुनिश्चित करने की आवश्यकता है कि आपके द्वारा लिंक किए गए सभी पुस्तकालयों को एक ही रनटाइम के खिलाफ संकलित किया गया है, अन्यथा लिंकिंग विफल हो सकती है, या दिलचस्प रनटाइम त्रुटियां हो सकती हैं (शायद नहीं, लेकिन यह मेरे साथ जीवनकाल में एक बार एक विरासत परियोजना में हुआ था जिसे अद्यतन किया गया है नवीनतम VS)
और पेशेवरों क्या हैं?
- आपके निष्पादन योग्य में वीएस से ही "बाहरी" निर्भरता नहीं होगी (कोई msvc * .dll आवश्यकता नहीं)।
- कुछ लोग इसे प्रदर्शन में वृद्धि के रूप में देखते हैं क्योंकि आप डीएलएल कॉल ओवरहेड को समाप्त कर रहे हैं, जबकि यह सैद्धांतिक रूप से सच है, व्यवहार में सुधार नगण्य हैं
चेक इस लिंकअधिक विस्तृत विवरण के लिए और गड्ढे के लिए करें- और एक स्थैतिक रनटाइम का उपयोग करके आपके साथ आने वाली खराबी।
एक और वर्कअराउंड सभी आवश्यक DLL को रखना होगा जहां आपका बाइनरी है। आपके एप्लिकेशन को अपडेट (रनटाइम लाइब्रेरीज़) से लाभ नहीं होगा, लेकिन ऐसा है।
असली समाधान रिलीज / गैर डिबग डीएल मोड (एमटीडी) में एप्लिकेशन को वितरित करना और सही वीसी ++ पुनर्वितरण योग्य इंस्टॉलर (और किसी भी अन्य पुस्तकालय इंस्टालर की आपूर्ति करना है जो आप उपयोग कर सकते हैं, जैसे ओपन, डायरेक्टएक्स 9, फिजिक्स), और उपयोगकर्ता को चलाने दें अपना आवेदन चलाने से पहले (जैसा कि अन्य उत्तर दिए गए हैं)।
यह भी सुनिश्चित करें कि उपयोगकर्ता को यह पता होना चाहिए कि उसे संभवतः अपने GPU ड्राइवरों को अपडेट करने की आवश्यकता है (जैसे कि कई अनुप्रयोगों के लिए कई रनटाइम होते हैं, जैसे OpenGL, Vulcan)।