Saturday 15 February 2014

visual studio - How to use different resource files for different build targets in MFC -


मेरे पास कुछ संसाधन हैं जो लक्ष्य विशिष्ट हैं लक्ष्य ग्राहक और लक्ष्य व्यवस्थापक के लिए एक अलग संवाद के लिए एक अलग संवाद की तरह और कुछ स्ट्रिंग जो प्रत्येक लक्ष्य के लिए विशिष्ट हैं

मान लीजिए कि मेरे पास 3 संसाधन फ़ाइलें, व्यवस्थापक , हो सकता है, क्लाइंट और सामान्य और किसी भी तरह व्यवस्थापक बिल्ड के लिए व्यवस्थापक और आम रिज़ॉल का उपयोग करने के लिए बिल्ड इंजन को बताएं, और ग्राहक का उपयोग करें और क्लाइंट बिल्ड के लिए सामान्य Res।

मैं इसे कैसे प्राप्त कर सकता हूं?

मैं 1 से अधिक संसाधन फ़ाइल कैसे प्राप्त कर सकता हूं एक विशिष्ट लक्ष्य निर्माण के लिए संसाधन फ़ाइल।

ठीक है, यहाँ मेरा मुकदमा पूरी तरह से आपके प्रश्न का उत्तर देने पर है, अगर केवल इतना है कि यह एक इनाम प्राप्त करने के लिए मजेदार होगा (वे ऐसा नहीं करते हैं जो अक्सर एमएफसी-टैग किए गए प्रश्नों में :))। कृपया बताएं कि आपके प्रश्न के किन क्षेत्रों में आपको लगता है कि संबोधित नहीं किया गया है, यदि कोई हो। यह सभी वीएस 2008 के साथ है, अन्य संस्करणों में बदलाव न्यूनतम होना चाहिए।

  • अपने प्रत्येक अलग लक्ष्य के लिए संसाधन फ़ाइलों को जोड़कर प्रारंभ करें, उदा। "Admin.rc", "common.rc", आदि समाधान ब्राउज़र में, अपने प्रोजेक्ट पर राइट-क्लिक करें, "ऐड- & gt; नई आइटम- & gt; संसाधन फ़ाइल"।

  • P> संसाधन व्यू में, अब आप संबंधित संसाधन फ़ाइलों में अपने आवश्यक संसाधन जोड़ सकते हैं।
  • आगे, संसाधन व्यू में, "मुख्य" संसाधन फ़ाइल पर राइट-क्लिक करें

  • ब्लॉककोट>

      #ifdef एडमिन #include "admin.rc" #endif    

    बेशक प्रीप्रोसेसर में उपयोग करने वाले प्रतीक आप खुद चुन सकते हैं, और फाइल नाम को जो भी आपने चुना है उस समय से मेल खाने की आवश्यकता है जब आपने संसाधन फाइल को पहले बनाया था।

    • तब, आपके "एडमिन" परियोजना विन्यास में (मैं मान रहा हूँ कि आप प्रत्येक के लिए अलग-अलग कॉन्फ़िगरेशन का उपयोग कर रहे हैं लक्ष्य?) और वें में ई समाधान एक्सप्लोरर, अपने प्रोजेक्ट पर राइट-क्लिक करें और "संसाधन- & gt; सामान्य" पर जाएं "प्रीप्रोसेसर परिभाषाएं" के अंतर्गत, "एडमिन" (या पिछले चरण में आपने जो भी चुना है) जोड़ें।

    • अपना समाधान बनाएं आप इस बात की पुष्टि कर सकते हैं कि आपकी बाइनरी में कौन सी संसाधन शामिल किए गए थे।

      ध्यान दें कि आपको विभिन्न बिल्डों में संसाधनों के लिए उपलब्ध नहीं होना चाहिए; इसलिए आपको यह सुनिश्चित करना होगा कि उदा। कोई संवाद नहीं दिखाया जाता है कि उनके निर्माता में संवाद IDD का उपयोग करेगा आप पूर्वप्रोसेसर के माध्यम से भी ऐसा कर सकते हैं; बस संबंधित विन्यास में सी + + प्रीप्रोसेसर में एक ही झंडा जोड़ें।

      एक अन्य मुद्दा यह है कि आपके पास प्रत्येक .RR फ़ाइल के लिए संसाधन है, और वे प्रत्येक स्वयं की संख्या का उपयोग करेंगे। सावधान नामकरण और संख्याकरण के माध्यम से आप यह काम कर सकते हैं, लेकिन मैं संकलन के समय जितनी संभव हो उतने मुद्दों को पकड़ने के प्रयास में प्रत्येक के लिए एक अलग श्रेणी प्रदान करेगा। ऐसा करने के लिए, अपना "resource1.h" खोलें या आपने जो कुछ भी कहा है उसे खोलें और _APS_NEXT__VALUE परिभाषाओं को उच्च संख्या में बदलें।

      वैकल्पिक रूप से, आप सभी संसाधनों को छू सकते हैं एक संसाधन में परिभाषित करते हैं और सभी को संपादित करें .rc फ़ाइलें शामिल करने के लिए एक संसाधन। बस समाधान एक्सप्लोरर में आरसी फ़ाइल पर राइट-क्लिक करें, फिर "साथ खोलें" चुनें और "स्रोत कोड संपादक" पर क्लिक करें। आपको आरसी फाइलों के प्रारूप से परिचित होना होगा (कम से कम मूल बातें), अगर आप "जटिल संसाधन बिल्ड" मार्ग नीचे जा रहे हैं यह मुश्किल नहीं है, बस सुनिश्चित करें कि आपको लिंककर्ता, संसाधन कंपाइलर, .आरसी फाइलें, आपकी। सीपीपी फाइलें और संसाधन। एच फाइल एक-दूसरे से संबंधित हैं, की एक मानसिक तस्वीर मिलती है। इसके अलावा, एमएफसी-विशिष्ट प्रीप्रोसेसर मान पहले से डराने लगते हैं, लेकिन वे ज्यादातर आत्म-व्याख्यात्मक हैं, और आप उनको सबसे अधिक समय तक अनदेखा कर सकते हैं।

      पेटज़ोल्ड में संसाधन फ़ाइलों की एक संक्षिप्त लेकिन पर्याप्त व्याख्या है अपने स्वरूप में, आप उस कोठरी से बाहर खदेड़ना चाहते हैं और उसे हाथ में रख सकते हैं जब आप चीजों को लटका रहे हैं।

No comments:

Post a Comment