如何将TXT文件(资源)添加到EXE文件中?

内容来源于 Stack Overflow,并遵循CC BY-SA 3.0许可协议进行翻译与使用

  • 回答 (2)
  • 关注 (0)
  • 查看 (112)

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

提问于
用户回答回答于

我通常创建一个RC文件(基本上是文本文件)用于这类资源,然后添加如下所示的行

MyText RCDATA ..\resources\filename.txt

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

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

顺便说一句,如果在IDE中创建RC文件时没有自动将rc文件添加到项目中,那么添加行如下

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

进入项目文件中,就在uses名单。

用户回答回答于

因为希望在TMemo,可以直接将文本复制/粘贴到TMemo.Lines设计时的属性编辑器。文本将在编译时包含在拥有的窗体/框架的dfm资源中,并加载到TMemo在运行时自动为你服务。

扫码关注云+社区