2012-06-05 4 views
4

Я создал файл .Lrs и я импортировал в программу, он работает, но как я могу взять ресурс из программы и извлечь его в папку на моем ПК? Код:extract lazarus resource

unit Unit1; 

{$mode objfpc}{$H+} 

interface 

uses 
    Classes, SysUtils, FileUtil, Forms, LResources, Controls, Graphics, Dialogs, ExtCtrls; 

type 

    { TForm1 } 

    TForm1 = class(TForm) 
    procedure FormCreate(Sender: TObject); 
    private 
    { private declarations } 
    public 
    { public declarations } 
    end; 

var 
    Form1: TForm1; 

implementation 

{$R *.lfm} 

{ TForm1 } 

procedure TForm1.FormCreate(Sender: TObject); 
begin 

end; 

initialization 
{$I resource.lrs} 

end. 

Спасибо!

ответ

5

Вы можете использовать TLazarusResourceStream класс, который является частью LResources блока

Попробуйте этот образец

var 
    Stream: TLazarusResourceStream; 
begin 
    Stream := nil; 
    try 
    //load the lazarus resource 
    Stream := TLazarusResourceStream.Create('image', nil); 
    //save to a file 
    Stream.SaveToFile('C:\Foo\image.png'); 
    finally 
    Stream.Free; 
    end; 
end; 
+0

Спасибо, это работает! –

Смежные вопросы