Подтвердить что ты не робот

Как добавить TXT файл в мой EXE файл?

У меня есть TXT файл, содержащий около 10000 строк текста. Я хочу показать эти строки в TMemo. Но я не хочу распространять этот TXT файл в своей программе. Как интегрировать его в свой EXE файл в качестве ресурса WITHIUT с помощью stringtable {}, потому что для этого требуется идентификатор для каждой строки (поэтому мне нужно будет добавить 10000 идентификаторов).

_

У меня Delphi XE

4b9b3361

Ответ 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 во время выполнения для вас.