Привет, У меня есть программа, которая при загрузке кнопки создает ресурс вручную в самом приложении (в данном случае это изображение), а затем читает ресурс для отображения в timage.El проблема кажется, что он хорошо создает ресурс, но когда я хочу загрузить ресурс, он говорит, что не может найти его, когда вы его ищете.Создание и загрузка ресурсов в Delphi
Код.
procedure StringtoRes(const FileName: string; Inputstream: TMemoryStream);
var
hUpdate: THandle;
begin
hUpdate := BeginUpdateResource(PChar(FileName), True);
try
UpdateResource(hUpdate, RT_RCDATA, 'ID', LANG_NEUTRAL, Inputstream.Memory,
Inputstream.Size);
finally
EndUpdateResource(hUpdate, False);
end;
end;
procedure TForm1.btnTestClick(Sender: TObject);
var
MemStr: TMemoryStream;
FileName: string;
var
RStream: TResourceStream;
JPEGImage: TJPEGImage;
begin
FileName := 'c:/test/test.jpg';
MemStr := TMemoryStream.Create;
MemStr.LoadFromFile(FileName);
MemStr.Seek(0, soFromBeginning);
StringtoRes(paramstr(0), MemStr);
MemStr.Free;
Sleep(3000);
RStream := TResourceStream.Create(HInstance, 'ID', RT_RCDATA);
JPEGImage := TJPEGImage.Create;
JPEGImage.LoadFromStream(RStream);
Image1.Picture.Graphic := JPEGImage;
JPEGImage.Free;
RStream.Free;
end;
как я решаю это?
спасибо Remy, Последний вопрос, когда я использовал свой первоначальный код без указания другого exe, моя функция исказила exe, потому что он потратил это? потому что у меня семь 64-битных? – FF2
один вопрос, почему Sleep (3000); ? Благодарю. – Passella