2012-04-13 6 views
6

विभिन्न डेल्फी संस्करण (मेरे मामले 2007, एक्सई और एक्सई 2 में) एक ही कोड-टेम्पलेट भंडार, जैसे ..\Documents\RAD Studio\code_templates का उपयोग करने लगते हैं। चूंकि XE2 नामित इकाइयों का उपयोग करता है, इसलिए किसी को टेम्पलेट में यूनिट नाम का उपयोग करने पर समस्याएं होती हैं।कोड टेम्पलेट्स - डेल्फी संस्करणों के बीच इकाई नाम टकराव

उदाहरण के लिए जब मैं winbeep जो windows.Beep(300, 100); और चयन करने के लिए पूरा करता है और आवृत्ति आदि पर बंद हो जाता है लिखना एक टेम्पलेट है .. यह XE2 पर संकलन नहीं है जब तक कि मैं का उपयोग करता है खंड में Windows इकाई के Winapi. हिस्से को हटाने (या की पाठ्यक्रम मैन्युअल रूप से उपसर्ग जोड़ें)। मेरे पास इकाई का नाम होना चाहिए क्योंकि अन्यथा SysUtils.Beep संदर्भित हो जाता है।

मुझे विकल्प प्रविष्टि या रजिस्ट्री कुंजी या टेम्पलेट्स की जगह निर्दिष्ट करने वाला एक पर्यावरण चर नहीं मिला। यह BDSUSERDIR से भी संबंधित नहीं है, वास्तव में मेरे पास BDSUSERDIR (जो ..\Documents\RAD Studio\9.0 है) का पथ रखने वाले मेरे कंप्यूटर में एक निर्देशिका भी नहीं है। क्या यह मेरी निगरानी है और वास्तव में कोड टेम्पलेट्स को स्थानांतरित करने का विकल्प है? यदि नहीं, तो क्या नए रूपों के लिए उपयोग क्लॉज में आईडीई उपयोग इकाई उपनाम बनाना संभव है?

संपादित करें:
Here यह कहा गया है कि (मेरे द्वारा जोर) "टेम्प्लेट आपके द्वारा बनाए गए (और टेम्पलेट्स तृतीय पक्ष द्वारा प्रदान ऐड-इन्स) में डिफ़ॉल्ट द्वारा सहेजे गए हैं \ My Documents \ रेड स्टूडियो \ कोड टेम्पलेट्स \ निर्देशिका। " इसका मतलब यह होगा कि उन्हें गैर-डिफ़ॉल्ट स्थान पर सहेजने का तरीका होना चाहिए। लेकिन लेख का उल्लेख नहीं है कि कैसे।

उत्तर

6

आप अपने टेम्पलेट्स को "Delphi installation folder"\ObjRepos\en\Code_Templates में डाल सकते हैं ताकि उन्हें केवल एक डेल्फी संस्करण पर दिखाई दे सके।

+1

बढ़िया! इस फ़ोल्डर में टेम्पलेट फ़ाइल के एक संशोधित संस्करण की प्रतिलिपि बनाना इसे हल करता है। ऐसा लगता है कि डेल्फी पहले इस फ़ोल्डर को पढ़ रहा है। धन्यवाद! –

2

संपादित

Sertac टिप्पणी में बताते हैं के रूप में, टेम्पलेट पुस्तकालयों टेम्पलेट्स, नहीं कोड टेम्पलेट्स परियोजना से जुड़े हुए हैं। इस उत्तर को जगह में छोड़कर क्योंकि यह लोगों को उनकी परियोजना टेम्पलेट भंडारों को ढांचे/साझा/विभाजित करने के तरीकों की तलाश में मदद कर सकता है।


डेल्फी XE2 में आपके पास "टूल्स" मेनू के नीचे "टेम्पलेट लाइब्रेरीज़" विकल्प है। जब आप खोलते हैं, तो आप इस संवाद मिलती है:

enter image description here

"जोड़ें" बटन आप एक फ़ोल्डर जोड़ने के लिए अनुमति देता है, "गुण" बटन आप देख सकते हैं और है कि भंडार की सामग्री को प्रबंधित करने के लिए अनुमति देता है।

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

+0

धन्यवाद मारजन, लेकिन जहां तक ​​मैं इसे देख सकता हूं * यह "प्रोजेक्ट टेम्पलेट्स" * से संबंधित है, न कि "कोड टेम्पलेट्स"। [डॉक्स] देखें (http://docwiki.embarcadero.com/RADStudio/en/Template_Libraries_Overview)। –

+0

@SertacAkyuz: आप बिल्कुल सही हैं। उस जगह नहीं लगाया। –

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