Buscar

Armazenando bmp's em arquivos res

Código

Armazenando BMP's em arquivos RES
1. Criem um arquivo texto, por exemplo: RECURSOS.RC com um conteudo igual a este:

BITMAP_1 BITMAP "C:ImagensGrafico.bmp"
para todos os bitmap'
s que vc deseja;

2. Compilem este arquivo usando o BRCC32.EXE que esta no diretorio BIN do Delphi sera gerado o arquivo RECURSOS.RES; e

3. Coloquem dentro do fonte do projeto:

{$R RECURSOS.RES}
Para usar o bitmap faca o seguinte:

VarTipoTBitmap:= LoadBitmap(HInstance,'BITMAP_1');
Colocando um JPG dentro de um .exe
Para colocar um arquivo qualquer dentro de um arquivo .exe, primeiramente crie um arquivo com extensão .rc no Bloco de Notas. O formato de um arquivo .rc é o seguinte:

1 RCDATA "MyPic.jpg"

onde "1" é o índice do arquivo, "RCDATA" é significa que é um tipo de arquivo não-padrão (os padrões são bitmaps, ícones e cursores) e ""MyPic.jpg"" é o nome do arquivo. Salve e execute o programa BRCC32.EXE que fica no subdiretório Bin do Delphi (BRCC32 arquivo.rc). Será criado um arquivo .res (arquivo.res) cujo conteúdo terá o próprio JPG.

Nota: Você pode colocar mais de um arquivo no arquivo .res, desde que os índices sejam diferentes.

Para colocá-lo no executável, coloque a linha:

{$R arquivo.res}
após a linha:

{$R *.DFM}
Ok, ele já vai ficar no executável. E como eu rodo esse JPG? Simples:

procedure LoadJPEGfromEXE;
var
MyJPG : TJPEGImage;
ResStream : TResourceStream;
Index : Integer;
begin
Index := 1;
try
MyJPG := TJPEGImage.Create;
ResStream := TResourceStream.CreateFromID (HInstance, Index, RT_RCDATA);
MyJPG.LoadFromStream (ResStream);
Canvas.Draw (12, 12, MyJPG);
finally
MyJPG.Free;
ResStream.Free;
end;
end;
Troque o valor de Index pelo valor do índice que você criou para o arquivo que deseja abrir.

 
 

Publicidade

Vote na dica




Quantidade de votos: 0 votos
Aceitação: 0%


Detalhes da dica

Categoria: Object pascal
Adicionada dia: 03/02/05
Por: Ricardo L. S.
Visualizada: 1856 vezes

Planeta Delphi - Tudo sobre programação Delphi Planeta Delphi - www.planetadelphi.com.br - Todos os direitos reservados | Copyright 2001-2009