Ver Mensaje Individual
  #1 (permalink)  
Antiguo 11/02/2007, 13:19
Avatar de (Pato)²
(Pato)²
 
Fecha de Ingreso: noviembre-2005
Mensajes: 130
Antigüedad: 19 años, 5 meses
Puntos: 1
[Problema VB6] de FileList y FileCopy (sobreescribe archivos)

Holas :p

Bueno, como dice el titulo.. La cuestión es que mi novia tiene un celular Nokia 3220 y para pasar las fotos les tiene que agregar el numerito manual, lo cual es la re paja.. Entonces le dije: no amor, te hago yo uno que te las agrega solo :P

Lo hice asi como me salia porque no se me ocurrian muchas formas de hacerlo con mi poco conocimiento de vb (ahora creo que estoy en condiciones de hacerlo mejor xD)

El problema surge que me sobreescribio imagenes, cuando no tendria que hacerlo, a lo que intuyo que debe ser un error de programacion que obvie..

Asi que paso a relatar el programa (?)

En el formload dos FileList cargan los archivos .jpg, uno carga los de la carpeta origen (a donde se pasan las fotos desde el cel con el Obtener Imagenes (nokia pc suit). Entonces hace un listcount de las imagenes en cada carpeta, asignandole a las imagenes de la carpeta Origen la variable Cantidad (o sea, la cantidad de imagenes a copiar) y a la de destino, la variable Vacante (o sea, la ultima imagen vacante)

En el cmd_click (o sea, en el copiar) Hace un for, desde 1 hasta la cantidad de fotos que hay, sumandole 1 al listindex del origen (asignandole a la variable z el filename del origen) ahora tenemos una cosa que ate con alambre para que las imagenes sean 001, 002, 003, etc (?)
Despues asignamos la direccion de la carpeta + el filename a la variable Origen y la direccion de la carpeta + "imagen" + Vacante + ".jpg" a la variable destino..
Hacemos un FileCopy Origen, Destino
borramos Origen
le sumamos 1 a la variable vacante
se repite el bucle y cuando termina manda msg..


El programa funciono perfecto hasta la foto numero 403, despues, o sea, hoy cuando quiso volver a pasar las fotos como siempre, noto un pequeño problema (?)en vez de agregarse al final de las fotos (o sea, 404, 405, etc (?)) sustituyeron a las imagenes 270, 271, 272, 273, etc :S, por lo cual mi novia perdio como 50 fotos.. Y va a dejar de usar el programa u.u y yo me siento re culpable.. no se, espero que alguien me pueda dar una mano y sepa por que pasa esto..

Aca les dejo source del programa para mas detalles (?)

Código:
Option Explicit
Dim Vacante As Integer, Cantidad As Integer
Dim Origen As String, Destino As String, Vacante2 As String
Private Sub CmdCopiar_Click()
    Dim i As Integer
    Dim z As String
    
    For i = 1 To Cantidad
        File1.ListIndex = i
        z = File1.FileName
        If Vacante < 10 Then
            Vacante2 = "00" & Vacante
        ElseIf Vacante >= 10 And Vacante < 100 Then
            Vacante2 = "0" & Vacante
        ElseIf Vacante >= 100 Then
            Vacante2 = Vacante
        End If
        DoEvents
        Origen = "C:\Documents and Settings\asd\Escritorio\Origen\" & z
        Destino = "C:\Documents and Settings\asd\Escritorio\Destino\" & "Imagen" & Vacante2 & ".jpg"
        FileCopy Origen, Destino
        Kill Origen
        Vacante = Vacante + 1
    Next i
MsgBox "Imagenes copiadas satisfactoriamente", vbOKOnly
End
End Sub
Private Sub Form_Load()
    File1.Path = "C:\Documents and Settings\asd\Escritorio\Origen\"
    File1.Pattern = "*.jpg"
    Cantidad = File1.ListCount
    File2.Path = "C:\Documents and Settings\asd\Escritorio\Destino\"
    File2.Pattern = "*.jpg"
    Vacante = File2.ListCount
End Sub