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

Configuracion numerica

Estas en el tema de Configuracion numerica en el foro de Visual Basic clásico en Foros del Web. Hola a todos: Alguien sabria decirme como puedo saber (mediante codigo) la configuracion numerica de un ordenador?? Concretamente necesito saber dos cosas: - Caracter utilizado ...
  #1 (permalink)  
Antiguo 17/06/2008, 06:32
 
Fecha de Ingreso: enero-2008
Mensajes: 61
Antigüedad: 16 años, 3 meses
Puntos: 0
Configuracion numerica

Hola a todos:

Alguien sabria decirme como puedo saber (mediante codigo) la configuracion numerica de un ordenador?? Concretamente necesito saber dos cosas:

- Caracter utilizado para separador de miles

- Caracter utilizado para separador de decimales

Mi problema es que uso la funcion FormatNumber, y segun la configuracion regional de cada ordenador, un mismo numero se puede interpretar de distinta manera...

Gracias de antemano,

Agur.
  #2 (permalink)  
Antiguo 17/06/2008, 09:24
Colaborador
 
Fecha de Ingreso: enero-2008
Ubicación: Unas veces aquí, otras veces allí
Mensajes: 1.482
Antigüedad: 16 años, 3 meses
Puntos: 37
Respuesta: Configuracion numerica

Cita:
Iniciado por etxebe Ver Mensaje
Hola a todos:

Alguien sabria decirme como puedo saber (mediante codigo) la configuracion numerica de un ordenador?? Concretamente necesito saber dos cosas:

- Caracter utilizado para separador de miles

- Caracter utilizado para separador de decimales

Mi problema es que uso la funcion FormatNumber, y segun la configuracion regional de cada ordenador, un mismo numero se puede interpretar de distinta manera...

Gracias de antemano,

Agur.

Hola, etxebe

con un par de API's:

Código:
Option Explicit
Private Declare Function GetLocaleInfo Lib "kernel32" Alias "GetLocaleInfoA" (ByVal Locale As Long, ByVal LCType As Long, ByVal lpLCData As String, ByVal cchData As Long) As Long
Private Declare Function GetUserDefaultLCID Lib "kernel32" () As Long

Private Const LOCALE_SMONDECIMALSEP  As Long = &H16  'decimal separator
Private Const LOCALE_SMONTHOUSANDSEP As Long = &H17  'thousand separator


Private Sub Command1_Click()
Dim SepDecimal As String, SepMiles As String
Dim lRet As Long
   
lRet = GetUserDefaultLCID()
SepDecimal = GetInfo(lRet, LOCALE_SMONDECIMALSEP)
SepMiles = GetInfo(lRet, LOCALE_SMONTHOUSANDSEP)
End Sub


Private Function GetInfo(ByVal lLocal As Long, ByVal lTipo As Long) As String
Dim s As String
Dim lRet As Long

lRet = GetLocaleInfo(lLocal, lTipo, s, Len(s))
If lRet > 0 Then
    s = Space$(lRet)
    lRet = GetLocaleInfo(lLocal, lTipo, s, Len(s))
    GetInfo = Left$(s, lRet - 1)
End If
End Function
Agur
  #3 (permalink)  
Antiguo 18/06/2008, 04:03
 
Fecha de Ingreso: enero-2008
Mensajes: 61
Antigüedad: 16 años, 3 meses
Puntos: 0
Respuesta: Configuracion numerica

Muchas gracias, Avellaneda.

Me ha sido de gran ayuda.

Hasta otra,

Agur.
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 01:58.