Supprimer un dossier, répertoire

Soyez le premier à donner votre avis sur cette source.

Snippet vu 11 835 fois - Téléchargée 31 fois

Contenu du snippet

Petite fonction pour supprimer un dossier

Dossier -> le chemin du dossier
Vider -> mettre a true si vous voulez supprimer le contenu du dossier

Source / Exemple :


function SupprimeRep(Dossier: String; Vider: Boolean): Boolean;
var
  Rep: TshFileOpStruct;
begin
  if not DirectoryExists(Dossier) then Exit; //si le dossier existe

  if Vider then begin //si il faut le vider
    if Dossier[Length(Dossier)] <> '\' then Dossier := Dossier + '\';
    Dossier := Dossier + '*.*'
  end
  else //sinon
    if Dossier[Length(Dossier)] = '\' then Delete(Dossier,Length(Dossier), 1);

  //régle les paramètre
  FillChar(Rep, SizeOf(Rep), 0);
  Rep.wFunc := FO_DELETE;
  Rep.pFrom := PChar(Dossier);
  Rep.fFlags := FOF_ALLOWUNDO or FOF_NOCONFIRMATION;
  //supprime
  Result := ((ShFileOperation(Rep) = 0) and (not Rep.fAnyOperationsAborted));
end;

Conclusion :


Cette fonction n'est pas de moi au départ

A voir également

Ajouter un commentaire Commentaire
Messages postés
962
Date d'inscription
mercredi 3 avril 2002
Statut
Membre
Dernière intervention
12 septembre 2006
2
Hey, cool, je ne connaissais pas ShFileOperation et cette fonction à l'air de faire pas mal de choses...
Ah, au fait, pour ceux qui ne connaissent pas il faut ajouter ShellApi dans le Uses.

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.