Получение многих версий следующей ошибки компоновщика в XE5.
[ilink32 Error] Error: Unresolved external '__stdcall System::UnicodeString::~UnicodeString()' referenced from <Location>
Из всего, что я прочитал до сих пор, похоже, что у меня что-то не так с моей структурой включения в настройках проекта, и у меня нет доступа к тому, где фактически определены все строковые методы, но я не могу понять, где это должно быть.
Эта проблема не имеет ничего общего с включениями. Включить проблемы влияют только на компилятор. Ваш проект использует UnicodeString
класс, поэтому компилятор генерирует ссылки на UnicodeString
методы, основанные на том, как они объявлены в ustring.h
и это делает компилятор счастливым.
Вы получаете линкер вместо этого, потому что он не может разрешить ссылки, сгенерированные компилятором. Это означает, что в вашем проекте отсутствует обязательная ссылка на библиотеку RTL Embarcadero, которая реализует фактическую UnicodeString
метод тел. Вероятно, это говорит о том, что ваш проект изначально был создан / импортирован неправильно или поврежден. Возможно, вам придется пересоздать проект с нуля, чтобы использовались ссылки на библиотеки по умолчанию, и повторно добавить существующие файлы кода в этот новый проект.
Других решений пока нет …