none
Como limpiar/borrar el directorio Temporal??? RRS feed

  • Pregunta

  • Buenas, necesito ayuda a la hora de eliminar totalmente todos los archivos temporales, tengo estos 2 codigos:

    Sub DeleteTemp()
     Dim tempPath As String = System.IO.Path.GetTempPath()
     System.IO.Directory.Delete(tempPath, True)
    End Sub
    
    Sub DeleteTemp_Option2()
    Dim cache As String = System.Environment.SpecialFolder.InternetCache.ToString
        System.IO.Directory.Delete(tempPath, True)
    End Sub
    

    Cualquiera de los 2 parece medio funcionar bien. A lo que me refiero es que llega un momento en que intenta borrar un archivo que esta siendo usado por otro proceso, entonces me da un IOException

    Necesito un codigo que me permita pasar esta excepcion y borre incluso los q estan siendo usados, si no es posible..entonces una manera de dejar este directorio totalmente limpio cuando el usuario lo desee

    Estoy usando VB y WPF

    Gracias de antemano

    martes, 26 de abril de 2011 2:15

Todas las respuestas

  • Buenas!

    Por la propia arquitectura de Windows, no puedes eliminar o modificar de forma alguna un archivo que está siendo usado por otro programa.... ¿Para qué quieres hacer esto?

     


    MCTS .NET Framework 3.5 Windows Forms Application Development
    MCTS .NET Framework 3.5 Windows Presentation Foundation
    Visita mi Blog en Geeks.ms
    Sigueme en Twitter
    martes, 26 de abril de 2011 6:55
    Moderador
  • Hola Luis.

    Yeray tiene razon. Una de las opciones es crear un proceso que se lance al iniciar windows y borre todo antes de que el handle al archivo se este usando.

    PD.- por favor cambia si puedes el tipo de post, ya que en este no se puede dar una respuesta como correcta y se rompe el comportamiento del foro.


    Saludos
    David González
    MCP, MCTS
    Visita mi Blog en: http://www.dgzornoza.com/
    martes, 26 de abril de 2011 13:53
  • gracias por las respuestas, la razon es porque en la aplicacion que estoy haciendo quiero agregar la opcion al usuario de limpiar el directorio temporal, ademas dl Recycle bin y otras ahi...todo esto despues de ejecutar algunas acciones que tiene el programa....en este caso quiero que se ejecuten esas opciones de limpeza antes de apagar la PC....pero el problema es el antes mencionado...de que no me permite limpiar la carpeta temporal porque hay archivos utilizados en otros procesos...

     

    PD: cual es el foro correcto para este tema...seria en VB??

    jueves, 28 de abril de 2011 20:33