0
基於在例如here,here例子,here,我想包括在項目SVN版本信息。 svn信息調用的結果存儲在rev.txt
(這是一個普通的ansi文件)。我revinfo.rc
看起來是這樣的:德爾福2010:無法找到資源 - EResNotFound
REV_TEXT TEXT rev.txt
我的項目是這樣的:
unit rev;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls;
type
TForm2 = class(TForm)
Memo1: TMemo;
Button1: TButton;
procedure Button1Click(Sender: TObject);
end;
var
Form2: TForm2;
implementation
{$R *.dfm}
{$R revinfo.res}
procedure TForm2.Button1Click(Sender: TObject);
var
RS : TResourceStream;
MyStr : AnsiString;
begin
RS := TResourceStream.Create(hInstance, 'REV_TEXT', RT_RCDATA);
SetLength(MyStr, RS.Size);
RS.Read(MyStr[1], RS.Size);
RS.Free;
Memo1.Text := MyStr;
end;
end.
該項目彙編,換句話說,資源文件本身是由編譯器位於(或perphaps它是連接?)。無論如何;當執行語句TResourceStream.Create(hInstance, 'REV_TEXT', RT_RCDATA);
時,我得到一個EResNotFound異常,抱怨它找不到資源REV_TEXT。我可以確認資源文件的編譯效果令人滿意,其中包含rev.txt
文本文件的內容。有沒有人能夠重現我的煩惱?我也試過使用TResourceStream構造函數的索引版本,但我不知道要使用哪個索引(嘗試0,1和2無效)。
我真的很感謝你的幫忙! :)
非常感謝!奇蹟般有效。 (雖然文字是用中文出來的......哦,好吧,至少還有一步。):) – conciliator 2011-01-12 07:38:34