Properties/Funktionen wären aber auch noch eine Möglichkeit, solche Fehler zu vermeiden. Auch hier kann man ja dann Konstanten verwenden.
Delphi-Quellcode:
function PatchFileName:
string;
const ININAME = '
vers_patch.ini';
begin
Result := ExtractFilePath(ParamStr(0)) + ININAME;
end;
function CurrentFileName:
string;
const ININAME = '
vers_aktuell.ini';
begin
Result := ExtractFilePath(ParamStr(0)) + ININAME;
end;
procedure TForm7.CheckForPatchFile;
var
patchfile, currentfile:
string;
begin
patchfile := PatchFileName;
if FileExists(patchfile)
then
begin
currentfile := CurrentFileName;
if not MoveFileEx(PChar(patchfile),PChar(currentfile),MOVEFILE_REPLACE_EXISTING
or MOVEFILE_WRITE_THROUGH)
then
raise Exception.Create(SysErrorMessage(GetLastError));
end;
end;
Man kann das auch noch weiter treiben und eine weitere Funktion schreiben, die den Pfad zurückgibt.