Delphi - Versionamento de Arquivos

Delphi

20/06/2014

olá,

É possível Via comando delphi, Incluir\alterar a versão do arquivo, de qualquer extensão (.exe, .txt, .bpl, etc..) .

Sei que tem o Recurso do delphi que controla versões ao compilar, mas quero embutir nos arquivos (que compõem minha publicação) o numero da versão ao qual foi publicada, sendo estes arquivos de qualquer extensão. pra que depois posso resgatá-lo se for necessário.

para arquivos exe, consigo utilizando o Código abaixo, mas para outras extensões não consegui usar.

function TForm1.GravarResourceInfo(const FileName, NomeRecurso, Texto: string):boolean;
var hRes : THandle;
cHD : String;
Begin
cHD := AnsiUpperCase(Texto);
hRes := BeginUpdateResource(pchar(FileName),False);
if hRes <> 0 then
begin
result := true;
UpdateResource(hRes,RT_RCDATA,pchar(AnsiUpperCase(NomeRecurso)), 0 , Pointer(cHD), StrLen(PCHAR(cHD)) + 1);
if EndUpdateResource(hRes,False) then
Result := true
else
Result := false;
end
else
result := false;
end;

function TForm1.LerResourceInfo(NomeRecurso: string): string;
var ResData: HGLOBAL;
ResInfo: HRSRC;
Begin
Result := '';
ResInfo := FindResource(hInstance, pchar(AnsiUpperCase(NomeRecurso)),RT_RCDATA);

if ResInfo <> 0 then
begin
ResData := LoadResource(hInstance, ResInfo);
if ResData <> 0 then
begin
try
Result := PChar(LockResource(ResData));
UnlockResource(ResData);
finally
FreeResource(ResData);
end;
end;
end;
end;


é possível adaptar estas funções para gravar e ler informações de qualquer tipo de arquivo?

ou alguém conhece alguma recurso do qual possa gravar a versão no arquivo e depois resgatar.
Marcelo Aguilera

Marcelo Aguilera

Curtidas 0
POSTAR