Foro de elhacker.net

Programación => Programación Visual Basic => Mensaje iniciado por: turusele en 10 Mayo 2008, 15:02 pm



Título: Ayuda novato
Publicado por: turusele en 10 Mayo 2008, 15:02 pm
Nose porque no me aparece el post que puse ayer,no me acuerdo de los  usuarios que me estaban ayudando,ya he creado 4 forms,aver si estan bien:

Form principal:

Código:
Private Sub S1_Click()
           
    Dim Ruta As String
   
    Select Case True
        Case Wcrpal: Ruta = App.Path & "/software/DCRPAL/wii-dcr_v2.1_PAL.dol,wii-dcr_v2.1_PAL.Elf"
        Case Wcrusa: Ruta = App.Path & "/software/DCRUSA/wii-dcr_v2.1_USA.dol,wii-dcr_v2.1_USA.Elf"
        Case Wcrjap: Ruta = App.Path & "/software/DCRJAP/wii-dcr_v2.1_JAP.dol,wii-dcr_v2.1_JAP.Elf"
    End Select
 
    MsgBox Ruta
 
    If Wcrpal = True Then

        Iwrc2.Show
        Iwrc.Hide
       
    ElseIf Wcrusa = True Then

        Iwrc3.Show
        Iwrc.Hide
       
    ElseIf Wcrjap = True Then

        Iwrc4.Show
        Iwrc.Hide

    End If
End Sub

Segundo form:

Código:
Private Sub Iwrc2_Load()
    Iwrc.Hide
   
    If Iwrc.Wcrpal.Value = True Then
        Wcrpal.Visible = True
        Wcrusa.Visible = False
        Wcrjap.Visible = False
    ElseIf Iwrc.Wcrusa.Value = True Then
        Wcrpal.Visible = False
        Wcrusa.Visible = True
        Wcrjap.Visible = False
    Else
        Wcrpal.Visible = False
        Wcrusa.Visible = False
        Wcrjap.Visible = True
    End If
   
End Sub


Private Sub a1_Click()
 
  Iwrc2.Hide
  Iwrc.Show
 
End Sub

Private Sub Form_Load()

End Sub

Private Sub s2_Click()

Dim Ruta As String
   
    Select Case True
        Case aelf: Ruta = App.Path & "/software/DCRPAL/wii-dcr_v2.1_PAL.Elf"
        Case adol: Ruta = App.Path & "/software/DCRPAL/wii-dcr_v2.1_PAL.dol"
    End Select
   
    MsgBox Ruta
   
End Sub

tercer form:

Código:
Private Sub Iwrc3_Load()
    Iwrc.Hide
   
    If Iwrc.Wcrpal.Value = True Then
        Wcrpal.Visible = True
        Wcrusa.Visible = False
        Wcrjap.Visible = False
    ElseIf Iwrc.Wcrusa.Value = True Then
        Wcrpal.Visible = False
        Wcrusa.Visible = True
        Wcrjap.Visible = False
    Else
        Wcrpal.Visible = False
        Wcrusa.Visible = False
        Wcrjap.Visible = True
    End If
   
End Sub

Private Sub a2_Click()

    Iwrc3.Hide
    Iwrc.Show
   
End Sub

Private Sub Form_Load()

End Sub

Private Sub s3_Click()

Dim Ruta As String
   
    Select Case True
        Case aelf2: Ruta = App.Path & "/software/DCRUSA/wii-dcr_v2.1_Usa.Elf"
        Case adol2: Ruta = App.Path & "/software/DCRUSA/wii-dcr_v2.1_Usa.dol"
    End Select
   
    MsgBox Ruta
   
End Sub


cuarto form:

Código:
Private Sub Iwrc4_Load()
    Iwrc.Hide
   
    If Iwrc.Wcrpal.Value = True Then
        Wcrpal.Visible = True
        Wcrusa.Visible = False
        Wcrjap.Visible = False
    ElseIf Iwrc.Wcrusa.Value = True Then
        Wcrpal.Visible = False
        Wcrusa.Visible = True
        Wcrjap.Visible = False
    Else
        Wcrpal.Visible = False
        Wcrusa.Visible = False
        Wcrjap.Visible = True
    End If
   
End Sub

Private Sub a3_Click()

    Iwrc4.Hide
    Iwrc.Show
   
End Sub

Private Sub Form_Load()

End Sub

Private Sub s4_Click()

Dim Ruta As String
   
    Select Case True
        Case aelf3: Ruta = App.Path & "/software/DCRJAP/wii-dcr_v2.1_JAP.Elf"
        Case adol3: Ruta = App.Path & "/software/DCRJAP/wii-dcr_v2.1_JAP.dol"
    End Select
   
    MsgBox Ruta
   
End Sub


Ahora me falta el de escojer el directorio a instalar y que los copie al destino seleccionado,como se haria?¿?¿un saludo


Título: Re: Ayuda novato
Publicado por: seba123neo en 10 Mayo 2008, 15:08 pm
Hola,si lo vi a tu post,no se porque te lo borraron,no tenia nada raro,pero bue no es cuestion mia.. :¬¬podes usar un control DirListBox para elegir la carpeta a instalar ,o podes hacerlo mediante api y abrir la ventana de "Seleccionar Carpeta" y que te retorne el path de la carpeta eelgida y despues la trabajas con una variable..

saludos.


Título: Re: Ayuda novato
Publicado por: turusele en 10 Mayo 2008, 15:24 pm
ya he puesto un dirlistbox y un drivelistbox ya que esto se copia mas que nada a una tarjeta sd,no tengo ni idea de programar asique no e entendio lo que me as querido decir,nose xq me lo abran borrao si no puse nada raro,un saludo


Título: Re: Ayuda novato
Publicado por: seba123neo en 10 Mayo 2008, 15:33 pm
entonces trata de leer algun manual de visual,hay millones en internet,porque son propiedades basicas de los controles y las tenes que saber,no soy malo,pero si venis con conocimientos previos sobre el tema es mejor ayudar,porque sino los post terminan con 50 mensajes...

saludos.


Título: Re: Ayuda novato
Publicado por: turusele en 10 Mayo 2008, 17:57 pm
Vale ya tengo el dirlistbox y el drivelist box:
Código:
End Sub

Private Sub Iwrc5_Load()
    Iwr2.Hide
   
    If Iwrc2.aelf.Value = True Then
        aelf.Visible = True
        adol.Visible = False
       
    ElseIf Iwrc2.adol.Value = True Then
        aelf.Visible = False
        adol.Visible = True
       
   
End If
   
End Sub


Private Sub Drive1_Change()

On Error GoTo MensajeError

   
    Dir1.Path = Drive1.Drive

Exit Sub

MensajeError:

    If Err.Number = 68 Then MsgBox "La unidad seleccionada no está disponible", vbInformation: Resume Next

End Sub

Private Sub s4_Click()
   
End Sub
haber si me podeis echar una mano que ya lo termino para que se copie en el directorio elegido con el dirlistbox y el drivelistboxel archivo elegido


Título: Re: Ayuda novato
Publicado por: turusele en 11 Mayo 2008, 00:34 am
vale ya he conseguido que se copien los archivos pero al copiarlos se me copian con nombre  VERDADERO o S4,como puedo hacer para que se copie con el nombre que yo quiera,quiero que se copien como boot.elf y boot.dol

Código:
Private Sub s4_Click()
Dim ruta As String
Dim destino As String
    ruta = App.Path & "/software/DCRPAL/wii-dcr_v2.1_PAL.Elf"
    destino = Dir1.Path & s4.Name
FileCopy ruta, destino
  End Sub


Título: Re: Ayuda novato
Publicado por: Yekka en 11 Mayo 2008, 02:51 am
Chico explicate mejor que no entiendo nada de nada, no se supone que lo que quieres se hace modificando la variable "Destino" no entendi....


Título: Re: Ayuda novato
Publicado por: turusele en 11 Mayo 2008, 13:16 pm
segun esta asi se me copia el archivo que quiero pero se me copia con el nombre s4 y qiuero que se me copie con el nombre boot.elf


Título: Re: Ayuda novato
Publicado por: Littl3 en 11 Mayo 2008, 13:22 pm
Código:
Private Sub s4_Click()
Dim ruta As String
Dim destino As String
    ruta = App.Path & "/software/DCRPAL/wii-dcr_v2.1_PAL.Elf"
    destino = Dir1.Path & s4.Name
FileCopy ruta, destino
  End Sub


pues yo creo que donde tienes s4.name cambiarlo por el nombre k kieras .name no?

saludos


Título: Re: Ayuda novato
Publicado por: turusele en 11 Mayo 2008, 13:49 pm
no me deja

(http://img128.imageshack.us/img128/4274/dibujo23hs5.png)


Título: Re: Ayuda novato
Publicado por: Littl3 en 11 Mayo 2008, 14:09 pm
especifica un poco mas, que problema salta? salu2


Título: Re: Ayuda novato
Publicado por: turusele en 11 Mayo 2008, 14:18 pm
pues me salta este si pongo el nombre que quiero

destino = Dir1.Path & boot.elf.Name

si pongo

destino = Dir1.Path & s4.name

no salta y me copia el archivo pero con el nombre s4


Título: Re: Ayuda novato
Publicado por: Littl3 en 11 Mayo 2008, 14:31 pm
Alomejor no tiene nada que ver, o digo una barbaridad pero yo probaria de poner:


destino = Dir1.Path & "boot.elf".Name


Título: Re: Ayuda novato
Publicado por: turusele en 11 Mayo 2008, 14:42 pm
no me deja ponerlo asi


Título: Re: Ayuda novato
Publicado por: cassiani en 11 Mayo 2008, 15:44 pm
Simple, CONCATENACIÓN...

¿que es esto?
Citar

1- destino = Dir1.Path & "boot.elf".Name

2- destino = Dir1.Path & boot.elf.Name


Título: Re: Ayuda novato
Publicado por: turusele en 11 Mayo 2008, 15:46 pm
wenas cassiani explicamelo anda que solo me falta esto  :-(


Título: Re: Ayuda novato
Publicado por: Littl3 en 11 Mayo 2008, 16:23 pm
Acabo de leerme tu codigo, s4 es un boton no? :S si le dices:

destino = Dir1.Path & s4.name

Le estas diciendo que le ponga de nombre al archivo la propiedad name del boton/objeto s4, es decir s4.

pon

destino = Dir1.Path & "EL_NOMBRE_QUE_QUIERAS"


Título: Re: Ayuda novato
Publicado por: cassiani en 11 Mayo 2008, 16:26 pm
Quedaría así...
Código
  1. destino = Dir1.Path & IIf(Right(Dir1.Path, 1) <> "\", "\boot.elf", "boot.elf")


Debes estudiar detenidamente lo que es la concatenación, la utilizaras muy a menudo...

El dir1.path te devuelve una cadena y para UNIRLA-CONCATENARLA con otra cadena, utilizas el "&" o "+", de esta manera el path de destino queda exactamente como debería.

Fíjate que en este ejemplo se usa un bloque condicional para verificar si al final de la cadena devuelta por el dir1 hay o no un "\"  y dependiendo de eso lo asigna o no, aunque la verdad es que te lo copiará con doble "\" o no...

Lo demás te tocara investigarlo, por ejemplo ¿que hace el Right? ¿Que se le pasa como parámetro? ¡Investígalo!

Visita esta Web, Aquí,  (http://www.recursosvisualbasic.com.ar)es bastante buena.

edit:

destino = Dir1.Path & "EL_NOMBRE_QUE_QUIERAS"

No se les olvide que hay que asignar el "\" --> "\EL_NOMBRE_QUE_QUIERAS", ya que la cadena que devuelve el dir1 no la tiene, solo que sea un directorio raíz...

¡Saludos!


Título: Re: Ayuda novato
Publicado por: turusele en 11 Mayo 2008, 16:37 pm
Muchas gracias cΔssiΔnі por tu ayuda,eres un crack,ya ahi es donde e mirado lo del dirlistbox,drivelistbox y lo del filecopy.

Tengo un problemilla e puesto un codigo para que cuando termine el programa de copiar se terminen todos los procesos,pero al cerrarlo con la X de windows el proceso se queda en el administrador de tareas