Pertanyaan Bagaimana saya bisa menemukan semua unit di aplikasi Delphi saya?


Cukup mudah untuk menemukan semua dependensi eksternal Anda. Jalankan saja program dan buka jendela Modul info. Tapi bagaimana saya bisa menemukan semua saya intern ketergantungan? Saya tahu program menyimpan daftar semua unit, karena saya telah menelusuri jalan saya melalui kode inisialisasi satu atau dua kali. Tetapi apakah ada cara mudah untuk mengakses daftar ini dari debugger?


10
2018-04-08 20:56


asal


Jawaban:


Cara lain, tetapi agak merepotkan, adalah untuk menghasilkan file peta, ini berisi daftar semua unit yang digunakan dalam sebuah program.

lihat juga jawaban ini: Bagaimana saya bisa menemukan semua unit di aplikasi Delphi saya?


6
2018-04-09 05:12



Debugger Delphi dapat menunjukkan unit mana yang dikompilasi menjadi modul (exe, dll atau paket). Anda dapat melihat ini dalam tampilan Modul (Lihat | Debug Windows | Modul). Klik pada modul di panel kiri atas, dan panel kiri bawah akan menampilkan semua unit kompilasi yang dibangun ke modul itu. Jika unit kompilasi khusus terdiri dari beberapa file sumber (yaitu .pas dan file .inc), yang akan ditampilkan juga (ketika Anda memperluas unit comp).

Sebagai alternatif, Anda dapat memiliki kompilator Delphi menunjukkan kepada Anda daftar digunakan. Dcus dengan melewatkan - tergantung ketika Anda mengkompilasi sebuah proyek. Ini akan menampilkan file .d dengan daftar .dcus (dan .dcps) yang diperlukan.


25
2017-07-01 03:15



Saya menggunakan GEEXIS Dependensi Proyek.
Dengan "Used By ...", Anda dapat melihat unit yang termasuk tetapi tidak digunakan oleh siapa pun. Tetapi Anda tidak dapat melihat unit yang termasuk dalam klausa penggunaan yang dapat dihapus ketika mereka tidak memiliki kode yang benar-benar disebut.

Inilah bantuannya:


Dependensi Proyek 

Pakar ketergantungan proyek memungkinkan Anda untuk melihat unit apa yang digunakan unit tertentu, dan pada gilirannya unit apa yang menggunakan unit tertentu. Ketika pakar ini diaktifkan, ia mem-parsing semua kode sumber proyek saat ini untuk menggunakan klausa dan membangun daftar dependensi. Untuk melihat informasi ketergantungan untuk unit tertentu, klik di panel sebelah kiri. Panel kanan akan berisi informasi ketergantungan. Ketergantungan tidak langsung adalah unit yang digunakan oleh unit-unit yang digunakan dari unit tertentu.

Anda dapat menyegarkan informasi ketergantungan kapan saja dengan mengklik tombol segarkan pada bilah alat dan Anda dapat mengurutkan daftar file dengan mengklik pada tajuk kolom.
alt teks http://www.gexperts.org/tour/project%20dependencies.png


OTOH, Anda juga dapat menggunakan gratis ICARUS Peganza sebagai alat pelaporan yang lebih rinci tetapi kurang interaktif ...


6
2018-04-09 01:08



Pernahkah Anda melihat Pascal Analyzer atau versi terbatas gratis, Icarus, dari Perangkat Lunak Peganza? Mereka akan membuat "menggunakan laporan" yang memberi tahu Anda modul apa yang menggunakan apa yang orang lain, sehingga harus memberi Anda info yang Anda cari.

Marc


4
2018-04-08 21:00



GEEXIS memiliki alat Dependensi Proyek. Saya telah menggunakannya sebelumnya ketika mencoba untuk melacak unit yang digunakan. Anda tidak dapat mencari di dalamnya tetapi Anda dapat mengekspor daftar ke file CSV dan mencari di sana. Ini juga hanya mencantumkan apa yang ada di bagian penggunaan. Jika Anda memiliki modul termasuk yang tidak digunakan, itu masih akan muncul.


4
2018-04-09 00:00



Saya tahu setidaknya dua cara Anda bisa mencoba untuk melihat semua unit yang digunakan dalam proyek Anda

  1. CTRL-SHIFT-B membuka browser objek. Jika saya tidak salah, di sini Anda bisa mendapatkan tampilan unit yang digunakan. Saya tidak sepenuhnya yakin tentang metode ini dan tidak memiliki Delphi yang tersedia untuk memverifikasinya.
  2. Menggunakan Pembuat model; Modelmaker dapat memberi Anda pohon seperti tampilan dari semua unit dependancies Anda. Lihatlah Memvisualisasikan kode yang ada bagian untuk informasi lebih lanjut.

3
2018-04-08 21:09



Cara termudah adalah dengan menyusun program dan memeriksa yang mana .dcu dibuat oleh kompilator. Pastikan untuk membuat kompilator untuk dibuat .dcu di direktori terpisah, misalnya c:\dcu. Saya telah membuat utilitas sederhana yang dicari .pas untuk setiap .dcu file dalam direktori yang berada di jalur pencarian kompilator (yang dapat dibaca dari .cfg, .dof atau .bdsproject mengajukan).


1
2018-02-13 16:44



Anda dapat menggunakan file MAP bersama MapFileStats, ini tidak hanya memberikan semua dependensi Anda, tetapi jumlah kode (dan sumber daya) yang mereka sumbangkan dalam eksekusi akhir.

Berguna untuk mendeteksi unit yang Anda miliki, tetapi hanya menggunakan unit-unit "babi gemuk", yang mengambil semuanya plus wastafel dapur dengan mereka.

FWIW, mengurangi ketergantungan dan menghilangkan hog tidak hanya bermanfaat untuk ukuran yang dapat dijalankan, tetapi juga bermanfaat di tengah jalan ketika akan tiba waktunya untuk meng-upgrade ke versi baru.


1
2017-11-01 12:52



Ada utilitas (yang agak lama) yang disebut UsgParse. Ini membangun tampilan pohon dari semua unit yang direferensikan oleh sebuah proyek.

Saya menemukan salinan di situs NexusDB melalui http://coding.derkeiler.com/Archive/Delphi/borland.public.delphi.thirdpartytools.general/2004-03/0231.html

sumber:  http://www.nexusdb.com/downloads/USGParse/USGParse_src.zip

biner: http://www.nexusdb.com/downloads/USGParse/USGParse.zip


0
2018-04-08 21:34