2010-01-03 12 views

उत्तर

44

यहां निर्भरता वॉकर है।

http://dependencywalker.com/

+3

केवल कमांड लाइन के लिए, ldd मौजूद कुछ भी करता है? किसी चीज की तलाश में मैं एक प्रॉम्प्ट से उपयोग कर सकता हूं। एक अतिरिक्त प्रकाश कमांड पसंद करें, अधिमानतः अतिरिक्त डीएलएल के बिना। – TechZilla

+2

ऐसा प्रतीत होता है कि इसमें कमांड लाइन इंटरफ़ेस है: http://www.dependencywalker.com/help/html/hidr_command_line_help.htm –

+3

सिंटेक्स ऐसा कुछ दिखता है: निर्भर करता है। Exe/c /oc:dependencies.csv/ot: dependencies.txt mydll.dll – Boinst

19

dumpbin आदेश, कई बातों के लिए उपयोगी हो सकता है, हालांकि इस मामले निर्भरता में वॉकर शायद थोड़ा और वर्बोज़ है।

dumpbin /dependents some.dll 
+1

यदि आपके पास विजुअल स्टूडियो स्थापित है तो यह सबसे अच्छा विकल्प है। – sakra

24

या जीएनयू उपकरण:

i586-mingw32msvc-objdump -p *.exe | grep 'DLL Name:' 
+0

क्या objdump पूर्ण पथ प्रदर्शित करने के लिए उपयोग किया जा सकता है? मुझे कुछ बार फिर से आवश्यकता है और इसके लिए प्रत्येक आश्रित डीएलएल – INS

+2

objdump के लिए पूर्णपथ की आवश्यकता है केवल आपको दिखाता है कि फ़ाइल में क्या है। यह 'ldd' करता है जैसे किसी भी पथ लुकअप करने का प्रयास नहीं करता है। –

6

अब है Cygwin में एक ldd। यदि आपके पास बहुत पुराना सिगविन संस्करण है, तो आपको cygcheck का उपयोग करना होगा।

+0

हां, लेकिन यह बहुत सटीक नहीं है – Stef

8

यदि आप wine का उपयोग कर रहे हैं और वास्तविक विंडोज नहीं हैं, तो आप WINEDEBUG=+loaddll wine <program> का उपयोग कर सकते हैं।

+5

विंडोज़ को लक्षित करने के लिए शराब के खिलाफ विकास ने मुझे इतना अजीब लगाया कि मुझे इसे एक प्रयास (मैं मुख्य रूप से लिनक्स को लक्षित करता हूं) ... और वास्तव में यह * दूर * दूर से काम कर रहा है मैं प्रोटोटाइप के लिए उम्मीद की थी। बहुत बहुत शांत। – zxq9

+0

पुन: विंडोज के बजाए शराब का उपयोग करके विकास: ध्यान दें कि शराब में जो काम करता है वह वास्तविक विंडोज पर काम नहीं करेगा। मैंने यह सीखा जब मैं 'GdiplusStartup' को कॉल करना भूल गया, और जीडीआई + ने शराब में समस्याओं के बिना काम किया, जबकि विंडोज़ पर यह नहीं था। मैंने शराब में कार्यक्रम को डीबग करने के बाद ही इस गलती को देखा, विंडोज़ में इसे चलाने के लिए कोशिश कर रहा था। – Ruslan

19

PowerShell इस

 
PS > Start-Process -PassThru calc.exe | Get-Process -Module 

    Size(K) ModuleName 
    ------- ---------- 
     908 calc.exe 
     1700 ntdll.dll 
     1148 kernel32.dll 
     432 KERNELBASE.dll 
    13856 SHELL32.dll 
      ... 
+3

यह केवल काम के रूप में प्रतीत होता है क्योंकि प्रोग्राम वास्तव में डीएलएस पाता है - विफलता के मामले में सूची अपूर्ण है। – 01d55

6

मैं Windows डेवलपर तरीका यह है लगता है कि dumpbin /dependents source.exe उपयोग करने के लिए है कर सकते हैं। यदि आपके पास विजुअल स्टूडियो स्थापित है तो आप इसे यहां पा सकते हैं: C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\bin\dumpbin.exe

+0

बहुत बुरा यह नहीं दिखाता है कि आश्रित कहां पाए जाते हैं ताकि आप देख सकें कि वास्तव में रनटाइम पर कौन से उपयोग किए जाते हैं :(। – rubenvb

3

विंडोज पर गिट के नए संस्करण गीट बाश नामक किसी चीज़ के साथ पैक किए जाते हैं, जो कई उपयोगी यूनिक्स कमांड को ldd सहित अनुकरण करता है।

ऐसा प्रतीत होता है कि यह केवल पुस्तकालयों को रिपोर्ट करता है जो पाया जा सकता है। तो आप इसका उपयोग इस बात का अवलोकन पाने के लिए कर सकते हैं कि उपयोग की गई पुस्तकालय कहां स्थित हैं, लेकिन जो गुम हैं।

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