Совместимость DLL Delphi: передача Unicode строк из XE2 в Delphi 2006Delphi , Файловая система , DLL и PlugInsЕсли вы разрабатываете приложение на Delphi 2006, которое должно использовать библиотеку (DLL), написанную на Delphi XE2 и принимающую строки в формате Unicode, важно понимать различия в типах строк между этими версиями Delphi. В Delphi 2006, который не поддерживает Unicode, тип Шаг 1: Определение функции в Delphi 2006Чтобы корректно передать строку в DLL, написанную на Delphi XE2, вам необходимо определить функцию в вашем приложении Delphi 2006 так, чтобы она принимала параметр
Шаг 2: Использование типа WideStringДля хранения строки используйте тип
Шаг 3: Работа с длиной строкиЕсли ваша DLL не делает предположений о том, как память выделена, и просто читает из неё или пишет в неё, то В Delphi 2006:
И вызывать её следующим образом:
В Delphi XE2, где
Шаг 4: Обратите внимание на встроенные нулевые символы
Следуя этим шагам, вы сможете обеспечить корректную передачу Unicode строк из DLL, написанной на Delphi XE2, в приложение на Delphi 2006. При разработке приложения на Delphi 2006, которое использует библиотеку (DLL) на Delphi XE2, необходимо учитывать различия в обработке строк Unicode для корректной передачи данных между версиями Delphi. Комментарии и вопросыПолучайте свежие новости и обновления по Object Pascal, Delphi и Lazarus прямо в свой смартфон. Подпишитесь на наш Telegram-канал delphi_kansoftware и будьте в курсе последних тенденций в разработке под Linux, Windows, Android и iOS Материалы статей собраны из открытых источников, владелец сайта не претендует на авторство. Там где авторство установить не удалось, материал подаётся без имени автора. В случае если Вы считаете, что Ваши права нарушены, пожалуйста, свяжитесь с владельцем сайта. :: Главная :: DLL и PlugIns ::
|
||||
©KANSoftWare (разработка программного обеспечения, создание программ, создание интерактивных сайтов), 2007 |