Foros del Web » Programación para mayores de 30 ;) » Programación General » Visual Basic clásico »

Registro de windows

Estas en el tema de Registro de windows en el foro de Visual Basic clásico en Foros del Web. Salu2. Mi problema es el siguiente: Al leer el valor de un clave de registro y meterla en una variable string el caracter final de ...
  #1 (permalink)  
Antiguo 23/03/2008, 10:40
Avatar de sagutxo  
Fecha de Ingreso: octubre-2006
Mensajes: 78
Antigüedad: 17 años, 6 meses
Puntos: 0
Sonrisa Registro de windows

Salu2. Mi problema es el siguiente:

Al leer el valor de un clave de registro y meterla en una variable string el caracter final de la cadena es un cuadrado, que supongo que será un caracter null o no imprimible. No existe en el valor leyendolo desde el registro de win. Este problema hace que mis comparaciones sean fallidas. He optado por solucionarlo eliminando el último caracter de las cadenas y funciona, pero no estoy al 100% seguro de que eso suceda con todos los windows.
¿Se les ocurre una solucion ?

Hay una variable registro que hace referencia al modulo clase en el que está esta función.

Código:
Public Function ConsultarValor(clave As Long, Nombre_clave As String, Nombre_valor As String)
 
      Dim Handle_clave As Long
      Dim Valor As Variant
 
      Dim ret As Long
 
      ret = RegOpenKeyEx(clave, Nombre_clave, 0, KEY_ALL_ACCESS, Handle_clave)
         
      ret = QueryValueEx(Handle_clave, Nombre_valor, Valor)
      ' REtorna el valor del registro a la función
      ConsultarValor = Valor
      'Cierra la clave abierta del registro
      RegCloseKey (Handle_clave)
End Function
Muchas gracias.
  #2 (permalink)  
Antiguo 23/03/2008, 11:35
Avatar de sagutxo  
Fecha de Ingreso: octubre-2006
Mensajes: 78
Antigüedad: 17 años, 6 meses
Puntos: 0
Re: Registro de windows

Salu2. Solucionado, el valor ascii del último caracter es 0 con ese caracter.

Gracias.
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 18:14.