@ŞCØRPIØN-X3@
Es cierto pero no es cierto, en primera si estuvieras trabajando directamente con las apis podrias cambiar los buffers, y en segunda por que ese buffer ya esta administrado ( en el OCX ) en otras palabras yo puedo mandar esto sin problemas!¡.
Este código ya te lo había dado y es lo mismo que haces tu solo que sin un do loop que es innecesario,
const sfile as string = "C:\Archivo.txt"
Dim bBuff() As byte ' // usamos byte por que con string nos consumira el doble de memoria.
Dim ff As Integer
if (dir(sfile,vbarchive)<>"") then
ff = FreeFile
Open (sfile) For Binary As ff
if ( LOF(ff) > 0 ) then
redim bBuff( 0 to (LOF(ff)-1) ) ' // con una string seria sBuff=space(LOF(ff)) sin el "-1"
Get ff, , bBuff
end if
Close ff
Form1.Winsock1.SendData bBuff
end if
Si traduces lo que te he dicho aqui podras hacerlo facilmente...
En el servidor en el DataRequest vendra a ser esto mas o menos asi:
if not (bCmd1 and bCmd2) then
bCmd1 = ("comando1" = left$(vData,8) and bCmd2 = false)
bCmd2 = ("comando2" = left$(vData,8) and bCmd1 = false)
elseif bCmd1 then
'// To lo que se resiva ahora sera del comando1
elseif bCmd2 then
'// To lo que se resiva ahora sera del comando2
else
'// comando Erroneo
end if
Igual es solo una idea no esta completo, Deberias depurar tu codigo y quitar ese Do Loop y armar el buffer ya que no hace nada importante, aun que quisas querias mandar el archivo por paquetes de 1024b, entonces hay le falto meter dentro la instruccion del winsock, pero si no es eso, entonces nesesitas limpiar la variable del servidor, es decir pueden ser mil y un cosas.
Dulces Lunas!¡.
.