Здравствуйте, требуется помощь компетентного программиста по данному вопросу.
Необходимо перевести маленькую процедуру в юникодовскую среду.
В семёрке всё работало как часы, при переходе на XE версию возникает проблема из-за поддержки string юникода.
Скриншот1 Delphi7
[Ссылки могут видеть только зарегистрированные пользователи. ]
Скриншот2 Delphi XE5
[Ссылки могут видеть только зарегистрированные пользователи. ]
Сделал скриншоты, где переменная получала значение на разных версиях Delphi.
Нужно как на первом скриншоте.
Заранее благодарю. Уже кучу способов перепробовал. Много часов убил, но толку не вышло.
________________
[Ссылки могут видеть только зарегистрированные пользователи. ]
Для просмотра ссылок или изображений в подписях, у Вас должно быть не менее 10 сообщение(ий). Сейчас у Вас 0 сообщение(ий). Пишу софт на заказ(Delphi / C# / PHP-скрипты). Описывайте задачи и цели софта, сообщайте сумму на которую рассчитываете.
Skype: vinozavr (Молдова)
Кто плюсует популярность, подписывайтесь пожалуйста)
[Ссылки могут видеть только зарегистрированные пользователи. ]
Вроде из той области
________________
Я - часть той силы, что вечно хочет зла и вечно совершает благо.
Если вы думаете, что став модером, вы не сможете тролить,вы ошибаетесь, теперь вы тролите всех своим существованием
случайность - визитная карточка бога.
Жизнь слишком коротка, чтобы волноваться о том, что о тебе подумают или скажут люди
Для просмотра ссылок или изображений в подписях, у Вас должно быть не менее 10 сообщение(ий). Сейчас у Вас 0 сообщение(ий).
Простой способ решения - объявить тип переменной AnsiString. Этот тип оставили для обратной совмести и это в большинстве случаев достаточно.
Но, как видно из скринов используются инди компоненты, они также уже перешли на юникод и просто замена типа данных может не прокатить. В идеале надо использовать класс [Ссылки могут видеть только зарегистрированные пользователи. ].
И второе "но")) Это же вообще не текст? Бинарные данные. Причем тут строки?
________________
Для просмотра ссылок или изображений в подписях, у Вас должно быть не менее 10 сообщение(ий). Сейчас у Вас 0 сообщение(ий).
В любом из нас спит гений. И с каждым днем все крепче.
Запомните раз и навсегда:= 'Помочь' <> 'Сделайте за меня';
Для просмотра ссылок или изображений в подписях, у Вас должно быть не менее 10 сообщение(ий). Сейчас у Вас 0 сообщение(ий).
Последний раз редактировалось J-Fobos; 05.09.2016 в 12:13.
Простой способ решения - объявить тип переменной AnsiString. Этот тип оставили для обратной совмести и это в большинстве случаев достаточно.
Но, как видно из скринов используются инди компоненты, они также уже перешли на юникод и просто замена типа данных может не прокатить. В идеале надо использовать класс [Ссылки могут видеть только зарегистрированные пользователи. ].
И второе "но")) Это же вообще не текст? Бинарные данные. Причем тут строки?
Благодарю за Ваш ответ. С ансистринг тоже как только не "вертел" код. Исход выполнения функции был один - либо дешифратор gzip выдавал data error, либо программа зависала. Возможно с Вами как-то связаться, для того, чтобы скинуть исходный код проекта на 7 и на XE5 и Вы могли бы заметить то, чего не замечаю я. Код очень маленький и не станет нагружать Вас)
________________
[Ссылки могут видеть только зарегистрированные пользователи. ]
Для просмотра ссылок или изображений в подписях, у Вас должно быть не менее 10 сообщение(ий). Сейчас у Вас 0 сообщение(ий). Пишу софт на заказ(Delphi / C# / PHP-скрипты). Описывайте задачи и цели софта, сообщайте сумму на которую рассчитываете.
Skype: vinozavr (Молдова)
Кто плюсует популярность, подписывайтесь пожалуйста)
Там нечего замечать, надо либо переделать на использование TEncoding, либо перестать работать с бинарными данными как со строками.
ps: второе предпочтительней...
Варианты с TEncoding на байтах я тоже перебирал не единожды. Результат не дало это.
________________
[Ссылки могут видеть только зарегистрированные пользователи. ]
Для просмотра ссылок или изображений в подписях, у Вас должно быть не менее 10 сообщение(ий). Сейчас у Вас 0 сообщение(ий). Пишу софт на заказ(Delphi / C# / PHP-скрипты). Описывайте задачи и цели софта, сообщайте сумму на которую рассчитываете.
Skype: vinozavr (Молдова)
Кто плюсует популярность, подписывайтесь пожалуйста)
О чём и речь. Возможно, я что-то не доглядел в официальном модуле Zlib. Мне кажется на него стоит грешить при переходе на юникод. В семёрке же работало всё как надо.
________________
[Ссылки могут видеть только зарегистрированные пользователи. ]
Для просмотра ссылок или изображений в подписях, у Вас должно быть не менее 10 сообщение(ий). Сейчас у Вас 0 сообщение(ий). Пишу софт на заказ(Delphi / C# / PHP-скрипты). Описывайте задачи и цели софта, сообщайте сумму на которую рассчитываете.
Skype: vinozavr (Молдова)
Кто плюсует популярность, подписывайтесь пожалуйста)