Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Otros temas > Trucos
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Los mejores trucos

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 07-06-2006
Avatar de dec
dec dec is offline
Moderador
 
Registrado: dic 2004
Ubicación: Alcobendas, Madrid, España
Posts: 13.119
Poder: 34
dec Tiene un aura espectaculardec Tiene un aura espectacular
Enviar uno o más archivos a la papelera de reciclaje

Con las siguientes funciones es posible enviar a la papelera de reciclaje de Windows (en lugar de borrarlos) uno o varios archivos a la vez.

La primera función es en realidad la encargada de realizar el trabajo. Admite como parámetro la ruta de un archivo, el que queremos enviar a la papelera.

La segunda función admite la ruta de un directorio, y también una determina máscara de archivos, de modo que puedan enviarse a la papelera varios archivos de una vez.

Nótese que la segunda función trabaja con la primera.

Código Delphi [-]
uses
  ShlObj, Masks, ShellApi;

procedure ALaPapelera(const archivo: string);
var
  FOS: TSHFileOpStruct;
begin
  if FileExists(archivo) then begin
    FillChar(FOS, SizeOf(FOS), #0);
    FOS.wFunc := FO_DELETE;
    FOS.Wnd := GetDesktopWindow;
    FOS.pFrom := PChar(archivo+#0#0);
    FOS.fFlags := FOF_NOCONFIRMATION
      or FOF_SILENT or FOF_ALLOWUNDO;
    ShFileOperation(FOS);
  end;
end;

procedure ALaPapelera(dir, mascara: string);
var
  SR: TSearchRec;
begin
  dir := IncludeTrailingPathDelimiter(dir);
  FindFirst(dir+mascara, faAnyFile, SR);
  repeat
    ALaPapelera(dir + SR.Name);
  until FindNext(SR) <> 0;
  SysUtils.FindClose(SR);
end;
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro


La franja horaria es GMT +2. Ahora son las 01:13:44.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi