Ver Mensaje Individual
  #1 (permalink)  
Antiguo 08/10/2008, 19:39
johntse
 
Fecha de Ingreso: agosto-2008
Mensajes: 30
Antigüedad: 16 años, 3 meses
Puntos: 0
Pregunta Alguien me explica este codigo? CopyMemory

Hola, tengo este codigo:

Dim ip(0 To 3) As Byte
Dim var As String

Call CopyMemory(ip(0), dwlocaladdr, Len(dwlocaladdr))

var = ip(0) & "." & ip(1) & "." & ip(2) & "." & ip(3)

dwlocaladdr es una variable Long miembro de una estructura MIB_TCPROW que contiene una direccion IP, y ese codigo convierte el contenido de esa variable a un formato legible (xxx.xxx.xxx.xxx).

1.- Por qué ip se declara como un array Byte de 4 bytes si se podria declarar como Long que tambien es de 4 bytes, pero si la declaro como Long, no funciona y no se por qué.

2.- Cuando ejecuto CopyMemory y copio dwlocaladdr a ip(0), los otros indices de ip (ip(1), ip(2), ip(3)) tambien pasan a contener valores, cosa que tampoco entiendo, ya que la funcion copia sólo a ip(0).

3.- Por qué despues de ejecutar CopyMemory, cada indice de ip pasa a tener una parte de la direccion IP, si el valor de dwlocaladdr es un numero totalmente diferente?

Alguna ayuda?

Saludos.