.
Tengo un par de preguntas sobre este tema. A ver, la función reallocMem, ¿la usas para convertir los datos de Long a Integer (osea, de 8 bytes de tamaño a 4)?
long = 4 bytes
integer = 2 bytes
reallocMem solo invoca una redimencion del bloque de memoria es decir hace lo mismo que realloc() de C
¿Para qué sirve exactamente releaseMem?
libera el bloque de memoria. es como free() de C.
¿Por qué sumas +3 a la dirección de memoria editable del SafeArray?
Se reservaron 8 bytes editables
allocMem(8).
Entonces
getMemData nos retorna el inicio de estos 8 bytes que podemos editar libremente.
00000000
solo me muevo 3 bytes y Pusheo el numero 10 con putmem4() es decir de longitud 4
es decir en estos bytes
000
00000
Y la función reallocMem, ¿no debería ser así?
Perdon en lugar de
If (lSize = &H0) Then era
If not (lSize = &H0) Then... me falto not...
P.D.: Aqui hay otra forma... con ejemplo a una creacion de String de vb6 con su creacion seteo y liberacion
aqui.
Nota: Estos metodos al parecer son mas recomendables para Malware que para un proyecto profesional... aun nunca esta demas meterle algo dificil para que te llamen a solucionar a ti un problema xP... jejejeje.
Dulces Lunas!¡.