Menú

Mostrar Mensajes

Esta sección te permite ver todos los mensajes escritos por este usuario. Ten en cuenta que sólo puedes ver los mensajes escritos en zonas a las que tienes acceso en este momento.

Mostrar Mensajes Menú

Mensajes - mortygor

#1
Creo que tienes razón, cierro el hilo. Gracias.
#2
Osea algo asi?

Código (vbnet) [Seleccionar]
       My.Computer.FileSystem.CopyFile(ListBox1, ListBox2, FileIO.UIOption.AllDialogs)


Me sigue dando error... en copyfile
#3
Lo que quiero es copiar el archivo que seleccione no el directorio.

Código (vbnet) [Seleccionar]
Dim sourceFileName As String
Dim destinationFileName As String


No se como decirle que archivo si siempre sera diferente?
#4
Hola, al intentar copiar un archivo y que me muestre la barra de progreso por defecto de windows me esta dando un error y ya no veo porque.

Código (vbnet) [Seleccionar]


        Dim srcFile1 As String
        Dim dstFile1 As String

        srcFile1 = "C:\Users\Alfredo\Desktop\iconos1"
        dstFile1 = "C:\Users\Alfredo\Desktop\iconos2"

        My.Computer.FileSystem.CopyFile(srcFile1, dstFile1, FileIO.UIOption.AllDialogs)


Este es el codigo y este el error que me da.

System.IO.FileNotFoundException: 'No se pudo encontrar el archivo 'C:\Users\Alfredo\Desktop\iconos1'.'

Sabeis que me falta?

gracias-
#5
He cambiado estas opciones.

Código (vb) [Seleccionar]

       Try ' Movemos el archivo de origen a la ruta de destino.
           srcFile.CopyTo(dstFile.FullName) ' move cambiado por copy

       Catch ex As Exception
           Throw

       End Try

       ' Actualizamos las colecciones de archivos.
       'Me.SrcCollection.Remove(srcFile) Este lo he quitado
       Me.DstCollection.Add(dstFile)


Aqui pongo el filtro

Código (vb) [Seleccionar]

       Dim srcFiles As IEnumerable(Of FileInfo) = New DirectoryInfo(Me.srcFolderPath).EnumerateFiles("*.mp4", SearchOption.TopDirectoryOnly)
       Dim dstFiles As IEnumerable(Of FileInfo) = New DirectoryInfo(Me.dstFolderPath).EnumerateFiles("*.mp4", SearchOption.TopDirectoryOnly)


Ahora ya filtra y copia, esta bien asi?

El watcher creo que no funciona, estoy moviendolo a ver si doy con la tecla, solo me falta eso.





Elimino el watcher, la verdad es que no me hace falta.
He quitado todo lo que me dijiste y ha quedado mas limpio.

Gracias.

[MOD] para añadir comentarios usar el botón "modificar". No está permitido el doble post. Perdona no lo sabia.

Al final el watcher si que lo usare, voy a ver.
Gracias y perdona
#6
Hola!

estoy viendo lo que me comentaste, esta parte no la entiendo muy bien.

    Private Sub NOMBRE_DEL_METODO()

Nombre del método? podría poner cualquier nombre?

Muchas gracias por la ayuda, voy a ver si me aclaro.
#7
Código (vb) [Seleccionar]

        Me.ListBox1.Sorted = True
        Me.ListBox1.DisplayMember = "Name"
        Me.ListBox1.DataSource = Me.SrcCollection

        Me.ListBox2.Sorted = True
        Me.ListBox2.DisplayMember = "Name"
        Me.ListBox2.DataSource = Me.DstCollection

    End Sub




    Dim directory2 = "C:\Users\Alfredo\Desktop\iconos2"
        Dim files2() As System.IO.FileInfo
        Dim dirinfo2 As New System.IO.DirectoryInfo(directory2)
        files2 = dirinfo2.GetFiles("*.mp4", IO.SearchOption.AllDirectories) ' DECIRLE QUE EXTENSION DE ARCHIVO ´AQUI MI CODIGO COMIENZA  A DAR FALLOS.
        For Each file In files2    ´AQUI MI CODIGO COMIENZA  A DAR FALLOS.
            ListBox2.Items.Add(file)   ´AQUI MI CODIGO COMIENZA  A DAR FALLOS.

        Next

        ''''''''''''''''' NECESARIO PARA VIGILAR LOS ARCHIVOSDE UNA CARPETA
        Me.CheckForIllegalCrossThreadCalls = False         ´AQUI MI CODIGO COMIENZA  A DAR FALLOS.

        fswc = New FileSystemWatcher("C:\Users\Alfredo\Desktop\iconos")    ´AQUI MI CODIGO COMIENZA  A DAR FALLOS.
        fswc.IncludeSubdirectories = False    ´AQUI MI CODIGO COMIENZA  A DAR FALLOS.
        fswc.EnableRaisingEvents = True      ´AQUI MI CODIGO COMIENZA  A DAR FALLOS.
        '---------------------------------------

        'muestra contenido carpeta'

        Dim directory = "C:\Users\Alfredo\Desktop\iconos"
        Dim files() As System.IO.FileInfo
        Dim dirinfo As New System.IO.DirectoryInfo(directory)
        files = dirinfo.GetFiles("*.mp4", IO.SearchOption.AllDirectories) ' DECIRLE QUE EXTENSION DE ARCHIVO    ´AQUI MI CODIGO COMIENZA  A DAR FALLOS.
        For Each file In files                            ´AQUI MI CODIGO COMIENZA  A DAR FALLOS.
            ListBox1.Items.Add(file)                    ´AQUI MI CODIGO COMIENZA  A DAR FALLOS.

        Next



    End Sub


#8
Perdona, tienes razon, he ido demasiado rapido y al final no se ni lo que pongo ni el como.... La verdad es que estoy "rallado" y me da la impresión de que en vez de hacer estoy deshaciendo.... Pero bueno.

Te lo pongo en varios que no me coje mas de 100 lineas creo.
Código (vb) [Seleccionar]


Imports System
Imports System.IO

Public Class Form2

   Private srcFolderPath As String = "C:\Users\morygor\Desktop\iconos1" ' Directorio de origen
   Private cdstFolderPath As String = "C:\Users\morygor\Desktop\iconos2" ' Directorio de destino

   Private WithEvents SrcCollection As [i]ObservableCollection(Of FileInfo)[/i] ' Colección de archivos del directorio de origen   ´ESTO QUE ESTA ENTRE LA I , NO ESTA DEFINIDO EL TIPO ObservableCollection
   Private WithEvents DstCollection As [i]ObservableCollection(Of FileInfo)[/i]' Colección de archivos del directorio de destino    ´ESTO QUE ESTA ENTRE LA I , NO ESTA DEFINIDO EL TIPO ObservableCollection

   ' Obtiene el nuevo nombre que será asignado al archivo de origen al moverlo al directorio de destino...

   Private ReadOnly Property NewFilename As String
       Get
           Return Me.TextBox4.Text.Trim()
       End Get
   End Property
   '-------------------NECESARIO PARA VIGILAR LOS ARCHIVOSDE UNA CARPETA
   Public WithEvents fswc As FileSystemWatcher

   '------------------- MOVER EL FORMULARIO
   <DllImport("user32.DLL", EntryPoint:="ReleaseCapture")>
   Private Shared Sub ReleaseCapture()
   End Sub

   <DllImport("user32.DLL", EntryPoint:="SendMessage")>
   Private Shared Sub SendMessage(ByVal hWnd As System.IntPtr, ByVal wMsg As Integer, ByVal wParam As Integer, ByVal lParam As Integer)
   End Sub

   Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
       Me.Close() 'orden para cerrar'

   End Sub

   Private Sub Button2_Click(sender As Object, e As EventArgs) Handles Button2.Click
       Me.WindowState = FormWindowState.Minimized 'orden para minimizar'

   End Sub

   Private Sub Form2_Load(sender As Object, e As EventArgs) Handles MyBase.Load

       ' Construimos las colecciones de archivos del directorio de origen y destino,
       ' y enlazamos dichas colecciones a los ListBoxes...

       Dim srcFiles As IEnumerable(Of FileInfo) = [i]New DirectoryInfo(Me.srcFolderPath).EnumerateFiles[/i]("*", SearchOption.TopDirectoryOnly)      ---- pone que no es un miembro de directoryinfo

       Dim dstFiles As IEnumerable(Of FileInfo) = New DirectoryInfo[color=green][i](Me.dstFolderPath)[/i][/color].EnumerateFiles("*", SearchOption.TopDirectoryOnly) ' NO es un miembro de form2

       Me.SrcCollection = NeW [i]ObservableCollection(Of FileInfo)[/i](srcFiles)' NO ESTA DEFINIDO ObservableCollection

       Me.DstCollection = New [i]ObservableCollection(Of FileInfo)[/i](dstFiles)' NO ESTA DEFINIDO ObservableCollection


#9
Hola, alguna cosa no encaja, me salen bastantes fallos.
Esto es lo que tengo en este form.


Imports System.Runtime.InteropServices
Imports System
Imports System.IO

Public Class Form2
   '-------------------NECESARIO PARA VIGILAR LOS ARCHIVOSDE UNA CARPETA
   Public WithEvents fswc As FileSystemWatcher

   '------------------- MOVER EL FORMULARIO
   <DllImport("user32.DLL", EntryPoint:="ReleaseCapture")>
   Private Shared Sub ReleaseCapture()
   End Sub

   <DllImport("user32.DLL", EntryPoint:="SendMessage")>
   Private Shared Sub SendMessage(ByVal hWnd As System.IntPtr, ByVal wMsg As Integer, ByVal wParam As Integer, ByVal lParam As Integer)
   End Sub

   Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
       Me.Close() 'orden para cerrar'

   End Sub

   Private Sub Button2_Click(sender As Object, e As EventArgs) Handles Button2.Click
       Me.WindowState = FormWindowState.Minimized 'orden para minimizar'

   End Sub

   Private Sub Form2_Load(sender As Object, e As EventArgs) Handles MyBase.Load
       Dim directory2 = "C:\Users\mortigor\Desktop\iconos2"
       Dim files2() As System.IO.FileInfo
       Dim dirinfo2 As New System.IO.DirectoryInfo(directory2)
       files2 = dirinfo2.GetFiles("*.mp4", IO.SearchOption.AllDirectories) ' DECIRLE QUE EXTENSION DE ARCHIVO
       For Each file In files2
           ListBox2.Items.Add(file)

       Next

       ''''''''''''''''' NECESARIO PARA VIGILAR LOS ARCHIVOSDE UNA CARPETA
       Me.CheckForIllegalCrossThreadCalls = False

       fswc = New FileSystemWatcher("C:\Users\Alfredo\Desktop\iconos")
       fswc.IncludeSubdirectories = False
       fswc.EnableRaisingEvents = True
       '---------------------------------------

       'muestra contenido carpeta'

       Dim directory = "C:\Users\mortigor\Desktop\iconos"
       Dim files() As System.IO.FileInfo
       Dim dirinfo As New System.IO.DirectoryInfo(directory)
       files = dirinfo.GetFiles("*.mp4", IO.SearchOption.AllDirectories) ' DECIRLE QUE EXTENSION DE ARCHIVO
       For Each file In files
           ListBox1.Items.Add(file)

       Next



   End Sub



   Private Sub Panel1_MouseMove(sender As Object, e As MouseEventArgs) Handles Panel1.MouseMove
       ReleaseCapture()
       SendMessage(Me.Handle, &H112&, &HF012&, 0)
   End Sub

   Private Sub Label1_Click(sender As Object, e As EventArgs) Handles Label1.Click

   End Sub


   Private Sub fswc_Changed(sender As Object, e As FileSystemEventArgs) Handles fswc.Changed
       ListBox1.Items.Clear()
       Dim directory = "C:\Users\mortigor\Desktop\iconos"
       Dim files() As System.IO.FileInfo
       Dim dirinfo As New System.IO.DirectoryInfo(directory)
       files = dirinfo.GetFiles("*.mp4", IO.SearchOption.AllDirectories) ' DECIRLE QUE EXTENSION DE ARCHIVO
       For Each file In files
           ListBox1.Items.Add(file)

       Next
   End Sub

   Private Sub fswc_Created(sender As Object, e As FileSystemEventArgs) Handles fswc.Created
       ListBox1.Items.Clear()
       Dim directory = "C:\Users\mortigor\Desktop\iconos"
       Dim files() As System.IO.FileInfo
       Dim dirinfo As New System.IO.DirectoryInfo(directory)
       files = dirinfo.GetFiles("*.mp4", IO.SearchOption.AllDirectories) ' DECIRLE QUE EXTENSION DE ARCHIVO
       For Each file In files
           ListBox1.Items.Add(file)

       Next
   End Sub

   Private Sub fswc_Deleted(sender As Object, e As FileSystemEventArgs) Handles fswc.Deleted
       ListBox1.Items.Clear()
       Dim directory = "C:\Users\mortigor\Desktop\iconos"
       Dim files() As System.IO.FileInfo
       Dim dirinfo As New System.IO.DirectoryInfo(directory)
       files = dirinfo.GetFiles("*.mp4", IO.SearchOption.AllDirectories) ' DECIRLE QUE EXTENSION DE ARCHIVO
       For Each file In files
           ListBox1.Items.Add(file)

       Next
   End Sub

   Private Sub fswc_Disposed(sender As Object, e As EventArgs) Handles fswc.Disposed
       ListBox1.Items.Clear()
   End Sub

   Private Sub fswc_Error(sender As Object, e As ErrorEventArgs) Handles fswc.[Error]
       ListBox1.Items.Clear()
   End Sub

   Private Sub fswc_Renamed(sender As Object, e As RenamedEventArgs) Handles fswc.Renamed
       ListBox1.Items.Clear()
       Dim directory = "C:\Users\mortigor\Desktop\iconos"
       Dim files() As System.IO.FileInfo
       Dim dirinfo As New System.IO.DirectoryInfo(directory)
       files = dirinfo.GetFiles("*.mp4", IO.SearchOption.AllDirectories) ' DECIRLE QUE EXTENSION DE ARCHIVO
       For Each file In files
           ListBox1.Items.Add(file)

       Next
   End Sub

   Private Sub ListBox1_SelectedIndexChanged(sender As Object, e As EventArgs) Handles ListBox1.SelectedIndexChanged




   End Sub
   Private Sub Label2_Click(sender As Object, e As EventArgs) Handles Label2.Click

   End Sub

   Private Sub Label3_Click(sender As Object, e As EventArgs) Handles Label3.Click

   End Sub

   Private Sub Button3_Click(sender As Object, e As EventArgs) Handles Button3.Click

   End Sub

   Private Sub TextBox4_TextChanged(sender As Object, e As EventArgs) Handles TextBox4.TextChanged

   End Sub

   Private Sub ListBox2_SelectedIndexChanged(sender As Object, e As EventArgs) Handles ListBox2.SelectedIndexChanged

   End Sub

   Private Sub BackgroundWorker1_DoWork(sender As Object, e As ComponentModel.DoWorkEventArgs) Handles BackgroundWorker1.DoWork

   End Sub

Esto es lo que tengo por ahora, me lee el archivo el listbox, tengo un watcher para que me lo actualice cada vez que hay algún cambio.

Tengo 2 listbox, button, listbox.

No se como encajarlo..
#10
Hola Elektro, lo primero muchas gracias por contestar, voy a probarlo y te cuento.

Muchas gracias y un saludo.