[R] Supprimer historique et vider la cache de IE

Aide et conseils concernant AutoIt et ses outils.
Règles du forum
.
Répondre
baconix
Niveau 3
Niveau 3
Messages : 34
Enregistré le : lun. 13 juil. 2009 15:12
Status : Hors ligne

[R] Supprimer historique et vider la cache de IE

#1

Message par baconix »

bonjour,

J'ai réalise un script, il y a un moment pour automatiser certaines actions sur internet et j'utilisais les fonctions que Tlem a réalisé pour vider ma cache et mon historique après chaque utilisation.
http://www.autoitscript.fr/forum/viewto ... he+#p20368
Le site a évolué et j'ai donc réalisé des petites modifications et là malheur, l'historique ne se supprime plus à la fin. Je n'ai pourtant rien changé dans ma méthode. Es ce que les registres ont pu changer de place? j'utilise Internet Explorer 8.

Code : Tout sélectionner

while $NbCount<7
    SelectCount()
    TrayTip("Compte",$CurrentLogin, 1)
    login()
    while $NbDraw<11
        SelectList()
        $NbDraw+=1
    WEnd
    _EmptyIEHistory()
    _EmptyIECache()
    _IEQuit ($IEPage)
    $NbCount+=1
    $NbDraw=1
wend
Modifié en dernier par baconix le mar. 24 août 2010 19:38, modifié 3 fois.
Baconix
Habibsbib
Niveau 7
Niveau 7
Messages : 393
Enregistré le : dim. 30 août 2009 13:49
Localisation : Euh...Verticale, entre le siège et l'écran...
Status : Hors ligne

Re: [...] Supprimer historique et vider la cache de IE

#2

Message par Habibsbib »

Si tu veux vider ton cache à chaque fois que tu quittes Internet, (et aussi pour contourner la difficulté), il y a ultrasurf qui le fait ! Cliques sur le smiley :mrgreen:
baconix
Niveau 3
Niveau 3
Messages : 34
Enregistré le : lun. 13 juil. 2009 15:12
Status : Hors ligne

Re: [...] Supprimer historique et vider la cache de IE

#3

Message par baconix »

Alors j'ai essayé plusieurs solutions à mon problème. J'ai testé 4 solutions pour supprimer l'historique de IE.

Premièrement Ultra surf ne fonctionne pas quand je quitte une page IE l'historique n'est pas supprimé.

Ensuite j'ai testé les 3 fonctions indépendamment de mon programme.

Le code de Tlem http://www.autoitscript.fr/forum/viewto ... ider+cache avec MsgBox pour voir où il y a un problème. Le résultat est que l'historique ne se vide pas entièrement.

Code : Tout sélectionner

#Include <File.au3>
#Include <Array.au3>
#Include <IE.au3>

    _EmptyIEHistory()
    _EmptyIECache()

;;;;;;;;;;;;;;;;;;;;;;;;;;;EmptyIEHistory;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
Func _EmptyIEHistory()
    ; Lecture de la clé dans la base de registre pour la compatibilité Vista/Seven
    $IEHistory = RegRead("HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\Shell Folders", "History")
    If $IEHistory = "" Then
        SetError(1)
        Return 0
    EndIf
    ; Au cas ou la clé serait écrite avec la variable %userprofile%
    $IEHistory = StringReplace($IEHistory, "%userprofile%", @UserProfileDir) & "\History.IE5"
    ; Suppression de l'historique IE    
    _FileAndDirectoryDelete($IEHistory)
    $Size = DirGetSize($IEHistory, 1)
    If $Size[2] <> 0 Then ; Vérifie que le répertoire est vide.
        SetError(1)
        MsgBox (0,"Historique","Non vide")
        Return 0
    Else
        Return 1
    EndIf
EndFunc   ;==>_EmptyIEHistory
;;;;;;;;;;;;;;;;;;;;;;;;;;;End EmptyIEHistory;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;EmptyIECache;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
Func _EmptyIECache()
    ; Lecture de la clé dans la base de registre pour la compatibilité Vista/Seven
    $IECache = RegRead("HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\Shell Folders", "Cache")
    If $IECache = "" Then
        SetError(1)
        Return 0
    EndIf
    ; Au cas ou la clé serait écrite avec la variable %userprofile%
    $IECache = StringReplace($IECache, "%userprofile%", @UserProfileDir)
    ; Suppression du cache IE
    _FileAndDirectoryDelete($IECache)
    ; Suppression du contenu du répertoire Content.IE5.
    run(@ComSpec & ' /c rd /s /q "' & $IECache & '\Content.IE5"',$IECache,@SW_HIDE)
    $Size = DirGetSize($IECache & '\Content.IE5', 1)
    If $Size[2] <> 0 Then ; Vérifie que le répertoire est vide.
        SetError(1)
        Return 0
        MsgBox (0,"Cache","Non vide")
    Else
        Return 1
    EndIf
EndFunc   ;==>_EmptyIEHistory
;;;;;;;;;;;;;;;;;;;;;;;;;;;End EmptyIECache;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

;;;;;;;;;;;;;;;;;;;;;;;;;;;FileAndDirectoryDelete;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
Func _FileAndDirectoryDelete($sDir)
    $search = FileFindFirstFile($sDir & "\*")
    If @error Then Exit
    While 1
        $Next = FileFindNextFile($Search)
        If @error Then ExitLoop
        $Next = $sDir & "\" & $Next
        $att = FileGetAttrib($Next)
        If StringInStr($att, "d") Then
            FileSetAttrib($Next, "-RSH", 1)
            MsgBox (0,"Directory Remove",$Next)
            DirRemove($Next, 1)
        Else
            FileSetAttrib($Next, "-RSH")
            MsgBox (0,"File Delete",$Next)
            FileDelete($Next)
        EndIf
    WEnd
    FileClose($search)
EndFunc
;;;;;;;;;;;;;;;;;;;;;;;;;;;End FileAndDirectoryDelete;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
Vu que si je supprime manuellement le répertoire Temporary Internet Files, ça fonctionne je me suis dit que j'allais le faire avec la fonction FileDelete. en utilisant le programme à la page http://www.autoitscript.fr/forum/viewto ... ire#p19171. Résultat n'est pas concluant non plus. J'avais même rajouté un DirRemove pour le répertoire Content.IE5 et History.IE5 et le résultat est le même.

Code : Tout sélectionner

#Include <File.au3>
#Include <Array.au3>

global $Dossier= @UserProfileDir & "\Local Settings\Temporary Internet Files"

$FileList=_FileListToArray($Dossier)

If @Error=1 Then
    MsgBox (0,"","No Files\Folders Found.")
    Exit
EndIf

for $i = 1 to $FileList[0]
    MsgBox (0,"Files:",$FileList[$i])
FileDelete($Dossier&'\'&$FileList[$i])
Next
 
Enfin la dernière solution qui fonctionne, en utilisant CCleaner. Le petit problème avec cette solution est qu'elle ne peut fonctionner que sur un ordinateur qui a d'installé Ccleaner et qu'il soit configuré au variable d'environnement. Donc si quelqu'un a une idée pour faire fonctionner les 2 précédentes merci. Rien que par curiosité déjà. Je peux avoir un problème de configuration de mon PC aussi?

Code : Tout sélectionner

#include <Process.au3>
$Nettoyer="ccleaner /auto"
_RunDOS($Nettoyer)
ProcessWaitClose ( "ccleaner.exe" ,600000)
Baconix
Habibsbib
Niveau 7
Niveau 7
Messages : 393
Enregistré le : dim. 30 août 2009 13:49
Localisation : Euh...Verticale, entre le siège et l'écran...
Status : Hors ligne

Re: [...] Supprimer historique et vider la cache de IE

#4

Message par Habibsbib »

Je croyais que je n'aurais pas à te le dire, il faut enclencher l'option "supprimmer l'historique après consultation". :roll:
baconix
Niveau 3
Niveau 3
Messages : 34
Enregistré le : lun. 13 juil. 2009 15:12
Status : Hors ligne

Re: [..] Supprimer historique et vider la cache de IE

#5

Message par baconix »

Si tu parles bien de cocher les cases
Delete cookie automatically on exit
Delete history automatically on exit
c'est déjà fait depuis longtemps.
Baconix
Habibsbib
Niveau 7
Niveau 7
Messages : 393
Enregistré le : dim. 30 août 2009 13:49
Localisation : Euh...Verticale, entre le siège et l'écran...
Status : Hors ligne

Re: [..] Supprimer historique et vider la cache de IE

#6

Message par Habibsbib »

Très étrange...Ben alors, je n'ai pas de réponses désolé !
touslesmatins
Niveau 6
Niveau 6
Messages : 211
Enregistré le : dim. 15 févr. 2009 01:08
Status : Hors ligne

Re: [..] Supprimer historique et vider la cache de IE

#7

Message par touslesmatins »

un peu tard...
J'utilise ceci pour effacer l'historique IE
► Afficher le texte
ani
Niveau 11
Niveau 11
Messages : 1826
Enregistré le : lun. 23 juil. 2007 12:31
Localisation : Bureau
Status : Hors ligne

Re: [..] Supprimer historique et vider la cache de IE

#8

Message par ani »

la commande formulé par toutlesmatins ne fonctionne que pour ie7/8

Voici la suite des commandes ;)
► Afficher le texte
bonne continuation ;)
baconix
Niveau 3
Niveau 3
Messages : 34
Enregistré le : lun. 13 juil. 2009 15:12
Status : Hors ligne

Re: [..] Supprimer historique et vider la cache de IE

#9

Message par baconix »

Et bien avec tous ces exemples je pense que la Suppression de 'historique et de la cache IE n'a plus de secret pour personne! Merci pour l'aide
Baconix
Répondre