Foro de elhacker.net

Programación => Programación Visual Basic => Mensaje iniciado por: sircam666 en 15 Julio 2009, 04:46 am



Título: Ayuda creacion de apliacion, envio de archivos atravez de winsock
Publicado por: sircam666 en 15 Julio 2009, 04:46 am
saludos

gracias a todos los que ayudaron a solucionar mis anteriores dudas, porque aqui tengo otra pregunta jeje
buenoa ahora estoy creando una aplicacion para compartir archivos con mis amigos ( quien sabe en un futuro sea un producto famoso)
la idea principal es el envio de archivos atravez de winsock (CSocketPLus) y pues use un codigo que envia un atraves del winsock 8kb a la vez
y pues conseguia una buena "velocidad de transefencia" entre los dos pcs de prueba, pero ahora quisiera aumentar la velocidad, y lo que se me ocurre es partir el archivo por la mitad y que ud soquet envie la primera mitad y el otro la otra jeje,
entonces quisiera saber como, lograr que digamos el archivo pesa 100 kb, entonces el primer soquet lea y envie los 50 primeros y al tiempo el otro lea y envie los 50 finales
y a su vez el server los reciva y una
Gracias


Título: Re: Ayuda creacion de apliacion, envio de archivos atravez de winsock
Publicado por: BlackZeroX en 15 Julio 2009, 06:47 am
Puedes obtar por...ˇ!

Para dividir una cadena cual sea
Código
  1.    split()
  2.  

Aplicando función Seek():
Código
  1.    Seek NFile, PosByte+1
  2.    Datos=space(NunmberOfBytes)
  3.    Get NFile,, Datos
  4.  

Sin  la Función Seek()
Código
  1.    Datos=space(NunmberOfBytes)
  2.    Get NFile, PosByte+1, Datos
  3.  

Aun así revisa la Documentación BASICA de Basic, que lo que pides no tiene mucho caso, ya que con Seek() puede posicionarte a un X byte de X Archivo  o de igual forma con Get, y si quieres otros metodos con las APISˇ!...

Código
  1. Public Declare Function CreateFile Lib "kernel32" Alias "CreateFileA" (ByVal lpFileName As String, ByVal dwDesiredAccess As Long, ByVal dwShareMode As Long, lpSecurityAttributes As Any, ByVal dwCreationDisposition As Long, ByVal dwFlagsAndAttributes As Long, ByVal hTemplateFile As Long) As Long
  2. Public Declare Function ReadFile Lib "kernel32" (ByVal hFile As Long, lpBuffer As Any, ByVal nNumberOfBytesToRead As Long, lpNumberOfBytesRead As Long, lpOverlapped As Any) As Long
  3. Public Declare Function WriteFile Lib "kernel32" (ByVal hFile As Long, lpBuffer As Any, ByVal nNumberOfBytesToWrite As Long, lpNumberOfBytesWritten As Long, lpOverlapped As Any) As Long
  4. Public Declare Function SetFilePointer Lib "kernel32" (ByVal hFile As Long, ByVal lDistanceToMove As Long, lpDistanceToMoveHigh As Long, ByVal dwMoveMethod As Long) As Long
  5. Public Declare Function CloseHandle Lib "kernel32" (ByVal hObject As Long) As Long
  6.  

Dulces Lunas