找不到资源文件'权限'

时间:2017-05-16 22:07:23

标签: delphi

在FormCreate过程中,我写道:

 var f: TResourceStream;
  begin
    // load data about rights from rights.txt resource file
     f := TResourceStream.create(Hinstance, 'rights', PChar('RT_RCDATA'));
  try
    LoadFromStream(f);
  finally
    f.free;
  end;

并收到错误:

Project1.exe raised exception class ERESNotFound with message 'Resource rights not found'.

如果我更改文件路径'权限':

'rights.txt'            or
'D:\Example\rights.txt' or
'D:\Example\rights'

我得到同样的错误!

rights.txt文件我找到了项目文件夹和win32 \ debug \ project1.exe文件夹,但是发生了同样的错误。

更新1

PopupMenu with access rights

rights.txt file for loading popupmenu

在rights.txt文件中这些未定义的符号是什么?

1 个答案:

答案 0 :(得分:3)

您需要将ResType参数更改为RT_RCDATA而不是PChar('RT_RCDATA')

f := TResourceStream.create(Hinstance, 'rights', RT_RCDATA);

RT_RCDATA单元中定义的System.Types如下

const
  RT_RCDATA       = PChar(10);

所以你也可以像这样使用它

f := TResourceStream.create(Hinstance, 'rights', PChar(10));