![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
|
Опции темы | Поиск в этой теме |
![]() |
#1 |
Старожил
Регистрация: 30.12.2009
Сообщений: 11,434
|
![]()
Доброго времени суток!
{DELPHI} В EXE записывается на стадии компиляции файл TXT, с содержимым как RCDATA. Restorator видит ресурс в каталоге RCDATA определяет тип: Text Мне необходимо программно работать с этим ресурсом(уже другой моей же программой), а именно изменять тамошний текст: Код:
1. Restorator видит новый DATA ресурс в папке RCData, НО: --1. Тип ресурс RCData --2. Ресурс отображается в HEX виде --3. Я не догоняю как правильно записать строку. Есть это: ![]() Имею это: ![]() А должно быть вот это: ![]() Где мой косяк? ![]() |
![]() |
![]() |
![]() |
#2 |
Brainsbreaker
Пользователь
Регистрация: 07.02.2011
Сообщений: 26
|
![]()
Картинок не видно.
|
![]() |
![]() |
![]() |
#3 |
Старожил
Регистрация: 28.01.2009
Сообщений: 21,000
|
![]()
вероятно строка была анси?
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел. Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите. |
![]() |
![]() |
![]() |
#4 | |
Белик Виталий :)
Старожил
Регистрация: 23.07.2007
Сообщений: 57,097
|
![]() Цитата:
I'm learning to live...
|
|
![]() |
![]() |
![]() |
#5 |
Старожил
Регистрация: 30.12.2009
Сообщений: 11,434
|
![]()
Stilet,Пепел Феникса, в XE3 по умолчанию все в UNICODE.
|
![]() |
![]() |
![]() |
#6 |
Старожил
Регистрация: 13.07.2012
Сообщений: 6,369
|
![]()
Функция UpdateResource() обновляет все как массив байт. Пофиг ANSI это или UNICODE.
Мне однако не понятно вот это выражение: Length(s) * SizeOf(s) * SizeOf(Char) Не многовато ли тут умножений? |
![]() |
![]() |
![]() |
#7 |
Старожил
Регистрация: 30.12.2009
Сообщений: 11,434
|
![]()
Length(s) * SizeOf(Char)
Так правильнее? |
![]() |
![]() |
![]() |
#8 |
Старожил
Регистрация: 30.12.2009
Сообщений: 11,434
|
![]() Код:
Кто чего подскажет? |
![]() |
![]() |
![]() |
#9 |
Старожил
Регистрация: 13.07.2012
Сообщений: 6,369
|
![]()
Какие данные ожидает увидеть программа?
Если я правильно понял, первый screenshot это изначальные данные, второй - это ваши изменения. Ваши изменения написаны в UNICODE кодировке. Очевидно программа читает данные в однобайтной кодировке, UTF8, Windows 1251 и т.д. т.е. это зависит от программы. Конвертируйте строки в однобайтовую кодировку. |
![]() |
![]() |
![]() |
#10 | |
Старожил
Регистрация: 30.12.2009
Сообщений: 11,434
|
![]() Цитата:
Программа написана на XE3, там не должно быть с этим проблем вообще. Результат тот же(скрин 2), только без мусора в хвосте. |
|
![]() |
![]() |
![]() |
|
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Обновить значки после добавления нового типа файла | Человек_Борща | Win Api | 3 | 13.08.2012 18:18 |
Эффект выделения input типа text при нажатиии | ZvEr_HaCkEr | HTML и CSS | 2 | 09.07.2011 15:41 |
В ячейках DBGrid изображается поле типа text как (Memo) | belartvlad29 | БД в Delphi | 2 | 18.07.2010 14:36 |
ПРОБЛЕМА ДОБАВ ДАННЫХ В ПОЛЯХ ТИПА TEXT NTEXT В MYSQL2000 | shurik12 | БД в Delphi | 2 | 07.10.2008 20:31 |
RCData | Witaliy | Общие вопросы Delphi | 3 | 27.04.2008 23:06 |