Я могу помочь с этим, поскольку я портирую приложение C ++ Builder, использующее TNT с 2007 по 2009 год. Переход на Unicode в D2009 просрочен и приветствуется. Однако, к сожалению, переход, вероятно, будет проще для тех, кто НЕ нуждался в юникоде в прошлом, и, вероятно, все еще не делает этого. Если, как и я, вам нужен Юникод и вы используете для его управления великолепный элемент управления TNT Троя Вольбринка, у вас довольно сложная работа ...
Хорошей новостью является то, что есть новая версия TNTControls от TMS Software , которая поддерживает D2009. Я не смотрел на это, но ожидаю, что это просто «фасадный» слой поверх собственных компонентов VCL, чтобы упростить переносимость. Я бы посчитал, что если ваши другие библиотеки можно будет перестроить, чтобы использовать его.
Однако, возможно, вам лучше вернуться к собственным элементам управления VCL, и причина кроется в строковых типах. Элемент управления TNT всегда использовал WideString для передачи строк Unicode туда и обратно, и вы можете использовать WideString, разбросанные по вашему собственному коду. Это будет работать, но это не идеально, так как WideString действительно следует использовать только для взаимодействия COM, поскольку он «оборачивает» тип COM BSTR. Собственные строки Unicode в D2009 подсчитываются по ссылкам и должны быть значительно быстрее.
Если вы решили заменить компоненты TNT на собственные компоненты VCL, вы можете использовать команду GExperts «Заменить компоненты» - или, возможно, проще выполнить поиск и замену в ваших файлах .DFM и .PAS (которые вы действительно имеете в текстовая форма, не так ли) заменить TTNT на T.