Я отлаживаю крупное приложение, распределенное по многим единицам. Я столкнулся с ошибкой компиляции в низкоуровневой единице, и не имейте ни малейшего представления, в которой части приложения ссылаются на эту единицу. Существует ли способ использовать студийные 2010-е RAD IDE для создания некоторого включать-графика?
Поскольку большинство используемых единиц не является частью проекта и распространяет вполне разветвленное исходное дерево, я не могу просто использовать, 'находят в файлах' опцию.
Я в настоящее время пересекаю через свое дерево с помощью search-in-files-utility, но это является громоздким.
Вы знаете о amore изящном пути? Разработка находится в студии RAD Embercadero 2010, Windows XP 32.
Посмотрите на Modelmaker's unit dependeny analyzer. Это может дать вам больше, чем вы хотите, и это бесплатно.
Я использую очень простую идею: я переименовываю имя модуля с .pas на .pas_, а затем создаю проект. Компилятор сообщит об ошибке в модуле, который использует искомый модуль. Простой и очень хорошо работает, но я не буду называть его "элегантным": (
Я думаю, что Delphi вместо:
[Pascal Fatal Error] unit2.pas(31): F2063 Could not compile used unit 'unit2'
должен сообщать:
[Pascal Fatal Error] unit2.pas(31): F2063 Could not compile unit 'unit2' used by 'unit1'
(возможно, некоторые из сопровождающих Delphi прочитают его: это облегчит нам жизнь)
В анализаторе Pascal компании Peganza есть «Отчет об использовании». Может быть, это поможет тебе.
Редактировать: Вы также можете попробовать Icarus от той же компании. Это бесплатно (как в пиве :-)) (спасибо Уве).