2012-08-30 15 views
6

मेरा प्रबंधित .net एप्लिकेशन तृतीय पक्ष .net लाइब्रेरीज़ का उपयोग करता है, जो (PInvoke के माध्यम से) अप्रबंधित dlls का उपयोग करता है। मैं यह जानना चाहता हूं कि कौन से डीएल लोड हैं। मैंने "प्रोसेस एक्सप्लोरर" और "निर्भरता वॉकर" का उपयोग करने की कोशिश की, लेकिन मैं केवल प्रबंधित डीएलएल देख सकता हूं।मेरे प्रबंधित .NET एप्लिकेशन द्वारा सभी अप्रबंधित DLLs loadad की सूची कैसे खोजें

उत्तर

10

किसी भी डिबगर इस (windbg उदाहरण के लिए) कर सकता है - लेकिन क्योंकि यह एक अच्छा मौका है कि आप दृश्य स्टूडियो पैकिंग कर रहे हैं मैं कैसे में यह करने के लिए के बारे में बात करेंगे कि

को विजुअल स्टूडियो डीबगर संलग्न आवेदन, केवल मूल निवासी डिबगर चयन करने के लिए याद इस प्रकार है:

How to set debugger type to Native

एक बार जब आप संलग्न कर रहे हैं, डीबग मारा -> तोड़ और फिर [CTRL] + [ALT] + [U] प्रेस मॉड्यूल खिड़की को लाने के लिए (यह मेनू पर है कहीं लेकिन हाँ मैं 'टी इसे खोजने) - यहाँ एक उदाहरण Samsung Kies के आवेदन मेरे डेस्कटॉप (जो WPF का उपयोग करता है) से गोली मार दी है:

The modules list

मेरे मामले में मैं भी प्रबंधित डिबगर सक्षम है, और करने के लिए प्रक्रिया नाम ले जाया गया उस स्क्रीनशॉट के प्रयोजनों के लिए कॉलम सूची की शुरुआत करें।

यदि प्रक्रिया के नाम के बाद : Native है, तो यह एक अप्रबंधित DLL है (ठीक है, यह मिश्रित मोड भी हो सकता है)।

ध्यान दें कि Windows में सभी प्रक्रियाओं होगा हमेशा लोड अप्रबंधित DLLs का एक अच्छा लंबी सूची है; क्योंकि विंडोज़ इसके दिल में अप्रबंधित है और एप्लिकेशन का अंतिम मेजबान है।

लेकिन निश्चित रूप से आप इस सूची का उपयोग शुरुआती बिंदु के रूप में कर सकते हैं और वहां से फ़िल्टर कर सकते हैं।

+0

धन्यवाद, यह वही था जो मुझे चाहिए था। – Gerhard

+0

धन्यवाद एंड्रेस! वह उपयोगी था .... – VVV

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