Visual Basic - Copiar Archivo Abierto

Life is soft - evento anual de software empresarial
 
Vista:

Copiar Archivo Abierto

Publicado por Gabriel (30 intervenciones) el 17/04/2008 01:03:14
Como copiar un archivo que este abierto ?
Porque estoy tratando con el Filecopy pero como generalmente ese archivo esta abierto lo quiero copiar a otra terminal pero me manda error como le puedo hacer para evitar este error?

Saludos Y Gracias.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Copiar Archivo Abierto

Publicado por Gabriel (30 intervenciones) el 17/04/2008 22:03:24
Ni con batch , ni con una API ni con nada? .Si es asi que mala suerte y pues de cierto modo siento las limitantes del vb.Gracias por contestar a ambos.Saludos Y Gracias.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Una rutina para copiar

Publicado por El profesor (1 intervención) el 17/04/2008 22:30:24
La limitante no es de VB, sino de la instrucción FileCopy. pero aquí les paso el código de un procedimiento que hice, para copiar archivos, se le envía como parámetros el nombre del archivo origen y el archivo destino:

Sub Copia(Origen As String, Destino As String)
Dim TAM As Long, Bufer As String, Leidos As Long
Dim lnTamOrig As Long, lnAcumula As Long
Dim inH1 As Integer, inH2 As Integer

On Local Error GoTo Avisa
lnAcumula = 0
inH1 = FreeFile
Open Origen For Binary As #inH1
TAM = LOF(inH1)
lnTamOrig = TAM
inH2 = FreeFile
Open Destino For Output As #inH2
Close #inH2
Open Destino For Binary As #inH2
While TAM > 0
DoEvents
If TAM > 15000 Then
Leidos = 15000
Else
Leidos = TAM
End If
Bufer = Space(Leidos)
Get #inH1, , Bufer
Put #inH2, , Bufer
TAM = TAM - Leidos
Wend
Salir:
Close inH1
Close inH2
Exit Sub
Avisa:
MsgBox "Error al copiar " & Origen & Chr(13) & "en " & Destino & Chr(13) & "No. de error " & _
Err.Number & ", " & Err.Description, vbCritical, "ERROR"
If Err.Number = 70 Or Err.Number = 75 Then Resume Salir ' Error de Permiso denegado o de Acceso a ruta.
Resume Next
End Sub
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar