Messages d'erreur... [Résolu]

Messages postés
21
Date d'inscription
mardi 17 décembre 2002
Dernière intervention
16 mai 2017
- - Dernière réponse : f0xi
Messages postés
4307
Date d'inscription
samedi 16 octobre 2004
Dernière intervention
2 janvier 2019
- 27 sept. 2006 à 19:17
Bonjour,

Comment faire sur une suppression de fichiers :

- Pour que tous les fichiers soient supprimés quels que soient les attributs

- Pour qu'aucun message d'erreur n'apparaisse si un fichier ne peut être supprimé ?

- Sous NT, comment prendre possession du fichier ?


        If Dflg=False Then Begin

          Application.OnException := Form1.AppException;

          FileOpStruct.Wnd := 0;

          FileOpStruct.wFunc := FO_DELETE;

          FileOpStruct.pFrom := PChar(Dossier);

          FileOpStruct.pTo := Nil;

          FileOpStruct.fFlags := FOF_NOCONFIRMATION or FOF_SIMPLEPROGRESS;

          FileOpStruct.lpszProgressTitle := PChar(Dossier);

          Try

            {$I-}

            ShFileOperation(FileOpStruct);

            {$I+}

            If IOResult=0 Then Result:=True Else Result:=False;

          Except

            Result:=False;

          End;


Merci à tous, Patrice

Ing. Syst. sous env. NT et 2000
Interressé par tout ce qui touche à la programmation d'outils systèmes de gestion réseau, d'utilisateurs, de machines distantes.
Merci, cordialement, bon courage à tous, P. C.
Afficher la suite 

Votre réponse

3 réponses

Meilleure réponse
Messages postés
4307
Date d'inscription
samedi 16 octobre 2004
Dernière intervention
2 janvier 2019
34
3
Merci
le probleme des FileOp, meme si c'est carrement pratique, c'est justement les problemes qu'ils peuvent engendrer...
le mieux encore, pour controler toute la chaine de recherche/suppression, serait de travailler avec une fonction recurssive de recharche et utiliser DeleteFile dont on pourrat gerrer le retour et donc empecher la suppression du repertoire si un fichier n'as pus etre supprimé.

<hr size="2" width="100%" />Croc (click me)

Dire « Merci » 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 87 internautes nous ont dit merci ce mois-ci

Commenter la réponse de f0xi
0
Merci
Salut,

Ta function permet de supprimer un répertoire : pas un simple fichier.

Pour éviter les erreurs tu peux utiliser Try Except.
Cependant si un fichier ne peux pas etre supprimé il en sera de meme du dossier vide.

Ta fonction permet de supprimer les fichiers d'un dossier quel que soit leurs attribues.

Qu'entends tu par prendre possession ?
Commenter la réponse de Utilisateur anonyme
Messages postés
21
Date d'inscription
mardi 17 décembre 2002
Dernière intervention
16 mai 2017
0
Merci
Salut, merci de ta réponse.

La solution "Try except" n'empêche pas les messages d'erreur d'entrée sortie... J'ai essayé !

Prendre possession : Sous NT l'untilisateur qui a créé le fichier en
est propriétaire, pour éviter certaines contraintes il peut être
intéressant de prendre possession du dit fichier, c'est à dire en
devenir le propriétaire et avoir donc tous les droits possibles sur ce
fichier.

Je sais que je supprime un dossier et que non vide je plante, j'ai
juste posté le code pour montrer sur quoi je travaillais. (copié
d'ailleurs d'un code posté ici).


Merci encore, Patrice

Ing. Syst. sous env. NT et 2000
Interressé par tout ce qui touche à la programmation d'outils systèmes de gestion réseau, d'utilisateurs, de machines distantes.
Merci, cordialement, bon courage à tous, P. C.
Commenter la réponse de hfr11

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.