How do I add a TXT file as resource to my EXE file?

元气小坏坏 提交于 2019-11-27 17:21:35

问题


I have a TXT file containing about 10,000 lines of text. I want to display these lines in a TMemo. But I don't want to distribute that TXT file my program. How do I integrate it into my EXE file as a resource WITHIUT using stringtable {} because this requires an identifier for each line (so I will have to add 10000 identifiers).

_

I have Delphi XE


回答1:


I usually create an RC file (which is basically an text file) for this kind of resources, then add line like

MyText RCDATA ..\resources\filename.txt

for each file / resource into the RC file. If the RC file is part of the project it will be compiled (to res) and linked into exe. To use the resource I usually use TResourceStream, ie

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

BTW if the RC file wasn't added to the project automatically when you created it in the IDE then add line like

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

into the project file, right after the uses list.




回答2:


Since you want to display the text in a TMemo, you could just copy/paste the text directly into the TMemo.Lines property editor at design-time. The text will be included in the owning Form/Frame's DFM resource at compile-time and loaded into the TMemo automatically at run-time for you.



来源:https://stackoverflow.com/questions/8943010/how-do-i-add-a-txt-file-as-resource-to-my-exe-file

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!