0

我正在尝试在 delphi res.RC 文件中打开一个简单的资源(GIF):

Loading RCDATA "loadingAd.gif"

代码:

{$R *.dfm}
{$R res.RES}

procedure TForm1.Image1Click(Sender: TObject);
var h : THandle;
begin
   h := FindResource(HInstance, 'Loading', 'RCDATA');
   showmessage(IntToStr(h))
end;

但是每次我得到 0 时,我都在使用 XE4,所以我尝试过:

{$R *.dfm}
{$R res.RES}

procedure TForm1.Image1Click(Sender: TObject);
var h : THandle;
begin
   h := FindResource(HInstance, PChar('Loading'), PChar('RCDATA'));
   showmessage(IntToStr(h))
end;

仍然收到“找不到资源”。

4

1 回答 1

5

您正在错误的资源类型下搜索资源。字符串'RCDATA'与常量不同RT_RCDATA,它实际上是整数 10 强制具有类型PChar。使用它而不是字符串文字。如果仍然找不到资源,请使用资源浏览器验证您的程序是否确实包含您期望的资源。

于 2013-06-05T23:00:04.103 回答