आपकी सभी बाहरी निर्भरताओं को ढूंढना काफी आसान है। बस प्रोग्राम चलाएं और मॉड्यूल जानकारी विंडो खोलें। लेकिन मैं अपने सभी आंतरिक निर्भरताओं को कैसे ढूंढ सकता हूं? मुझे पता है कि कार्यक्रम सभी इकाइयों की एक सूची रखता है, क्योंकि मैंने प्रारंभिक कोड के माध्यम से एक या दो बार अपना रास्ता खोज लिया है। लेकिन क्या डीबगर से इस सूची तक पहुंचने का कोई आसान तरीका है?मैं अपने डेल्फी ऐप में सभी इकाइयों को कैसे ढूंढ सकता हूं?
उत्तर
एक और है, बल्कि बोझिल तरीके से उपयोग कर सकते हैं ..., है एक नक्शा फ़ाइल उत्पन्न करने के लिए, उसमें शामिल एक कार्यक्रम में उपयोग की जाने वाली सभी इकाइयों की एक सूची। How can I find all the units in my Delphi app?
क्या आपने Peganza Software से पास्कल विश्लेषक या मुफ्त सीमित संस्करण, इकरस को देखा है? वे "रिपोर्ट का उपयोग" करेंगे जो आपको बताएंगे कि कौन सा मॉड्यूल दूसरों का उपयोग करता है, जिससे आपको वह जानकारी देनी चाहिए जो आप बाद में कर रहे हैं।
मार्क
मैं कम से कम दो तरीके आप अपने सभी परियोजना में इस्तेमाल इकाइयों के एक दृश्य के
- Ctrl-Shift-बी वस्तु ब्राउज़र खुल जाता है पाने के लिए कोशिश कर सकते के बारे में पता। अगर मुझे गलत नहीं लगता है, तो आप यहां इस्तेमाल इकाइयों का एक दृश्य प्राप्त कर सकते हैं। मैं इस विधि के बारे में पूरी तरह से निश्चित नहीं हूं और इसे सत्यापित करने के लिए डेल्फी उपलब्ध नहीं है।
- Modelmaker का उपयोग करें; मॉडलमेकर आपको अपनी सभी इकाई निर्भरताओं के दृश्य जैसे पेड़ दे सकता है। अधिक जानकारी के लिए Visualizing existing code अनुभाग देखें।
UsgParse नामक एक (बल्कि पुरानी) उपयोगिता है। यह एक परियोजना द्वारा संदर्भित सभी इकाइयों का एक वृक्षदृश्य बनाता है।
मैं के माध्यम से NexusDB साइट पर एक प्रति पाया http://coding.derkeiler.com/Archive/Delphi/borland.public.delphi.thirdpartytools.general/2004-03/0231.html
स्रोत: http://www.nexusdb.com/downloads/USGParse/USGParse_src.zip
बाइनरी: http://www.nexusdb.com/downloads/USGParse/USGParse.zip
GExperts एक परियोजना निर्भरता उपकरण है। मैंने उपयोग इकाइयों को ट्रैक करने की कोशिश करते समय इसे पहले इस्तेमाल किया है। आप इसमें खोज नहीं सकते लेकिन आप सूची को एक CSV फ़ाइल में निर्यात कर सकते हैं और वहां खोज सकते हैं। यह केवल सूची अनुभाग में क्या है सूचीबद्ध करता है। यदि आपके पास एक मॉड्यूल शामिल है जिसका उपयोग नहीं किया जा रहा है, तो यह अभी भी दिखाई देगा।
मैं GExperts परियोजना निर्भरता का उपयोग करता हूं।
"द्वारा उपयोग ..." के साथ, आप इकाइयों को शामिल कर सकते हैं लेकिन किसी के द्वारा उपयोग नहीं किया जा सकता है। लेकिन आप उपयोग खंडों में शामिल इकाई को नहीं देख सकते हैं जिसे हटाया जा सकता है जब उनके पास वास्तव में कोई कोड नहीं है।
यहाँ मदद है:
परियोजना निर्भरता
परियोजना निर्भरता विशेषज्ञ क्या इकाइयों के लिए एक विशेष इकाई का उपयोग करता है यह देखने के लिए सक्षम बनाता है, और बदले में क्या इकाइयों के लिए एक विशेष इकाई का उपयोग करें। जब यह विशेषज्ञ सक्रिय होता है, तो यह उपयोग खंडों के लिए सभी मौजूदा प्रोजेक्ट के स्रोत कोड को पार करता है और निर्भरताओं की एक सूची बनाता है। किसी विशेष इकाई के लिए निर्भरता जानकारी देखने के लिए, बाएं फलक में उस पर क्लिक करें। दाएं फलक में निर्भरता जानकारी होगी। अप्रत्यक्ष निर्भरता इकाइयां हैं जिनका उपयोग किसी विशेष इकाई की प्रयुक्त इकाइयों द्वारा किया जाता है।
आप टूलबार पर रीफ्रेश बटन पर क्लिक करके किसी भी समय निर्भरता जानकारी को रीफ्रेश कर सकते हैं और आप कॉलम हेडर पर क्लिक करके फ़ाइल प्रविष्टि को सॉर्ट कर सकते हैं।
alt text http://www.gexperts.org/tour/project%20dependencies.png
OTOH, तुम भी मुक्त Peganza's ICARUS एक अधिक विस्तृत रिपोर्टिंग उपकरण लेकिन कम इंटरैक्टिव के रूप में
सबसे आसान तरीका कार्यक्रम संकलन और जाँच जो .dcu
संकलक द्वारा बनाया गया था के लिए है:
भी इस सवाल का जवाब देखें। एक अलग निर्देशिका में .dcu
बनाने के लिए कंपाइलर सेट करना सुनिश्चित करें, उदाहरण के लिए c:\dcu
। मैंने सरल उपयोगिता बनाई है जो प्रत्येक .dcu
फाइलों के लिए .pas
की खोज करता है जो एक कंपाइलर खोज पथ में हैं (जिसे .cfg
, .dof
या .bdsproject
फ़ाइल से पढ़ा जा सकता है) में फ़ाइल।
डेल्फी डीबगर आपको दिखा सकता है कि कौन सी इकाइयां मॉड्यूल (एक्सई, डीएलएल या पैकेज) में संकलित की गई थीं। आप इसे मॉड्यूल दृश्य में देख सकते हैं (देखें | डीबग विंडोज | मॉड्यूल)। ऊपरी बाएं फलक में एक मॉड्यूल पर क्लिक करें, और निचला बायां फलक उस मॉड्यूल में बनाए गए सभी संकलन इकाइयों को दिखाएगा। यदि एक विशेष संकलन इकाई एकाधिक स्रोत फ़ाइलों (यानी एक .pas और a .inc फ़ाइल) से बना है, तो यह भी दिखाया जाएगा (जब आप COMP इकाई का विस्तार करते हैं)।
वैकल्पिक रूप से, आप डेल्फी कंपाइलर को प्रोजेक्ट संकलित करते समय --depends को पास करके उपयोग किए गए .dcus की एक सूची दिखा सकते हैं। यह एक .d फ़ाइल को .dcus (और .dcps) की सूची के साथ आउटपुट करेगा जो आवश्यक थे।
आप MapFileStats के साथ एक एमएपी फ़ाइल का उपयोग कर सकते हैं, यह आपको केवल अपनी सभी निर्भरताओं को नहीं देगा, बल्कि अंतिम निष्पादन योग्य में कोड (और संसाधन) की मात्रा प्रदान करेगा।
उन इकाइयों को स्पॉट करने के लिए उपयोगी जिनके पास निर्भरता है, लेकिन उनमें से कुछ का उपयोग करें, साथ ही "वसा हॉग" इकाइयों को ढूंढना, जो सबकुछ उनके साथ रसोईघर सिंक लेते हैं।
एफडब्ल्यूआईडब्ल्यू, निर्भरता को कम करने और हॉग को खत्म करने के लिए निष्पादन योग्य आकार के लिए फायदेमंद नहीं है, यह एक नए संस्करण में अपग्रेड करने का समय होगा, यह सड़क के लिए फायदेमंद भी है।
- 1. मैं AJAX ऐप में अप्रयुक्त सीएसएस कैसे ढूंढ सकता हूं?
- 2. रूबी ऐप में अप्रयुक्त विधियों को कैसे ढूंढ सकता हूं?
- 3. मैं अपने सी # प्रोजेक्ट में सभी स्थिर चर कैसे ढूंढ सकता हूं?
- 4. मैं अपने ऐप में सभी स्क्रॉल प्रभाव को कैसे अक्षम कर सकता हूं?
- 5. मैं अपने डेटाबेस में सभी टेबल कैसे छोड़ सकता हूं?
- 6. मैं समाधान में सभी एक्सटेंशन विधियों को कैसे ढूंढ सकता हूं?
- 7. मैं जावास्क्रिप्ट में Shift + key को कैसे ढूंढ सकता हूं?
- 8. मैं सभी * .js फ़ाइल को लिनक्स में दोबारा निर्देशिका में कैसे ढूंढ सकता हूं?
- 9. मैं अपने रूबी एप्लिकेशन में प्रदर्शन बाधाओं को कैसे ढूंढ सकता हूं?
- 10. क्या मैं अपने अन्य Google ऐप इंजन अनुप्रयोगों की डेटास्टोर इकाइयों तक पहुंच सकता हूं
- 11. उद्धरणों के बीच वाले लोगों को छोड़कर मैं सभी सफेद जगहों को कैसे ढूंढ सकता हूं?
- 12. मैं मॉडल के रिश्तों को कैसे ढूंढ सकता हूं?
- 13. मैं वर्तमान DNS सर्वर कैसे ढूंढ सकता हूं?
- 14. पायथन में नियमित अभिव्यक्तियों के लिए मैं सभी मैचों को कैसे ढूंढ सकता हूं?
- 15. मैं आर में कक्षा के लिए परिभाषित सभी विधियों को कैसे ढूंढ सकता हूं?
- 16. मैं HTML इकाइयों को कैसे डीकोड कर सकता हूं?
- 17. मैं HTML स्निपेट में टेक्स्ट नोड्स कैसे ढूंढ सकता हूं?
- 18. मैं अपने सभी PHPUnit परीक्षण कैसे चला सकता हूं?
- 19. एंड्रॉइड मार्केट में ऐप नहीं ढूंढ सकता
- 20. मैं एक आईपी पते को हल करने वाले सभी डोमेन नाम कैसे ढूंढ सकता हूं?
- 21. क्या मैं एक कस्टम डेल्फी घटक उपयोग खंड में एकाधिक इकाइयों को जोड़ सकता हूं?
- 22. मैं उन तत्वों को कैसे ढूंढ सकता हूं जिनमें jquery
- 23. मैं अपने टेक्स्ट एडिटर में एक विशेष चरित्र का कैरेक्टर कोड कैसे ढूंढ सकता हूं?
- 24. मैं अपने ऐप को अपने विजेट के साथ कैसे एकीकृत कर सकता हूं?
- 25. क्या मैं अपने सी # ऐप में सभी धागे के स्टैक निशान प्राप्त कर सकता हूं?
- 26. myObject का संदर्भ देने वाली सभी ऑब्जेक्ट्स को मैं कैसे ढूंढ सकता हूं?
- 27. शेयरपॉइंट: मैं एक विशेष वेब भाग होस्ट करने वाले सभी पृष्ठों को कैसे ढूंढ सकता हूं?
- 28. मैं अपने एंड्रॉइड ऐप में अपने विज्ञापन कैसे तेजी से प्रदर्शित कर सकता हूं?
- 29. मैं एप्लिकेशन का बेस यूआरएल कैसे ढूंढ सकता हूं?
- 30. मैं सी # में ऑब्जेक्ट के सभी सार्वजनिक फ़ील्ड कैसे ढूंढ सकता हूं?
आज कुछ नया सीख लिया: '--depends' :) मैंने हमेशा .dcu निर्देशिका को साफ़ किया, फिर संकलन के बाद .dcu निर्देशिका का 'dir/b' किया। डीबगर चाल भी साफ है! –
कंपाइलर के कौन से संस्करण --depends स्विच के बारे में जानते हैं? – dummzeuch
मैं हमेशा थोड़ा और मस्तिष्क का उपयोग कर सकता हूं :-) इस भयानक उत्तर के लिए धन्यवाद। –