Como saber a versão de um arquivo?
Olá, gostaria de saber qual a versão de 2 arquivos, e comparar os dois, me informando qual arquivo tem a versão maior, ou seja, a versão mais nova...
Desde já agradeço,
Desde já agradeço,
Titanius
Curtidas 0
Respostas
Beppe
24/12/2003
Como você define ´versão maior´? Tamanho em bytes, recursos? E que tipo de arquivo?
GOSTEI 0
Titanius
24/12/2003
tipo:
versao arqv 1.: 1.0.0.1
versao arqv 2.: 1.0.0.2
saber qual o maior entre eles.
valeu...
versao arqv 1.: 1.0.0.1
versao arqv 2.: 1.0.0.2
saber qual o maior entre eles.
valeu...
GOSTEI 0
Beppe
24/12/2003
Você já sabe as versões:
type TVersions = ( verEquals, // versões iguais verFirstGreater, // a primeira é maior verSecondGreater, // a segunda é maior verUnknown // desconhecido ); function CompareV(S1, S2: String): TVersions; var X, Y: Integer; function GetDotToken(var S: String): Integer; var I: Integer; begin Result := 0; I := 1; repeat if S[I] = ´.´ then Break; Result := Result * 10 + Ord(S[I]) - Ord(´0´); Inc(I); until I > Length(S); Delete(S, 1, I); end; begin Result := verUnknown; while (S1 <> ´´) and (S2 <> ´´) do begin X := GetDotToken(S1); Y := GetDotToken(S2); if X < Y then Result := verSecondGreater else if X > Y then Result := verFirstGreater; if X <> Y then Exit; end; if (S1 = ´´) and (S2 = ´´) then Result := verEquals; end; procedure TForm1.Button1Click(Sender: TObject); var B: TVersions; begin B := CompareV(Edit1.Text, Edit2.Text); CheckBox1.Checked := B in [verFirstGreater, verEquals]; CheckBox2.Checked := B in [verSecondGreater, verEquals]; end;
GOSTEI 0