Подтвердить что ты не робот

Почему Delphi говорит: "Невозможно разрешить название узла xxx"?

Я работаю с Delphi2010 Enterprise Update 4.
Когда я открываю свой проект в среде IDE и отображаю код основной формы, в выделяются 2 названия блоков.

xxx http://img268.imageshack.us/img268/6475/unitnameunresolved.png.

У меня проверено, что путь к источнику устройства находится в Library path и в Browsing path.

Удивительно, но когда я делаю щелчок правой кнопкой мыши на устройстве и выбираю Open file at cursor, он работает (т.е. delphi открывает правый блок).

Есть идеи об этом?

4b9b3361

Ответ 1

Error Insight, который сохраняет все сообщения об ошибках в представлении структуры, довольно затруднительно. Он не понимает ваш код так, как это понимает компилятор.

Существует IDE Fix Pack, разработанный Andreas Hausladen, который уменьшает количество проблем "Невозможно решить проблемы с единичным xyz".

Он не исправляет ошибку, но делает ее менее заметной, обращаясь к некоторым проблемам с потоками ошибок Insight.

Ответ 2

Из любопытства, есть ли какой-либо код в AdPort и/или AdStatLt, подлежащий условной компиляции?

Синтаксический анализатор, лежащий в основе ошибки Insight, я думаю, что он отличается (физически и контекстно) от компилятора. Компилятор может быть в состоянии понять те области условной компиляции, в которых ошибка Insight не является.

Это только предположение с моей стороны, но Error Insight значительно улучшилось в Delphi 2010 и, как правило, теперь только дросселируется, когда в моем коде есть ошибки, которые мне еще предстоит решить.

Ответ 3

Закрытие и повторное открытие проекта обычно помогает избавиться от большинства этих ошибок. Попробуйте...

(Это не меняет того факта, что в наши дни это, вероятно, мое раздражение номер один в среде IDE...)

Ответ 4

I reset путь к библиотеке в разделе tools\options\environment options\delphi options\library.

Выберите раскрывающийся список и снова выберите os, и он будет reset путь к библиотеке. Работал для меня.

Ответ 5

Просто отключите Error Insight (Инструменты → Параметры → Параметры редактора → Code Insight, снимите флажок Error Insight). Он отлично работает для меня.

Источник: http://codeverge.com/embarcadero.delphi.ide/cannot-resolve-unit-name-forms/1041789

Это только косметическая проблема, и она никак не влияет на ваше приложение.

Это вызвано ошибкой в компиляторе, используемом для Error Insight (функциональность, которая дает волнистые красные линии), который не является тем же компилятором, который использовался для сборки вашего приложения или для компиляции из командной строки. Эта ошибка существует с момента появления Error Insight. (Однако это случалось реже; раньше, когда я устанавливал Delphi, первым делом я должен был отключить Error Insight, и мне не приходилось делать это с D2007 или D2009, так как проблема очень редкая и, похоже, долго не продержится по какой-либо причине.)

Поскольку проблемы действительно нет (кроме косметической проблемы), вы можете либо проигнорировать ее, либо избавиться от нее, отключив Error Insight (Инструменты → Параметры → Параметры редактора → Code Insight, снимите флажок Error Insight).