delphi - 如何将 TXT 文件作为资源添加到我的 EXE 文件中?

标签 delphi delphi-xe embedded-resource

我有一个包含大约 10,000 行文本的 TXT 文件。我想在 TMemo 中显示这些行。 但我不想分发我的程序的 TXT 文件。如何使用 stringtable {} 将其作为资源集成到我的 EXE 文件中,因为这需要每行都有一个标识符(因此我必须添加 10000 个标识符)。

_

我有德尔福XE

最佳答案

我通常为此类资源创建一个 RC 文件(基本上是一个文本文件),然后添加如下行

MyText RCDATA ..\resources\filename.txt

将每个文件/资源​​放入RC文件中。如果 RC 文件是项目的一部分,它将被编译(到 res)并链接到 exe。要使用资源,我通常使用 TResourceStream,即

var ResStream: TResourceStream;
ResStream := TResourceStream.Create(hInstance, 'MyText', RT_RCDATA);

顺便说一句,如果您在 IDE 中创建 RC 文件时未将其自动添加到项目中,则添加如下行

{$R 'myExtraRes.res' 'myExtraRes.RC'}

进入项目文件,就在uses列表之后。

关于delphi - 如何将 TXT 文件作为资源添加到我的 EXE 文件中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8943010/

相关文章:

delphi - 如何将DivMod优化为10的常数除数

delphi - 如何在 Delphi 2009 中设置 JIT 调试器?

delphi - 如何制作当另一个表单以模态方式显示时不被禁用的表单?

delphi - 如何在具有透明度和不透明度的 Canvas 上绘画?

delphi - 编译rc文件遇到 "expected exponent value"错误

delphi - 具有多个 if/copy 组合的构建后事件仅在第一个文件不存在时执行

delphi - 如何在保持正确纵横比的情况下进行缩放

java - 在 Java 代码中定位文件

html - 是否有关于 HTML 资源包的建议?

java - 在 Java Web Start 中运行 JNLP 时出现 NullPointerException(jar 用作 stardardlone)