Page 1 sur 1

[R] Erreur pour vider la corbeille

Posté : mar. 29 mars 2011 18:27
par sablier94
Hello,

Je suis entrain de créer un script pour nettoyer votre ordinateur et j'ai un problème non-résolu même après pas mal de recherches...

J'aimerais vider la corbeille puis savoir si tout s'est bien passé. Au premier lancement, il réussi à la vider, mais dès que l'on relance le script, il nous donne 0 comme valeur retournée donc il ne vide pas la corbeille.
Si on place quelque chose dans la corbeille, ça marche (mais pas tout le temps). Alors voilà, comment ne plus avoir cette erreur et vraiment savoir si la corbeille se vide ? (J'ai essayé avec @error, c'est pareil).

Voilà le code que j'utilise :

Code : Tout sélectionner

$TrashError = FileRecycleEmpty() ;On vide la corbeille de toutes les partitions
Switch $TrashError
    Case 1
        MsgBox(0,"Test","La corbeille a bien été vidée."&@CRLF)
    Case Else
        MsgBox(0,"Test","Erreur "&$TrashError&" : La corbeille n'a pas pu être vidée !"&@CRLF)
EndSwitch
 
Est-ce pareil chez vous ?

Lien de la doc sur la fonction : http://www.autoitscript.com/autoit3/doc ... eEmpty.htm

Merci :D

Re: [..] Erreur poour vider la corbeille

Posté : mar. 29 mars 2011 19:48
par martinbrait
Bonjour,
Je suis sous Windows XP Professionnel 2002 SP3
Chez moi, la routine de vidage s'exécute sans problème,
que la corbeille windows soit pleine (il la vide), ou que la cobeille windows soit vide.

La valeur de retour est toujours 1
$TrashError vaut toujours 1

Vérifie que le système sous lequel tu utilises pour lancer ce programme est prévu! :wink:

Re: [..] Erreur poour vider la corbeille

Posté : mar. 29 mars 2011 19:56
par sablier94
Salut,

C'est bizarre, moi ça varie beaucoup, mais c'est très souvent 0 qu'il me renvoie...

Je suis sous Windows Seven 64 bits.

Merci pour ton aide :)

Re: [..] Erreur poour vider la corbeille

Posté : mar. 29 mars 2011 20:24
par martinbrait
J'en conclus que cette fonction doit être entièrement reprogrammée sous windows 7.
En un mot INCOMPATIBILITE!
Si tu t'en sens capable, regarde le contenu de cette fonction dans le dossier INCLUDE. :P
@+

Re: [..] Erreur poour vider la corbeille

Posté : jeu. 31 mars 2011 13:04
par sablier94
C'est possible ça, qu'une fonction aussi importante soit incompatible avec windows 7 ?

Je vais regarder dans la fonction, mais il n'y aurait pas quelqu'un qui a windows 7 qui pourrait tester svp ?

Merci

Re: [..] Erreur poour vider la corbeille

Posté : jeu. 31 mars 2011 22:55
par eln
sablier94 a écrit :C'est possible ça, qu'une fonction aussi importante soit incompatible avec windows 7 ?

Je vais regarder dans la fonction, mais il n'y aurait pas quelqu'un qui a windows 7 qui pourrait tester svp ?

Merci
J'ai testé sur Windows 7 64bits et effectivement j'ai la même erreur lorsque la poubelle est déjà vide.

Re: [..] Erreur poour vider la corbeille

Posté : ven. 01 avr. 2011 01:18
par Tlem
Si effectivement la fonction pause problème sous Windows 7 64 Bits, alors que la poubelle est vide, alors le plus simple serait de mettre un fichier bidon dedans, puis de vider ... :mrgreen:

Re: [..] Erreur pour vider la corbeille

Posté : ven. 01 avr. 2011 19:16
par sablier94
Effectivement, si je crée un fichier avec FileCreate() et que je le place dans la corbeille avec FileRecycle(), la corbeille se vide en renvoyant 1 :D

Merci beaucoup à vous ! Je mets en résolu.

ps: Serait-ce possible de connaitre la taille des fichiers supprimés de la corbeille ?

Re: [R] Erreur pour vider la corbeille

Posté : ven. 01 avr. 2011 21:49
par Tlem

Code : Tout sélectionner

$aInfos = DirGetSize("C:\RECYCLER", 1)

Msgbox(0,"","Taille : " & Round($aInfos[0] / 1024 / 1024, 2) & " Mb pour " & @CRLF & _
$aInfos[1] & " fichiers et " & $aInfos[2] & " dossiers")

Re: [R] Erreur pour vider la corbeille

Posté : ven. 01 avr. 2011 23:31
par sablier94
Oui j'avais déjà essayé ceci, mais il ne trouve pas le chemin "C:\RECYCLER"... (Windows 7)

Re: [R] Erreur pour vider la corbeille

Posté : ven. 01 avr. 2011 23:54
par Tlem
Sous Seven, il faut utiliser le dossier $Recycle.Bin.

Re: [R] Erreur pour vider la corbeille

Posté : sam. 02 avr. 2011 09:35
par sablier94
Ce dossier n'existe pas, ni avec l'explorateur, ni avec autoit...

Merci

Re: [R] Erreur pour vider la corbeille

Posté : sam. 02 avr. 2011 09:44
par Tlem
Je n'ai qu'un Seven Pro dans une machine virtuelle et lorsque je regarde la liste des dossiers cachés, je vois celui que je vous ai donné.
Donc si vous avez un dossier différent, je ne peut vous répondre.
Essayez de voir avec Google si il existe d'autres dossiers.

D'après mes recherches, il n'y aurait que : RECYCLER et RECYCLE.BIN