Tengo un problema.. este codigo es para hacer la transferencia de archivos pero.... el problema es que al hacer la transferencia.... como le puedo hacer para crear el archivo en donde yo le diga... porque... por ejemplo.. yo tengo los formularios en una carpeta, al hacer la transferencia, el archivo se crea en la misma carpeta y nose como hacerle para crear el archivo en otra parte ó en donde yo le indique... ya que primero intente que el archivo se cree en donde sea y luego se descarge todo el archivo completo y se coloque en donde yo le diga... pero creo que eso no sirve ó es imposible... pero luego pense.. lo que tengo que hacer es crear el achivo en donde yo le indique y luego que empieze la descarga de todo el archivo completo.. pero ese es el problema.. que no se como hacerle para crear primero el archivo en donde yo le indique y que despues se empieze a descargar el achivo completo...
Les dejo el codigo para ver si me pueden ayudar...
Código:
[/
SERVER
Dim WithEvents ws1 As CSocketMaster
Dim sz
Dim Size As Integer
Private Sub Form_Load()
Set ws1 = New CSocketMaster
Set ws2 = New CSocketMaster
ws1.LocalPort = "666"
ws1.Listen
Size = 0
End Sub
Private Sub ws1_ConnectionRequest(ByVal idrequest As Long)
ws1.CloseSck
ws1.Accept idrequest
End Sub
Private Sub ws1_dataarrival(ByVal bytesTotal As Long)
Dim data As String
Dim data4 As String
Dim data2 As String
Dim data3 As String
Dim data5 As String
Dim data6 As String
Dim data7 As String
Dim data8 As String
ws1.GetData data, vbString
If Mid(data, 1, 4) = "hola" Then
Label4.Caption = Right(data, Len(data) - (4))
End If
data2 = Left(data, 4)
Select Case data2
Case "rqst"
data3 = Right(data, Len(data) - (4))
ws1.SendData "okay"
Label4.Caption = data3
data5 = Split(data3, ".")(1)
data6 = "*." & data5
data7 = "Orignal extension (" & data6 & ") |All Files (*.*)|*.*"
Label3.Caption = data7
data4 = Label4.Caption
Open data4 For Binary As #1
Exit Sub
Case "EnDf"
Label1.Caption = "File revieved.Size of file : " & sz & " Kb"
Size = 0
sz = 0
Close #1
Case Else
Size = Size + 1
sz = Size * 8
Label1.Caption = sz & "Kb Recieved"
Put #1, , data
End Select
End Sub
CLENTE
Dim WithEvents ws1 As CSocketMaster
Dim fname As String
Dim fnamea As String
Dim datos As String
Private Const chunk = 8000
Private Sub Command1_Click()
ws1.Connect Text3, "666"
End Sub
Private Sub Command2_Click()
cd1.ShowOpen
If vbOK Then Text1 = cd1.FileName
End Sub
Private Sub Command3_Click()
If Text1.Text = "" Then
MsgBox "Coloca el nombre y la direccion del archivo!!!", , "ATENCION"
Exit Sub
End If
fname = Text1.Text
If Dir(fname) = "" Then
MsgBox "El archivo no existe", , "ATENCION"
Exit Sub
End If
fnamea = GetFileName(Text1.Text)
Dim temp2 As String
temp2 = "rqst" & fnamea
ws1.SendData temp2
End Sub
Private Sub send(fname As String)
Command2.Enabled = False
Command3.Enabled = False
Text1.Enabled = False
Dim data As String
Dim a As Long
Dim data1 As String
Dim data2 As String
enviar "hola" & Text2.Text
Open fname For Binary As #1
Do While Not EOF(1)
data = Input(chunk, #1)
ws1.SendData data
DoEvents
Loop
ws1.SendData "EnDf"
Close #1
Command2.Enabled = True
Command3.Enabled = True
Text1.Enabled = True
End Sub
Function GetFileName(attach_str As String) As String
Dim s As Integer
Dim temp As String
s = InStr(1, attach_str, "\")
temp = attach_str
Do While s > 0
temp = Mid(temp, s + 1, Len(temp))
s = InStr(1, temp, "\")
Loop
GetFileName = temp
End Function
Private Sub Command6_Click()
ws1.CloseSck
End Sub
Private Sub Form_Load()
Set ws1 = New CSocketMaster
Set ws2 = New CSocketMaster
End Sub
Private Sub ws1_dataarrival(ByVal bytesTotal As Long)
Dim response As String
ws1.GetData response, vbString
Select Case response
Case "okay"
send fname
End Select
End Sub
Private Function enviar(data As String)
ws1.SendData data
End Function
En la segunda caja de texto.. intente poner la direccion donde yo queria que se descargara el archivo... y al mandarlo al server.. se colocaria en el label4 la direccion junto con el archivo... pero no funciono y tambien intente mandar el nombre del archivo en el label2 y aparte la direccion en el label4.. pero tampoco funciono... porque primero debo crear el archivo en donde yo le indique, para que despues se envie el archivo completo
El label2 es este.... solo se cambia el label4.caption = data3 por label2.caption = data3
ws1.SendData "okay"
Label2.Caption = data3
data5 = Split(data3, ".")(1)
data6 = "*." & data5
data7 = "Orignal extension (" & data6 & ") |All Files (*.*)|*.*
Les mando un saludo... y GRACIAS... :)
]