Как добавить TXT файл в мой EXE файл?
У меня есть TXT файл, содержащий около 10000 строк текста. Я хочу показать эти строки в TMemo.
Но я не хочу распространять этот TXT файл в своей программе. Как интегрировать его в свой EXE файл в качестве ресурса WITHIUT с помощью stringtable {}
, потому что для этого требуется идентификатор для каждой строки (поэтому мне нужно будет добавить 10000 идентификаторов).
_
У меня Delphi XE
Ответы
Ответ 1
Обычно я создаю файл RC
(который является в основном текстовым файлом) для такого рода ресурсов, а затем добавляйте строку типа
MyText RCDATA ..\resources\filename.txt
для каждого файла/ресурса в файл RC. Если файл RC является частью проекта, он будет скомпилирован (до res
) и связан с exe. Для использования ресурса я обычно использую TResourceStream
, т.е.
var ResStream: TResourceStream;
ResStream := TResourceStream.Create(hInstance, 'MyText', RT_RCDATA);
Кстати, если файл RC не был добавлен в проект автоматически, когда вы его создали в среде IDE, добавьте строку, например
{$R 'myExtraRes.res' 'myExtraRes.RC'}
в файл проекта, сразу после списка uses
.
Ответ 2
Поскольку вы хотите отобразить текст в TMemo
, вы можете просто скопировать/вставить текст непосредственно в редактор свойств TMemo.Lines
во время разработки. Текст будет включен в собственный ресурс формы/кадра DFM во время компиляции и автоматически загружается в TMemo
во время выполнения для вас.