Newsgroup: it.comp.os.win.xp
Titolo: Pulizia cartella %temp%

 
          Ciao,
esiste qualche menů o qualche funzione che pulisce la cartella %temp%?
--------------------------------
Inviato via 
http://arianna.libero.it/usenet/

 esiste qualche menù o qualche funzione che pulisce la cartella %temp%?
Start, Programmi, Accessori, Utilita' di sistema, Pulizia disco.
-- 
    -DocDoc-
--- Per scrivermi: docdoc()
sertel.net
Sei anche tu stanco dei messaggi spam? Usa Terminator, il programma
anti-spam italiano FREEWARE!     
http://www.spamterminator.it/

 esiste qualche menù o qualche funzione che pulisce la cartella %temp%?
[...]
Pulitura disco non prevede l'eliminazione dei file contenuti nella cartella
Temp.
Usa "CCleaner":
http://www.majorgeeks.com/download4191.html
Elimina e pulisce molte altre "cose" ;-).
-- 
Vincenzo Di Russo
Microsoft® MVP - Most Valuable Professional
Windows - Internet Explorer/OE 2003/2004/2005
http://support.microsoft.com/newsgroups
http://mvp.support.microsoft.com/

 Temp.
Ah, vero, non avevo fatto caso al "%" pensavo parlasse della TEMP...;-)
Beh, in questo caso potrebbe fare un batch "puliscitemp.cmd" con dentro 
il comando "del /s /f %temp%" e lanciarlo a mano o in Esecuzione automatica?



In effetti avevo pensato anche a questo: devo farlo fare periodicamente ad
una quindicina di persone la maggior parte delle quali capiscono poco e
niente di PC, quindi avevo pensato di fargli un comando o, in alternativa,
fargli lanciare un qualche comando o menů di sistema che lo facesse in
automatico.


 automatica?
Yep. ;-)
Ciao.


 automatico.
Il batch lo puoi ovviamente linkare ad un'icona del loro desktop, pero' 
e' pericoloso perche' in quella directory ci sono anche file in uso, se 
lo fai con alcuni programmi aperti. IMHO meglio metterglielo in 
Esecuzione automatica cosi' sei certo (o quasi) che non ci siano 
conflitti con programmi in esecuzione.


"MBulu"
come ti hanno gia' detto e' meglio metterlo in esecuzione
automatica
questo ti fa' vedere dove ogni sistema veda la %temp% :
 Set oSh = CreateObject("Wscript.Shell")
  Set oFSO = CreateObject("Scripting.FileSystemObject")
  sTempName = oSh.ExpandEnvironmentStrings("%TEMP%")
Msgbox(sTempName)
'io direi che si potrebbe vancellare direttamnente tutta la folder
'tanto Windows la ricrea alla prima occasione di utilizzo
'ecco un esempio (OCCIO)
Set objFSO = WScript.CreateObject("Scripting.FileSystemObject")
objFSO.DeleteFolder  "C:\Prova",  True
'attenzione che a menoria il DeleteFolder  cancella direttamente
'senza passare dal cestino
'Copia incolla su notepad e salva con estensione .vbs
'tutti i file (*.*)  poi ci clicchi sopra. (per esempio Prove.vbs)
'se ti da' errore disattiva l'antivirus
--
Fosco

"Fosco"
ecco qualcosa fatto da professionisti :
'DeleteTempFiles.vbs - A utility to clean Win9x temp directory
'at boot.  Put a shortcut to this file in Startup directory.
'© Bill James - 
bi...@billsway.com
 - rev 26 May 2002
'Original author - Michael Harris - posted to
'microsoft.public.scripting.vbs newsgroup on 28 Aug 1999.
'Modifications by Bill James: Added safety check for dangerous
'temp folder settting.  Revised summary popup to include
'savings for this run and cumulative savings to date.
'rev 26 May 2002 to add error trap for unformatted partition
Option Explicit
Dim fso,ws,Title
Set fso = CreateObject("Scripting.FileSystemObject")
Set ws = WScript.CreateObject("WScript.Shell")
Title = "Temp File Cleaner"
Dim TmpDir : TmpDir = ws.Environment("Process")("Temp")
ChkTmpSafe
Dim OldTmpSize : OldTmpSize = fso.GetFolder(TmpDir).size
Dim arFiles(),cnt,dcnt,Fldr,SubFldr,File
cnt = -1
dcnt = 0
DelTmpFiles TmpDir
DelEmptyFldrs TmpDir
Dim strF,strD,RptSize,TotSave
CalcSave
If dcnt >= 1 Then ws.Popup cnt & strF & dcnt & _
  strD & vbCRLF & vbCRLF & RptSize & vbCRLF & _
  vbCRLF & TotSave,60,Title
Cleanup
Sub ChkTmpSafe
Dim Drv,Unsafe,WinDir,ComDir,PgmDir,SysDir,UnsafeDir
  If TmpDir = "" Then
    ws.Popup "Unsafe condition detected.  %TEMP% " &_
    "Variable is not set.",60,Title,16
    Cleanup
    WScript.Quit
  End If
  If Not fso.FolderExists(TmpDir) Then
    fso.CreateFolder(TmpDir)
    Cleanup
    WScript.Quit
  End If
  For Each Drv In fso.Drives
    'If a drive or partition is not formatted, an error occurs
    On Error Resume Next
    If Drv.DriveType = 2 or Drv.DriveType = 3 Then _
      UnSafe = UnSafe & Drv.RootFolder & "|"
    On Error GoTo 0
  Next
  Unsafe = Unsafe & fso.GetSpecialFolder(0) & "|"
  Unsafe = Unsafe & fso.GetSpecialFolder(0) & "\Command|"
  Unsafe = Unsafe & ws.RegRead("HKLM\Software\Microsoft" _
    & "\Windows\CurrentVersion\ProgramFilesPath") & "|"
  Unsafe = Unsafe & fso.getspecialfolder(1)
  Unsafe = Split(Unsafe,"|",-1,1)
  For Each UnsafeDir In Unsafe
    If UCase(UnsafeDir) = UCase(TmpDir) Or _
    UCase(UnsafeDir) & "\" = UCase(TmpDir) Or _
    UCase(UnsafeDir) = UCase(TmpDir) & "\" Then
      ws.Popup "Unsafe condition detected.  %TEMP% " &_
      "Variable is set to " & TmpDir,60,Title,16
      Cleanup
      WScript.Quit
    End If
  Next
End Sub
Sub DelTmpFiles(FldrSpec)
  Set Fldr = fso.GetFolder(FldrSpec)
  For Each File In Fldr.Files
    cnt = cnt + 1
    Redim Preserve arFiles(cnt)
    Set arFiles(cnt) = File
  Next
  For Each SubFldr in Fldr.SubFolders
    DelTmpFiles SubFldr
  Next
  For Each file in arFiles
    On Error Resume Next
    file.Delete True
    If Err.Number = 0 Then dcnt = dcnt + 1
    Err.Clear
  Next
End Sub
Sub DelEmptyFldrs(FldrSpec)
  Set Fldr = fso.GetFolder(FldrSpec)
  For Each SubFldr in Fldr.SubFolders
    DelEmptyFldrs SubFldr
  Next
  On Error Resume Next
  If UCase(Fldr.Path) <> UCase(TmpDir) Then
    If Fldr.Files.Count = 0 Then
      If Fldr.SubFolders.Count = 0 Then
        Fldr.Delete
      End If
    End If
  End If
  If Err.Number = 76 Then
    Err.Clear
    On Error GoTo 0
    DelEmptyFldrs(TmpDir)
  End If
End Sub
Sub CalcSave
  Dim NewTmpSize,SaveSize,s1,s2
  Dim TmpClnLog,OldSave,HideLog,Log
  NewTmpSize = fso.GetFolder(TmpDir).size
  SaveSize = OldTmpSize - NewTmpSize
  s1 = " free space reclaimed."
  If SaveSize < 1024 Then
    RptSize = SaveSize & " bytes" & s1
  ElseIf SaveSize < 1048576 Then
    RptSize = Round(SaveSize / 1024) & " KB" & s1
  Else RptSize = Round(SaveSize / 1048576) & " MB" & s1
  End If
  Log = fso.GetSpecialFolder(0) & "\TempClean.Log"
  If Not fso.FileExists(Log) Then fso.CreateTextFile(Log)
  If fso.GetFile(Log).Size = 0 Then
    Set TmpClnLog = fso.OpenTextFile(Log,8,True)
    TmpClnLog.WriteBlankLines(1)
  End If
  Set TmpClnLog = fso.OpenTextFile(Log,1)
  OldSave = TmpClnLog.ReadLine
  If Not IsNumeric(OldSave) Then OldSave = 0
  TotSave = OldSave + SaveSize
  Set TmpClnLog = fso.OpenTextFile(Log,2)
  TmpClnLog.WriteLine TotSave
  TmpClnLog.Close
  s2 = " reclaimed to date."
  If TotSave < 1024 Then
    TotSave = TotSave & " bytes" & s2
  ElseIf TotSave < 1048576 Then
    TotSave = Round(TotSave / 1024) & " KB" & s2
  Else TotSave = Round(TotSave / 1048576) & " MB" & s2
  End If
  cnt = cnt + 1
  If cnt = 1 Then strF = " file found, " _
    Else strF = " files found, "
  If dcnt = 1 Then strD = " file deleted." _
    Else strD = " files deleted."
  Set TmpClnLog = Nothing
End Sub
Sub Cleanup
  Set fso = Nothing
  Set ws = Nothing
  Set Fldr = Nothing
End Sub