estoy usando las funciones que vienen internas en vb
estoy con putmem1:
Código
Private Declare Sub PutMem1 Lib "msvbvm60" (ByVal Addr As Long, ByVal NewVal As Byte)
pues estaba haciendo unas pruebas usando copymemory y se me ocurrio esa funcion con cadenas pero noce si eso es posible ya que me da error este codigo:
Código
bueno me lanza error de desbordamiento y creo que es porque en el segundo parametro necesito escribir un valor de un byte y estoy intentando escribir 4 bytes y no encuntro la forma correcta de hacer lo que quiero
Dim CADENA As String Dim dirCAD As Long Dim Valor As String CADENA = "ABCDEFGH" Valor = "Z" dirCAD = StrPtr(CADENA) PutMem1 dirCAD + 1, StrPtr(Valor)
practicamente lo que quiero es insertar la "Z" en el lugar donde esta "B"
con copymemory se hace facil:
y lo logro hacer pero se me ocurrio usar esa funcion o noce si esa funcion solamente trabaja con numero ya que con valores numericos ya lo hice y funciono y queria usarla con cadenas
Código
CopyMemory dirCAD + 2, StrPtr(Valor), 1
e probado pasando como segundo parametro el valor propio ( que eso es lo que pide el segundo parametro no? , no el puntero al valor) asi:
Código:
PutMem1 dirCAD + 1, Valor ' valor = "Z"
y tambien pense que era porque necesitaa dos bytes ( "Z" + "\0" )
y use putmem2 pero tampoco
bueno en si como se hace correctamente? o definitivamente esas funciones no trabajan con cadenas ?
gracias