Slawanix : Этот гвест был я. Да, это дополнительные функции, просто к сути идеи они были не важны, но если надо, то даю:
| Код | Function getext(Filename : string) : string; var i,j:integer; s:string; begin j:=0; For i:=length(filename) downto 1 do begin If filename[i]='.' then begin j:=i; break; end; If filename[i]='\' then break; end; s:=''; If j<>0 then begin s:=copy(filename,j+1,length(filename)-j); For i:=1 to length(s) do s[i]:=Upcase(s[i]); end; result:=s; end;
function extinmask(mask : string; ext : string):boolean; var i,j:integer; begin result:=false; If mask='||' then begin result:=true; exit; end; for i:=1 to length(mask) do begin if mask[i]='|' then for j:=i to length(mask) do begin If mask[j]='|' then If (j-i-1>0) and (i+1<length(mask)) then if (upcaseall(copy(mask,i+1,j-i-1))<>'') and (upcaseall(copy(mask,i+1,j-i-1))=upcaseall(ext)) then begin result:=true; Break; end; end; If Result then Break; end; end;
|
маска - маска для удаления файлов. Если она равна '||', то удаляется всё, что можно, если, например, '|EXE|DLL|' - то экзэшники и библиотеки. Писал функции давно чисто для интереса. |