Zitat von
marabu:
Hast du dir die Demo zu FindFirst() und Co. in der Delphi Online Hilfe schon mal angesehen?
marabu
Hab ich, und jetzt funktioniert der Find*-Teil auch.
Zitat von
jim_raynor:
Du kannst bei FindFirst auch mit Erweiterung suchen, dann sparst du dir die Abfrage:
FindFirst(ExtractFilePath(Application.ExeName)+'*.dfp', faAnyFile, F);
(Kann sein, dass du vor dem Sternchen noch ein \ machen musst. Weiss jetzt nicht ob ExtractFilePath den Pfad mit oder ohne Backslash zurückgibt.
Hab ich gerade auf die gleiche Weise gelöst.
Fehlt jetzt nur noch die
AV.
edit:
AV weg!
Habe WriteProfile verändert:
Delphi-Quellcode:
procedure TProfileWriter.WriteProfile(const Profile: TProfile);
var
pc: PAnsiChar;
s: string;
a: array of byte;
i: cardinal;
begin
SetLength(a, 4);
pc := StrAlloc(5);
try
with Profile.Settings do
begin
if Count > 0 then for i := 0 to Count - 1 do
begin
s := (LowerCase(ValueFromIndex[i]));
HexToBin(@s[1],pc,4);
CopyMemory(@a[0],pc,4);
WriteBinaryValue(Names[i],a);
end;
end;
finally
StrDispose(pc);
end;
end;