La Web del Programador: Comunidad de Programadores
 
    Pregunta:  44147 - ELIMINAR ARCHIVOS DEL DISCO DURO DESDE DELPHI
Autor:  Emilio García Granda
Necesito que alguien me ayude. Deseo eliminar archivos y carpetas del disco Duro como lo hace Windows pero el codigo me falla
ya he intentado con varias funciones como
DeleteFile(Filename: string):Boolean;
y OpenFile() pero no eliminan el archivo. Cualquiera que desee hecharme una mano le doy las gracias por adelantado.

  Respuesta:  Luis Felipe García Gutiérrez
Pues la sentencia que yo utilizo para la eliminación de archivos del disco duro y me funciona sin ningún problema, pero previo al borrado se puede verificar su existencia, el código sería así
if FileExists('ruta') then
deletefile('ruta')
else
messagedlg(Archivo inexistente',mtError,[mbOK],0);

Suerte!!!

  Respuesta:  Camilo Wahab
Mira te mando este codigo proba usandolo:

procedure TForm1.Button1Click(Sender: TObject);
var
DirInfo: TSearchRec;
r : Integer;
begin
r := FindFirst('C:\Download\Test\*.*', FaAnyfile, DirInfo);
while r = 0 do
begin
if ((DirInfo.Attr and FaDirectory <> FaDirectory) and
(DirInfo.Attr and FaVolumeId <> FaVolumeID)) then
if DeleteFile(pChar('C:\Download\test\' + DirInfo.Name)) = false then
{Si no puede borrar el fichero}
ShowMessage('Unable to delete : C:\Download\test\' + DirInfo.Name);
r := FindNext(DirInfo);
end;
SysUtils.FindClose(DirInfo);
if RemoveDirectory('C:\Download\Test') = false then
{Si no puedes borrar el directorio}
ShowMessage('Unable to delete dirctory : C:\Download\test');
end;