Как я могу найти все единицы в своем приложении Delphi?

Когда вы используете службу с type: ClusterIP, она имеет только IP-адрес кластера и не имеет внешнего IP-адреса <none>.

10
задан Mason Wheeler 8 April 2009 в 20:56
поделиться

8 ответов

Another, but rather cumbersome way, is to generate a map file, it contains a list of all units used in a program.

see also this answer: How can I find all the units in my Delphi app?

6
ответ дан 3 December 2019 в 13:24
поделиться

Я использую GExperts Зависимости проекта.
С помощью «Используется ...» вы можете видеть единицы, включенные, но никем не используемые. Но вы не можете видеть модуль, включенный в предложения использования, которые могут быть удалены, если у них нет фактически вызванного кода.

Вот справка:


Зависимости проекта

Эксперт по зависимостям проекта позволяет увидеть, какие единицы использует конкретная единица, и, в свою очередь, какие единицы используют конкретную единицу. Когда этот эксперт активирован, он анализирует весь исходный код текущего проекта для предложений использования и формирует список зависимостей. Чтобы просмотреть информацию о зависимостях для конкретного устройства, щелкните по нему на левой панели. Правая панель будет содержать информацию о зависимостях. Косвенные зависимости - это единицы, которые используются используемыми единицами конкретной единицы.

Вы можете в любое время обновить информацию о зависимостях, нажав кнопку обновления на панели инструментов, и вы можете отсортировать список файлов, щелкнув заголовки столбцов.

6
ответ дан 3 December 2019 в 13:24
поделиться

Вы смотрели на Pascal Analyzer или бесплатную ограниченную версию Icarus из Peganza Software ? Они будут создавать «отчеты об использовании», сообщая вам, какой модуль использует то, что другие, так что это должно дать вам информацию, которую вы ищете.

Марк

4
ответ дан 3 December 2019 в 13:24
поделиться

GExperts имеет инструмент Зависимости проекта. Я использовал его раньше, когда пытался отследить использованные единицы. Вы не можете искать в нем, но вы можете экспортировать список в файл CSV и искать там. Это также только перечисляет то, что находится в разделе использования. Если у вас есть модуль, который не используется, он все равно будет отображаться.

4
ответ дан 3 December 2019 в 13:24
поделиться

Я знаю как минимум два способа, которыми вы можете попытаться получить представление обо всех единицах, используемых в вашем проекте

  1. CTRL-SHIFT-B открывает браузер объектов. Если я не ошибаюсь, здесь вы можете посмотреть использованные юниты. Я не совсем уверен в этом методе, и у меня нет Delphi для его проверки.
  2. Use Modelmaker ; Модельер может дать вам древовидное представление всех ваших зависимостей юнитов. Посмотрите раздел Визуализация существующего кода для получения дополнительной информации.
3
ответ дан 3 December 2019 в 13:24
поделиться

Существует (довольно старая) утилита под названием UsgParse. Он создает древовидную структуру всех модулей, на которые ссылается проект.

Я нашел копию на сайте NexusDB через http://coding.derkeiler.com/Archive/Delphi/borland.public.delphi.thirdpartytools.general/2004-03/0231.html

источник: http: //www.nexusdb. ru / downloads / USGParse / USGParse_src.zip

двоичный файл: http://www.nexusdb.com/downloads/USGParse/USGParse.zip

0
ответ дан 3 December 2019 в 13:24
поделиться

Самый простой способ - скомпилировать программу и проверить, какой .dcu был создан компилятором. Обязательно настройте компилятор для создания .dcu в отдельном каталоге, например c: \ dcu . Я создал простую утилиту, которая ищет .pas для каждого файла .dcu в каталогах, которые находятся в пути поиска компилятора (который можно прочитать из .cfg , .dof или .bdsproject файл).

1
ответ дан 3 December 2019 в 13:24
поделиться

Отладчик Delphi может показать вам, какие модули были скомпилированы в модуль (exe, dll или пакет). Вы можете увидеть это в представлении «Модули» (Просмотр | Отладка Windows | Модули). Щелкните модуль в верхней левой панели, и в нижней левой панели отобразятся все единицы компиляции, которые были встроены в этот модуль. Если конкретная единица компиляции была составлена ​​из нескольких исходных файлов (например, файлов .pas и .inc), они также будут показаны (когда вы развернете модуль comp).

В качестве альтернативы вы можете настроить компилятор Delphi для отображения списка используемых .dcus, передав --depends при компиляции проекта. Будет выведен файл .d со списком необходимых .dcus (и .dcps).

25
ответ дан 3 December 2019 в 13:24
поделиться
Другие вопросы по тегам:

Похожие вопросы: