2010-11-19 8 views
20

मुझे विजुअल स्टूडियो, Please use the /MD switch for _AFXDLL builds में कोई त्रुटि आई है, इसलिए यदि मैं _AFXDLL को परिभाषित करता हूं, तो क्या मेरा प्रोग्राम गलत हो जाएगा?#error कृपया _AFXDLL के लिए/एमडी स्विच का उपयोग करें

उत्तर

6

हां यह होगा। आपको क्या करना चाहिए अपने विजुअल स्टूडियो प्रोजेक्ट गुणों पर जाना है। कॉन्फ़िगरेशन गुणों में -> सी/सी ++ -> कोड जनरेशन सुनिश्चित करें कि आप अपने रनटाइम लाइब्रेरी के लिए मल्टी-थ्रेडेड डीएल का उपयोग कर रहे हैं।

इससे आपकी समस्याएं हल हो जाएंगी।

26

सीआरटी लिंकिंग और एमएफसी लिंकिंग के लिए सेटिंग्स सुसंगत होना चाहिए। और स्थिर MFC (गुण -> सामान्य - MFC के> का प्रयोग करें)

  1. उपयोग/मीट्रिक टन (- -> C/C++> कोड जनरेशन गुण): तो, वास्तव में, इस सवाल पर दो संभव जवाब हैं

  2. उपयोग/एमडी (गुण -> C/C++ -> कोड पीढ़ी) और साझा MFC (गुण -> सामान्य -> ​​MFC का प्रयोग)

+1

सबसे आम मामलों के लिए इस समाधान होना चाहिए। लेकिन अगर आप एएफएक्स एक्सटेंशन डीएलएल बना रहे हैं तो आपको/एमडी का उपयोग करना होगा। आप एएफडब्ल्यू एक्सटेंशन डीएलएल बना रहे हैं जब _AFXEXT को प्रीप्रोसेसर चर के रूप में परिभाषित किया गया है। –

संबंधित मुद्दे