none
¿Como eliminar varios archivos con KILL y que no tire error si este no existe? RRS feed

  • Pregunta

  • Que tal amigos, el motivo de mi pregunta se debe a que estoy creando una aplicacion basada en checkbox que eliminara varios archivos con habilitarlos y dar clic en el boton iniciar, mi problema es el siguiente, en caso de que un archivo de todos los programados a eliminar no exista, como puedo hacer para que no tire error, ya que son muchos, con uno que no exista, la aplicacion deja de responder y tira error, aqui el codigo que Uso:

     

            If CheckBox3.Checked = 0 Then

     

            Else

                If Dir$(Environ("CommonProgramFiles") & "\Research In Motion\Shared\Loader Files\" & ComboBox1.SelectedItem & "\Help.alx") <> "" Then

                    Kill(Environ("CommonProgramFiles") & "\Research In Motion\Shared\Loader Files\" & ComboBox1.SelectedItem & "\Help.alx")

                    Kill(Environ("CommonProgramFiles") & "\Research In Motion\Shared\Loader Files\" & ComboBox1.SelectedItem & "\Java\net_rim_bb_help.cod")

                    Kill(Environ("CommonProgramFiles") & "\Research In Motion\Shared\Loader Files\" & ComboBox1.SelectedItem & "\Java\net_rim_bb_help_8900_series__sv.cod")

                    Kill(Environ("CommonProgramFiles") & "\Research In Motion\Shared\Loader Files\" & ComboBox1.SelectedItem & "\Java\net_rim_bb_help_8900_series__no.cod")

                    Kill(Environ("CommonProgramFiles") & "\Research In Motion\Shared\Loader Files\" & ComboBox1.SelectedItem & "\Java\net_rim_bb_help_8900_series__da.cod")

                    Kill(Environ("CommonProgramFiles") & "\Research In Motion\Shared\Loader Files\" & ComboBox1.SelectedItem & "\Java\net_rim_bb_help_8900_series__en_GB.cod")

                    Kill(Environ("CommonProgramFiles") & "\Research In Motion\Shared\Loader Files\" & ComboBox1.SelectedItem & "\Java\net_rim_bb_help_8900_series__tr.cod")

                    Kill(Environ("CommonProgramFiles") & "\Research In Motion\Shared\Loader Files\" & ComboBox1.SelectedItem & "\Java\net_rim_bb_help_8900_series__th.cod")

                    Kill(Environ("CommonProgramFiles") & "\Research In Motion\Shared\Loader Files\" & ComboBox1.SelectedItem & "\Java\net_rim_bb_help_8900_series__es.cod")

                    Kill(Environ("CommonProgramFiles") & "\Research In Motion\Shared\Loader Files\" & ComboBox1.SelectedItem & "\Java\net_rim_bb_help_8900_series__ru.cod")

                    Kill(Environ("CommonProgramFiles") & "\Research In Motion\Shared\Loader Files\" & ComboBox1.SelectedItem & "\Java\net_rim_bb_help_8900_series__ro.cod")

                    Kill(Environ("CommonProgramFiles") & "\Research In Motion\Shared\Loader Files\" & ComboBox1.SelectedItem & "\Java\net_rim_bb_help_8900_series__pl.cod")

                    Kill(Environ("CommonProgramFiles") & "\Research In Motion\Shared\Loader Files\" & ComboBox1.SelectedItem & "\Java\net_rim_bb_help_8900_series__ko.cod")

                    Kill(Environ("CommonProgramFiles") & "\Research In Motion\Shared\Loader Files\" & ComboBox1.SelectedItem & "\Java\net_rim_bb_help_8900_series__ja.cod")

                    Kill(Environ("CommonProgramFiles") & "\Research In Motion\Shared\Loader Files\" & ComboBox1.SelectedItem & "\Java\net_rim_bb_help_8900_series__it.cod")

                    Kill(Environ("CommonProgramFiles") & "\Research In Motion\Shared\Loader Files\" & ComboBox1.SelectedItem & "\Java\net_rim_bb_help_8900_series__id.cod")

                    Kill(Environ("CommonProgramFiles") & "\Research In Motion\Shared\Loader Files\" & ComboBox1.SelectedItem & "\Java\net_rim_bb_help_8900_series__hu.cod")

                    Kill(Environ("CommonProgramFiles") & "\Research In Motion\Shared\Loader Files\" & ComboBox1.SelectedItem & "\Java\net_rim_bb_help_8900_series__he.cod")

                    Kill(Environ("CommonProgramFiles") & "\Research In Motion\Shared\Loader Files\" & ComboBox1.SelectedItem & "\Java\net_rim_bb_help_8900_series__el.cod")

                    Kill(Environ("CommonProgramFiles") & "\Research In Motion\Shared\Loader Files\" & ComboBox1.SelectedItem & "\Java\net_rim_bb_help_8900_series__de.cod")

                    Kill(Environ("CommonProgramFiles") & "\Research In Motion\Shared\Loader Files\" & ComboBox1.SelectedItem & "\Java\net_rim_bb_help_8900_series__fr.cod")

                    Kill(Environ("CommonProgramFiles") & "\Research In Motion\Shared\Loader Files\" & ComboBox1.SelectedItem & "\Java\net_rim_bb_help_8900_series__pt.cod")

                    Kill(Environ("CommonProgramFiles") & "\Research In Motion\Shared\Loader Files\" & ComboBox1.SelectedItem & "\Java\net_rim_bb_help_8900_series__nl.cod")

                    Kill(Environ("CommonProgramFiles") & "\Research In Motion\Shared\Loader Files\" & ComboBox1.SelectedItem & "\Java\net_rim_bb_help_8900_series__cs.cod")

                    Kill(Environ("CommonProgramFiles") & "\Research In Motion\Shared\Loader Files\" & ComboBox1.SelectedItem & "\Java\net_rim_bb_help_8900_series__pt_BR.cod")

                    Kill(Environ("CommonProgramFiles") & "\Research In Motion\Shared\Loader Files\" & ComboBox1.SelectedItem & "\Java\net_rim_bb_help_8900_series__ar.cod")

                    Kill(Environ("CommonProgramFiles") & "\Research In Motion\Shared\Loader Files\" & ComboBox1.SelectedItem & "\Java\net_rim_bb_help_8900_series__en.cod")

     

    Como pueden observar son muchos archivos a eliminar y por uno solo no quiero que el programa deje de responder.

     

    espero sus respuestas

     

    Un Saludo¡¡¡¡

    sábado, 25 de junio de 2011 14:58

Todas las respuestas

  • pero porque no usas la funcionalidad de .net para esto

    mira que simple que podrias ser el codigo

     

    Public Sub Eliminar()

        If Not CheckBox3.Checked Then
            Return
        End If

        Dim fileList As New List(Of String)
        fileList.Add("Help.alx")
        fileList.Add("Java\net_rim_bb_help.cod")
        fileList.Add("Java\net_rim_bb_help_8900_series__sv.cod")
        fileList.Add("Java\net_rim_bb_help_8900_series__no.cod")
        .
        .
        fileList.Add("Java\net_rim_bb_help_8900_series__en.cod")


        Dim prefixpath As String = Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.CommonProgramFiles), "Research In Motion\Shared\Loader Files")


        For Each item As String In fileList

            Dim fullPath As String = Path.Combine(prefixpath, item)
           
            If File.Exists(fullPath) Then
                File.Delete(fullPath)
            End If

        Next

    End Sub

     

    como veras se requiere que agregues la referencia a System.IO y el Imports a aeste

    donde puse los ... completa la lista de archivos

     

    saludos


    Leandro Tuttini

    Blog
    Buenos Aires
    Argentina
    sábado, 25 de junio de 2011 15:52