GetTempFileName
http://www.delphipraxis.net/internal...t.php?t=132456
http://www.delphipraxis.net/internal...ct.php?t=78459
und noch die CodeLib
http://www.delphipraxis.net/internal...ect.php?t=6961
Was passiert eigentlich, wenn die schon eine Datei, mit dem Namen von CreateTempFile, existiert?
@nahpets: jupp, müßte es
Zitat:
Das Ergebnis war jedoch icht wirklich befriedigend: '.###'
Immerhin haben die Tilden gefunzt - und der Punkt.
Doch vom Rest keine Spur.
daher auch dein Problem (siehe nahpets)
Nicht-Maskenzeichen löschten den vorherigen Result-String.
der Punkt war das letzte Nicht-Maskenzeichen und stand somit noch drin ... nja und alle folgenen Maskenzeichen.
[add]
aber wenn es unbedingt so funktionieren soll:
Schon mal was von StringReplace gehört?
Delphi-Quellcode:
function CreateTempFile(index: Word; digits: Byte = 4;
divider: Char='~'; fmt: String='wdpai%s%.*d.tmp'): String;
begin
Result := StringReplace(fmt, '~', divider, [rfReplaceAll]);
Result := StringReplace(Result, '$', IntToHex(index, digits), [rfReplaceAll]);
end;
Ich hätt das Ganze allerdings eher mit Format gelöst
und die Maske etwas angepaßt.
Delphi-Quellcode:
function CreateTempFile(index: Word; digits: Byte = 4;
divider: Char='~'; fmt: String='wdpai%s%.*d.tmp'): String;
begin
Result := Format(fmt, [divider, digits, index]);
end;