Compare as seqüências de versão no Inno Setup
Estou lendo o valor de um arquivo INF, agora preciso compará-lo com a versão do instalador, mas ao compilar, recebo um erro:
Identificador desconhecido: CompareVersion
O que está errado?
[Code]
function GetKeyValue(const AKeyName, AFileName, ADefault: string): string;
var
I: Integer;
KeyPos: Integer;
KeyFull: string;
FileLines: TArrayOfString;
begin
Result := ADefault;
if LoadStringsFromFile(AFileName, FileLines) then
begin
KeyFull := AKeyName + '=';
for I := 0 to GetArrayLength(FileLines) - 1 do
begin
FileLines[I] := TrimLeft(FileLines[I]);
KeyPos := Pos(KeyFull, FileLines[I]);
if KeyPos > 0 then
begin
Result := Copy(FileLines[I], KeyPos + Length(AKeyName) + 1, MaxInt);
Break;
end;
end;
end;
end;
var
L2Ver2: TLabel;
procedure DirEditChange(Sender: TObject);
var
FilePath: string;
begin
FilePath := AddBackslash(WizardForm.DirEdit.Text) + 'left4dead2\steam.inf';
L2Ver2.Caption := GetKeyValue('PatchVersion', FilePath, 'N/A');
if (CompareVersion( L2Ver2.Caption, '{#MyAppOldVersion}') = 0) then
begin
...
end
end;
Eu tenho o erro nesta linha:
if (CompareVersion( L2Ver2.Caption, '{#MyAppOldVersion}') = 0) then
{#MyAppOldVersion}
já está definido.
Este post está relacionado à minha pergunta anterior:Leia um arquivo INF durante a instalação.
Se alguém puder ajudar, eu agradeceria.