CMD will auch einen Parameter, mit dem DU ihm sagen mußt, dass der nachfolgende Text als Befehl ausgeführt werden soll.
Siehe /C oder /K in
cmd /?
.
Und für die CMD.exe gibt es sogar eine Umgebungsvariable mit dem kompletten Pfad.
%ComSpec%
= C:\Windows\system32\cmd.exe
Aber wie Dalai bereits erwähnte, ist für die FOREFILES.exe das CMD garnicht nötig.
Joar, in Delphi gibt es viele Möglichkeiten.
z.B.
TDirectory.GetFiles
Ich denke mal Lazarus wird bestimmt auch irgendwo eine "einfache" Datei-Such-
API bieten.
Delphi-Quellcode:
uses
IOUtils, DateUtils;
var
Files: TArray<string>;
begin
Files := TDirectory.GetFiles('C:\Users\NAME\Desktop\Test', TSearchOption.soAllDirectories,
function(const Path: string; const SearchRec: TSearchRec): Boolean
begin
Result := SearchRec.TimeStamp <= IncDay(Now, -60);
end);
for var F in Files do
TFile.Delete(F);
// oder wenn man etwas "böse" ist
TDirectory.GetFiles('C:\Users\NAME\Desktop\Test', TSearchOption.soAllDirectories,
function(const Path: string; const SearchRec: TSearchRec): Boolean
begin
if SearchRec.TimeStamp <= IncDay(Now, -60) then
TFile.Delete(TPath.Combine(Path, SearchRec.Name));
Result := False;
end);