Problemas con programas vb
"RtlMoveMemory"?(¿Destino?¿Como?Cualquiera,?Origen?Como?Cualquiera,?PorVal?Longitud?Como?
Long)?As?Boolean?' Definir la función API para copia de datos en memoria
Dim?bytData()?As?Byte?' Definir la matriz de bytes dinámica
¿Privada? Sub? Command1_Click()
Winsock1.RemoteHost?=?Text1.Text?'Establecer puerto remoto de winsock
Dim?arr()?As?Byte?'Definir matriz dinámica
p>
Dim?i?As?New?PropertyBag?'Define el objeto de la mochila
i.WriteProperty?"image",?Picture1.Picture?'Escribe la imagen en la imagen1 en forma de flujo de bytes en la mochila
ReDim?arr(1?To?LenB(i.Contents))?Inicialice la matriz dinámica, esto no debería ser necesario
arr?=?i .Contents?' Cargue los datos de bytes de la imagen en la matriz arr
If?UBound(arr)?lt;=?8192?Then?'Si el archivo a enviar es más pequeño que el bloque de datos tamaño, envíalo directamente
Winsock1.SendData?arr?'Enviar datos
¿Salir?Sub?'Salir del proceso
Fin?Si
¿Fin? Sub
Privado?Sub?Form_Load()
Con?Winsock1'Mensaje para enviar y recibir
.Protocol?=?sckUDPProtocol' Utilice el protocolo UDP
p>.RemotePort?=?9001'Puerto al que conectarse
.
.LocalPort?=?9001
.Bind?'Enlazar al puerto local
¿Fin?Con
Fin?Sub
¿Privado?Sub?Form_Unload(Cancelar?As?Integer) p>
¿Borrar ?bytData?'Eliminar matriz
End?Sub
Private?Sub?Winsock1_DataArrival(ByVal?bytesTotal?As?Long)'matriz de recepción de winsock
Dim?arr()?As?Byte'Definir una matriz dinámica
ReDim?arr(1?To?bytesTotal)'Inicializar una matriz dinámica, esto no debería ser necesario
Winsock1.GetData?arr ?'Cargar los datos recibidos en una matriz de bytes dinámica
ReDim?Preserve?bytData(1?To?bytesTotal)?'Inicializar la matriz
Winsock1.GetData?arr?Initialization Array
CopyMemory?bytD
ata(1),?arr(0),?bytesTotal?'Copiar datos de la memoria
Dim?i?As?New?PropertyBag?'Definir un objeto de mochila
i . Contents?=?bytData?'Cargar la matriz de flujo de bytes en el objeto de mochila
Picture2.Picture?=?i.ReadProperty("image")?Restaurar la imagen.
¿Fin?