Вопрос

Есть ли способ запретить пакетам в Delphi неявно импортировать блоки, которых нет в списке "Содержит"?Я ищу директиву компилятора, которая приводит к сбою сборки, если она пытается выполнить неявный импорт.

Проблемы возникают, когда вы устанавливаете пакет в IDE, который неявно импортирует модуль A, а затем вы пытаетесь установить другой пакет, который действительно содержит модуль A, и IDE сообщает вам, что не может установить этот пакет, потому что модуль A уже содержится в первом пакете, даже если этого не должно быть!

Это было полезно?

Решение

Если вы используете версию Delphi старше 2009 года, вы можете сделать так, чтобы предупреждение вызывало ошибку, используя DDevExtensions ( расширения ) (это бесплатно).После установки перейдите в меню Сервис > DDevExtensions - Параметры и в разделе "Усовершенствования компилятора" установите флажок "Активный" и "Рассматривать предупреждения как ошибки".Вы можете добавить предупреждения, которые вы хотите, чтобы они не рассматривались как ошибки, в памятку ниже.К сожалению, в вашем случае, похоже, вы просто хотите, чтобы одно предупреждение рассматривалось как ошибка, поэтому вам придется добавлять в список практически все предупреждения, кроме того, что касается неявного импорта, хотя обычно хорошей практикой кодирования является разрешение всех предупреждений компилятора в любом случае, поэтому вы можете захотеть, чтобы все предупреждения вызывали ошибки.

Другие советы

В Delphi 2009 есть возможность преобразовывать предупреждения в сбои.Это сделало бы то, что вы хотите сделать, вплоть до того, что это привело бы к сбою.

Чтобы предотвратить неявный импорт, вам необходимо импортировать его явно или удалить устройство, которое неявно импортирует его.

Нет никакого способа превратить это предупреждение в ошибку.В Delphi 2009 вы можете заставить рассматривать все предупреждения как ошибки.

PS:Это ошибка в Delphi для .Net

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top