![]() |
![]() |
| Paypal | FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
#1
|
|||
|
|||
|
borrar carpeta
tengo una pequeña aplicación para pruebas, y todos los ficheros resultantes que ya no me sirven van a parar a una carpeta llamada pruebas.
Como podría hacer para que a través de un botón en un formulario se borre el contenido de dicha carpeta, sólo el contenido, la carpeta debe seguir intacta, para seguir albergando las sucesivas pruebas que vaya realizando. |
|
#2
|
||||
|
||||
|
Aquí tienes un ejemplo, solo lo tendrías que retocar un poco:
http://www.clubdelphi.com/foros/arch...borrar+carpeta
__________________
delphi.com.ar Dedique el tiempo suficiente para formular su pregunta si pretende que alguien dedique su tiempo en contestarla.
Última edición por delphi.com.ar fecha: 19-06-2003 a las 20:03:01. |
|
#3
|
||||
|
||||
|
Otro mas en trucomania...
-Añade 'ShellApi' en el uses de tu form -Y utiliza esta función: Código:
function ALaPapelera(Fichero:string):boolean;
var
FileOp: TSHFileOpStruct;
begin
if FileExists(Fichero)then
begin
FillChar(FileOp,SizeOf(FileOp),#0);
with FileOp do
begin
Wnd:= Application.Handle;
wFunc:= FO_DELETE;
pFrom:= PChar(Fichero+#0#0);
fFlags:= FOF_SILENT or FOF_ALLOWUNDO or FOF_NOCONFIRMATION;
end;
Result:= (ShFileOperation(FileOp)=0);
end else
Result:=False;
end;
Código:
procedure TForm1.Button1Click(Sender: TObject);
begin
if not ALaPapelera ('c:\kk\Fichero.txt') then
ShowMessage('No se pudo borrar el fichero/Can not delete file');
end;
Código:
procedure TForm1.Button1Click(Sender: TObject);
begin
if not ALaPapelera ('c:\kk\Fichero1.txt'+#0+'c:\windows\Fichero2.txt') then
ShowMessage('No se pudo borrar el fichero/Can not delete file');
end;
Simplemente separalos con un caracter 0 ( #0) Para borrar un subdirectorio... pues sirve la misma función... por ejemplo: ALaPapelera ('c:\UnDirectorio')
__________________
Lecciones de mi Madre. Tema: modificación del comportamiento, "Pará de actuar como tu padre!" http://www.purodelphi.com/ http://www.nosolodelphi.com/ |
|
#4
|
||||
|
||||
|
Hola.
Hoy he necesitado esta función, y la he modificado ligeramente : Código:
function ALaPapelera(Fichero:string):boolean;
var
FileOp: TSHFileOpStruct;
begin
FillChar(FileOp,SizeOf(FileOp),#0);
with FileOp do
begin
Wnd:= Application.Handle;
wFunc:= FO_DELETE;
pFrom:= PChar(Fichero+#0#0);
fFlags:= FOF_SILENT or FOF_ALLOWUNDO or FOF_NOCONFIRMATION;
end;
Result:= (ShFileOperation(FileOp)=0);
end;
Es decir algo como ALaPapelera('C:\Temp\*.tmp'); Saludos.
__________________
Marc Guillot (Hi ha 10 tipus de persones, els que saben binari i els que no). |
![]() |
|
|
|