Script pour vide le dossier Tempory Internet

Le
titi
Bonjour,

Je cherche comme par un script supprimer le contenu du dossier Tempory
Internet lors de l'ouverture de session d'un utilisateur.

Je sais faire pour les fichiers que contient ce dossier, mais je me suis
aperçu que ce dossier contenait d'autres dossiers cachés (COntent IE5 )
qui contiennent parfois des sous dossiers.

Peut on les supprimer, sans risque et si oui comment ?

Merci pour votre aide.
Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
Lognoul Marc [MVP]
Le #19326561
Bonjour,

En droite ligne de MS:
http://www.microsoft.com/technet/scriptcenter/resources/qanda/nov04/hey1102.mspx

--
Marc [MCSE, MCTS, MVP]
[Heureux celui qui a pu pénétrer les causes secrètes des choses]
[Blog: http://www.marc-antho-etc.net/blog/]

"titi" news:
Bonjour,

Je cherche comme par un script supprimer le contenu du dossier Tempory
Internet lors de l'ouverture de session d'un utilisateur.

Je sais faire pour les fichiers que contient ce dossier, mais je me suis
aperçu que ce dossier contenait d'autres dossiers cachés (COntent IE5 ...)
qui contiennent parfois des sous dossiers.

Peut on les supprimer, sans risque et si oui comment ?

Merci pour votre aide.


Gilles LAURENT [MVP]
Le #19333141
"titi" news:
| Bonjour,

Bonjour,

| Je cherche comme par un script supprimer le contenu du dossier Tempory
| Internet lors de l'ouverture de session d'un utilisateur.
|
| Je sais faire pour les fichiers que contient ce dossier, mais je me
| suis aperçu que ce dossier contenait d'autres dossiers cachés
| (COntent IE5 ...) qui contiennent parfois des sous dossiers.
|
| Peut on les supprimer, sans risque et si oui comment ?

Pour une suppression récursive des fichiers temporaires IE :

--- CodeSnippet.cmd ---
@echo off
setlocal
>%temp%IETemp.vbs echo Set oSh=CreateObject("Shell.Application")
>>%temp%IETemp.vbs echo Set oItem=oSh.NameSpace(^&H20).Self
>>%temp%IETemp.vbs echo WScript.Echo "Set IETemp=" ^& oItem.Path
CScript //nologo %temp%IETemp.vbs>%temp%IETemp.cmd
del %temp%IETemp.vbs & call %temp%IETemp.cmd
del %temp%IETemp.cmd & rd /s /q "%IETemp%Content.IE5"
del /a /f /q "%IETemp%"
endlocal
--- CodeSnippet.cmd ---

--
Gilles LAURENT
MVP Windows Server - Admin Frameworks
http://glsft.free.fr
titi
Le #19334991
Bonsoir,

Merci, je vais voir si je m'en sors.

"Lognoul Marc [MVP]" wrote:

Bonjour,

En droite ligne de MS:
http://www.microsoft.com/technet/scriptcenter/resources/qanda/nov04/hey1102.mspx

--
Marc [MCSE, MCTS, MVP]
[Heureux celui qui a pu pénétrer les causes secrètes des choses]
[Blog: http://www.marc-antho-etc.net/blog/]

"titi" news:
> Bonjour,
>
> Je cherche comme par un script supprimer le contenu du dossier Tempory
> Internet lors de l'ouverture de session d'un utilisateur.
>
> Je sais faire pour les fichiers que contient ce dossier, mais je me suis
> aperçu que ce dossier contenait d'autres dossiers cachés (COntent IE5 ...)
> qui contiennent parfois des sous dossiers.
>
> Peut on les supprimer, sans risque et si oui comment ?
>
> Merci pour votre aide.




titi
Le #19334981
Bonsoir,

Merci, je vais voir si je m'en sors.

"Gilles LAURENT [MVP]" wrote:

"titi" news:
| Bonjour,

Bonjour,

| Je cherche comme par un script supprimer le contenu du dossier Tempory
| Internet lors de l'ouverture de session d'un utilisateur.
|
| Je sais faire pour les fichiers que contient ce dossier, mais je me
| suis aperçu que ce dossier contenait d'autres dossiers cachés
| (COntent IE5 ...) qui contiennent parfois des sous dossiers.
|
| Peut on les supprimer, sans risque et si oui comment ?

Pour une suppression récursive des fichiers temporaires IE :

--- CodeSnippet.cmd ---
@echo off
setlocal
>%temp%IETemp.vbs echo Set oSh=CreateObject("Shell.Application")
>>%temp%IETemp.vbs echo Set oItem=oSh.NameSpace(^&H20).Self
>>%temp%IETemp.vbs echo WScript.Echo "Set IETemp=" ^& oItem.Path
CScript //nologo %temp%IETemp.vbs>%temp%IETemp.cmd
del %temp%IETemp.vbs & call %temp%IETemp.cmd
del %temp%IETemp.cmd & rd /s /q "%IETemp%Content.IE5"
del /a /f /q "%IETemp%"
endlocal
--- CodeSnippet.cmd ---

--
Gilles LAURENT
MVP Windows Server - Admin Frameworks
http://glsft.free.fr





titi
Le #19396621
Bonsoir Marc et Gilles,

Voilà je viens de faire des tests.

Tout d'abord jdepuis le site
http://www.microsoft.com/technet/scriptcenter/resources/qanda/nov04/hey1102.mspx

J'ai récupéré :

Const TEMPORARY_INTERNET_FILES = &H20&

Set objShell = CreateObject("Shell.Application")
Set objFolder = objShell.Namespace(TEMPORARY_INTERNET_FILES)
Set objFolderItem = objFolder.Self
strPath = objFolderItem.Path & "*.*"

Set objFSO = CreateObject("Scripting.FileSystemObject")
objFSO.Deletefile(strPath)

Que j'ai mis dans un fichier sup.vbs et je l'ai mis sur le script
d'ouverture de session de mes utilisateurs sur mon domaine.
J'ai fait un test et si je vais voir dans le dossier Tempory Internet Files,
les fichiers sont toujours présents.

2) J'ai alors pris
@echo off
setlocal
%temp%IETemp.vbs echo Set oSh=CreateObject("Shell.Application")
%temp%IETemp.vbs echo Set oItem=oSh.NameSpace(^&H20).Self
%temp%IETemp.vbs echo WScript.Echo "Set IETemp=" ^& oItem.Path




CScript //nologo %temp%IETemp.vbs>%temp%IETemp.cmd
del %temp%IETemp.vbs & call %temp%IETemp.cmd
del %temp%IETemp.cmd & rd /s /q "%IETemp%Content.IE5"
del /a /f /q "%IETemp%"
endlocal

Que j'ai mis dans un fichier sup.bat et je l'ai mis sur le script
d'ouverture de session de mes utilisateurs sur mon domaine.
J'ai fait un test et si je vais voir dans le dossier Tempory Internet Files,
les fichiers sont supprimés mais j'ai toujours des dossiers et notamment le
dossier Content IE5 avec plein de sous dossiers.

Qu'est ce que je ne fais pas de comme il faut ?

Dans le deuxième cas j'avoue que je ne comprends pas la majorité des lignes,
est il possible d'avoir des commentaires.

Ungrand merci pour votre aide.
Gilles LAURENT [MVP]
Le #19404961
"titi" news:
| Bonsoir Marc et Gilles,

Bonjour,

[...]
| Que j'ai mis dans un fichier sup.bat et je l'ai mis sur le script
| d'ouverture de session de mes utilisateurs sur mon domaine.
| J'ai fait un test et si je vais voir dans le dossier Tempory Internet
| Files, les fichiers sont supprimés mais j'ai toujours des dossiers et
| notamment le dossier Content IE5 avec plein de sous dossiers.
|
| Qu'est ce que je ne fais pas de comme il faut ?

Le dossier Temporary Internet File est verrouillé très tôt par le
système lors du démarrage de la machine. En fait le Shell (i.e
Explorer.exe) verrouille en autre le fichier des index
Content.IE5index.dat. Pour cette raison, le script de nettoyage
échoue. Donc pour être en mesure de vider complétement le dossier
Temporary Internet File, il est nécessaire d'exécuter le script avant le
démarrage du Shell. Pour cela il suffit de fixer le paramètre de
stratégie RunLogonScriptSync :
http://technet.microsoft.com/en-us/library/cc782062.aspx

Note: Après le démarrage du Shell, les dossiers par défaut Content.IE5
et Content.MSO seront automatiquement recréés. C'est ce que j'observe
sur ma machine XP Pro SP2 avec Internet Explorer 6

--
Gilles LAURENT
MVP Windows Server - Admin Frameworks
http://glsft.free.fr
Lognoul Marc [MVP]
Le #19405721
Bonjour,

En effet, les applications IE, OEX mais également l'explorateur Windows dans
certains cas placent un verrou très tôt.
Personnellement, j'efface ces fichiers lors du démarrage ou à distance
lorsque personne n'a encore ouvert de session. Dans ce cas, on ne peut
utiliser l'espace de noms TEMPORARY_INTERNET_FILES. Je contourne le problème
en détectant les chemins de chaque profil utilisateur. En VBS, gestion des
session non-inclus, cela donne:

Set objReg = GetObject("winmgmts:{impersonationLevel=impersonate}!\" &
strComputerName & "rootdefault:StdRegProv")
If Err.number <> 0 Then
WScript.Echo "ERROR: Could not connect to " & strComputerName & ": " &
err.Description
WScript.Quit
End If

strRoot = HK_LOCAL_MACHINE
strRegPath = "SOFTWAREMicrosoftWindows NTCurrentVersionProfileList"

objReg.EnumKey strRoot, strRegPath, arrSubKeys

If IsNull(arrSubKeys) Then
WScript.Echo "ERROR: No profile detected"
WScript.Quit
Else
For Each objSubKey In arrSubKeys
If len (objSubKey) > 10 Then
Wscript.Echo "Processing Profile : " & objSubKey
objReg.GetExpandedStringValue strRoot, strRegPath & "" &
objSubKey, "ProfileImagePath", strRegVal
strLocalProfilePath = strRegVal
strPartitionLetter = left(strLocalProfilePath, 1)
strRelativePath = mid(strLocalProfilePath, 3,
len(strLocalProfilePath))
strProfileUNCPath = "\" & strComputername & "" &
strPartitionLetter & "$" & strRelativePath
WScript.Echo "Profile Path: " & strLocalProfilePath & " -> " &
strProfileUNCPath
WScript.Echo "- Deleting Temporary Internet Files: " &
DeleteFiles(strProfileUNCPath & "Local SettingsTemporary Internet Files")
WScript.Echo "- Deleting Cookies: " &
DeleteFiles(strProfileUNCPath & "Cookies")
WScript.Echo "- Deleting Temp Files: " &
DeleteFiles(strProfileUNCPath & "Local SettingsTemp")
WScript.Echo
Else
Wscript.Echo "Skipping Profile : " & objSubKey
End If
Next
End If

Note: la raison de la condition len (objSubKey) > 10 est d'éviter ne
nettoyage des profile système (NetworkService, LocalSystem....)

--
Marc [MCSE, MCTS, MVP]
[Heureux celui qui a pu pénétrer les causes secrètes des choses]
[Blog: http://www.marc-antho-etc.net/blog/]






"Gilles LAURENT [MVP]" news:#
"titi" news:
| Bonsoir Marc et Gilles,

Bonjour,

[...]
| Que j'ai mis dans un fichier sup.bat et je l'ai mis sur le script
| d'ouverture de session de mes utilisateurs sur mon domaine.
| J'ai fait un test et si je vais voir dans le dossier Tempory Internet
| Files, les fichiers sont supprimés mais j'ai toujours des dossiers et
| notamment le dossier Content IE5 avec plein de sous dossiers.
|
| Qu'est ce que je ne fais pas de comme il faut ?

Le dossier Temporary Internet File est verrouillé très tôt par le
système lors du démarrage de la machine. En fait le Shell (i.e
Explorer.exe) verrouille en autre le fichier des index
Content.IE5index.dat. Pour cette raison, le script de nettoyage
échoue. Donc pour être en mesure de vider complétement le dossier
Temporary Internet File, il est nécessaire d'exécuter le script avant le
démarrage du Shell. Pour cela il suffit de fixer le paramètre de
stratégie RunLogonScriptSync :
http://technet.microsoft.com/en-us/library/cc782062.aspx

Note: Après le démarrage du Shell, les dossiers par défaut Content.IE5
et Content.MSO seront automatiquement recréés. C'est ce que j'observe
sur ma machine XP Pro SP2 avec Internet Explorer 6

--
Gilles LAURENT
MVP Windows Server - Admin Frameworks
http://glsft.free.fr




Publicité
Poster une réponse
Anonyme