![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Где хранить текст шаблонов [D6]
IgorBet © (2007-10-19 14:25:00)Добрый день.Существует программа Patch, которая приводит базы данных пользователей к актуальному состоянию. Помимо обновление структуры БД происходит и добавление шаблонов в поля Blob. Вопрос практического характера. Где можно хранить текст блоб-поля запросов ? Запросов порой бывает под десяток. Т.е. надо организовать массив string, где размер и значения каждого элемента известны на момент компиляции программы. Сложность в размере элементов. Неудобно в исходном тексте вводить константу на несколько листов.
IgorBet (2007-10-19 15:35:00) [1]Спасибо, элегантное решение, то, что нужно.
Leonid Troyanovsky (2007-10-19 15:21:00) [2]
> Palladin © (19.10.07 15:14) [5]
> Хотя помоему есть и RC_TEXT... в общем нужно посмотреть
Именно RCDATA (ResType = RT_RCDATA)
--
Regards, LVT.
Palladin (2007-10-19 15:14:00) [3]Хотя помоему есть и RC_TEXT... в общем нужно посмотреть типы хранимых ресурсов...
Palladin (2007-10-19 15:10:00) [4]компилятор не поддерживает многострочные текстовые константы
если тебе не удобно, то создавай много текстовых файлов и линкуй их через файл ресурсов как RC_DATA, позже во время выполнения загружая их через TResourceStream
IgorBet (2007-10-19 15:03:00) [5]
> смысл не меняется
Вот это точно подмечено. Тут скрыта другая проблема. Постоянное форматирование текста блоба к string. Т.е., допустим, текст шаблона:
"Шла
Саша по шоссе"
Его надо хранить как:
'Шла ' +
'Саша по шоссе';
Никто случаем не автоматизировал этот процесс ?
Palladin (2007-10-19 14:48:00) [6]Ну вводи не в самом теле программы, а храни в отдельном файле и пользуйся директивой $I, смысл не меняется, но в теле маячить не будет...
IgorBet (2007-10-19 14:31:00) [7]Вот такой массив, но с ним неудобно работать. Можно ли как-нибудь облегчить себе жизнь ?
var
A: array[0..10] of string = ('очень большой текст','очень большой текст',....);