Apa yang setara dengan Linux ldd
di Windows?
Jawaban:
Inilah Dependency Walker.
The dumpbin
perintah dapat berguna untuk banyak hal, meskipun dalam kasus ini ketergantungan walker mungkin sedikit lebih verbose.
dumpbin /dependents some.dll
Contoh keluaran:
C: \ Program Files (x86) \ Microsoft Visual Studio \ 2017 \ Community \ Team Tools \ Static Analysis Tools> dumpbin / dependents StanPolicy.dll
Buang file StanPolicy.dll
Jenis File: DLL
Gambar memiliki dependensi berikut:
mscoree.dll
Ringkasan
2000 .reloc 2000 .rsrc 1E000 .text
atau alat GNU:
i586-mingw32msvc-objdump -p *.exe | grep 'DLL Name:'
ldd
dilakukan.
PowerShell dapat melakukan ini
PS> Mulai-Proses -PassThru calc.exe | Dapatkan-Proses -Module Ukuran (K) ModuleName ------- ---------- 908 calc.exe 1700 ntdll.dll 1148 kernel32.dll 432 KERNELBASE.dll 13856 SHELL32.dll ...
Jika Anda menggunakan wine
dan bukan Windows asli, Anda dapat menggunakan WINEDEBUG=+loaddll wine <program>
.
GdiplusStartup
, dan GDI + bekerja tanpa masalah di Wine, sementara di Windows tidak. Saya hanya melihat kesalahan ini setelah men-debug program di Wine, selanjutnya mencoba menjalankannya di Windows.
Sekarang ada ldd
di Cygwin. Jika Anda memiliki versi Cygwin yang sangat lama, Anda harus menggunakan cygcheck
.
Saya kira cara Pengembang Windows untuk melakukan ini adalah dengan menggunakan dumpbin /dependents source.exe
. Jika Anda memiliki Visual Studio diinstal Anda dapat menemukannya di sini: C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\bin\dumpbin.exe
.
Versi Git yang lebih baru di Windows dikemas dengan sesuatu yang disebut Git BASH , yang mengemulasi banyak perintah Unix yang berguna termasuk ldd.
Tampaknya laporan hanya pustaka yang dapat ditemukan. Jadi Anda bisa menggunakan ini untuk mendapatkan gambaran umum tentang di mana perpustakaan bekas berada, tetapi tidak ada yang hilang.
Untuk Windows 10 Anda dapat menggunakan Dependency - Sebuah Dependency Walker open-source modern
Untuk windows 10, dengan visual studio 2017, saya masuk ke bilah pencarian windows dan ketik:
"Developer Command Prompt for VS 2017" (cmd.exe khusus untuk pengembang Visual studio)
Ini memungkinkan untuk mendapatkan akses ke DUMPBIN yang harus digunakan dengan tag / IMPORTS. Misalnya, di direktori yang benar:
DUMPBIN / IMPORTS yourfile.exe (ekstensi lain mungkin juga berfungsi)
Bagi saya, ini daftar DLL dan fungsi yang digunakan.
Cara lainnya, Anda dapat menggunakan tag \ ALL yang jauh lebih bertele-tele.
lihat penjelasan microsoft DUMPBIN:
https://docs.microsoft.com/en-us/cpp/build/reference/imports-dumpbin?view=vs-2019
Contoh (dengan hanya sebagian) dari konten yang dikirim kembali oleh perintah
dumpbin /imports *.dll | find /i ".dll"