आप आरटीएल को किसी अन्य इकाई की तरह पुन: संकलित कर सकते हैं।
System.pas के लिए आपको कमांड लाइन कंपाइलर का उपयोग करना होगा।
उदाहरण के लिए, यहाँ एक काम बैच फ़ाइल सामग्री (वहाँ कुछ अच्छी तरह से प्रलेखित नहीं कमांड लाइन स्विच है):
del *.dcu /s
"c:\program files\borland\delphi7\bin\dcc32.exe" -O+ -Q -M -Y -Z -$D+ System.pas
यह पुन: संयोजित करेंगे System.pas और SysInit.pas (दोनों निम्नतम स्तर RTL फ़ाइलें) ।
लेकिन अपनी पुन: निर्मित डीसीयू फ़ाइलों का उपयोग करने के लिए, आपको अपने आईडीई की पहली स्थिति में अद्यतन डीसीयू फाइलों को रखने वाले फ़ोल्डर को रखना होगा: उदाहरण के लिए, डेल्फी 7 में यह विकल्प/पर्यावरण विकल्प/लाइब्रेरी है, फिर अपने फ़ोल्डर को पहले "लिबररी पथ" और "ब्राउजिंग पथ" फ़ील्ड में रखें।
और शायद आपके डेल्फी स्थापना निर्देशिका में मूल .dcu फ़ाइलों को हटाने के लायक है।
लेकिन सुनिश्चित करें कि आप इकाई के "इंटरफेस" हिस्से को नहीं बदलेंगे, या आपको आरटीएल (या तृतीय-पक्ष घटकों) की अन्य संशोधित इकाइयों के साथ संकलन करने में परेशानी होगी। आप "कार्यान्वयन" भाग को बदल सकते हैं, फिक्स लागू कर सकते हैं या गति के लिए कुछ भाग फिर से लिख सकते हैं, लेकिन किसी भी लिंकिंग त्रुटि से बचने के लिए "इंटरफ़ेस" भाग को न बदलें।
हमेशा मूल .pas और .dcu फ़ाइलों का बैकअप लें जो आप बदल रहे हैं। और कुछ स्वचालित संकलन परीक्षण करना एक अच्छा विचार है, ताकि आप सुनिश्चित हो सकें कि आरटीएल के आपके संशोधन में कोई प्रतिक्रिया नहीं होगी।
हमने निम्न स्तर के आरटीएल कार्यों (ज्यादातर System.pas और SysUtils.pas) की बेहतर गति के लिए हमारे Enhanced Run Time Library के लिए ऐसा आरटीएल पुनर्मूल्यांकन किया है। डेल्फी 7 और 2007 के लिए डिज़ाइन किया गया। हाल ही में डेल्फी संस्करण के लिए, आप अभी भी उसी सिद्धांत का उपयोग कर सकते हैं।
स्रोत
2011-01-30 08:56:06
स्पष्ट लेखन के लिए धन्यवाद, कठिन अनुभव द्वारा समर्थित। अति उत्कृष्ट! –