Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1362 connectés 

  FORUM HardWare.fr
  Programmation
  VB/VBA/VBS

  [VB6]-localization de mon application

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

[VB6]-localization de mon application

n°1383245
sephy77
Posté le 07-06-2006 à 21:50:10  profilanswer
 

Bonjour,
 
Je développe une application en VB6, et mon windows est configuré dans les paramètres régionaux à l'anglaise. C'est à dire que pour séparer les décimales de la partie entière il y a un point. Mais le problème c'est que mon application est destinée à des gens qui peuvent avoir leur Windows configuré comme le mien ou avec comme séparateur des décimales la virgule.
Et mon application plante lorsque l'ordinateur est dans le second cas.
 
Quelqu'un sait il comment dire au compilateur ou à l'application que l'on veut travailler à la manière anglaise ?
 
Merci

mood
Publicité
Posté le 07-06-2006 à 21:50:10  profilanswer
 

n°1383265
Harkonnen
Modérateur
Un modo pour les bannir tous
Posté le 07-06-2006 à 22:05:39  profilanswer
 

le mieux est de récupérer les paramètres régionaux de la machine destinée à recevoir l'application, et à adapter ton soft en conséquence. regarde du coté de GetLocaleInfo()
http://msdn.microsoft.com/library/ [...] s_34rz.asp


---------------
J'ai un string dans l'array (Paris Hilton)
n°1383305
sephy77
Posté le 07-06-2006 à 22:48:32  profilanswer
 

J'ai trouvé ceci dans setlocalinfo:LOCALE_SDECIMAL
 
Mais je ne sais pas comment ça marche. Ca peut forcer la machine utilisatrice à travailler avec des points et non des virgules ?
 
Je débute en VB :(

n°1383328
Harkonnen
Modérateur
Un modo pour les bannir tous
Posté le 07-06-2006 à 23:06:14  profilanswer
 

ben c'est tout con :  
- d'abord, tu récupères l'identifiant de l'info locale de l'utilisateur avec GetUserDefaultLCID()
- puis tu transmets cet identifiant en paramètre de GetLocaleInfo, en spéficiant effectivement que tu veux récupérer le symbole décimal (LOCALE_SDECIMAL)
- tu stockes ce symbole dans une variable (il est placé par défaut dans le buffer que tu fournis en 3eme paramètre de GetLocaleInfo dans une variable de type String, pour le remettre en place à la fin de ton programme (pour ne pas écraser les paramètres régionaux déjà mis en place)
- puis tu forces le séparateur décimal comme tu le souhaites, via la fonction SetLocaleInfo()
- tu fais tes manips
- tu restaures l'ancien séparateur décimal, toujours via SetLocaleInfo
 
t'as un exemple ici :
http://vb.developpez.com/faq/?page [...] _regionaux


---------------
J'ai un string dans l'array (Paris Hilton)
n°1383344
sephy77
Posté le 07-06-2006 à 23:39:41  profilanswer
 

Merci beaucoup !!!
 
J'ai réussi à détecter le paramètre des décimales (pas dur j'ia recopié le code), mais pourrais tu être un peu plus explicite sur la fonction SetLocalInfo. J'ai compris son but mais je n'ai jamais utilisé d'API Windows...Donc niveau syntaxe exacte je ne suis pas doué.
 
Encore Merci


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  VB/VBA/VBS

  [VB6]-localization de mon application

 

Sujets relatifs
[VB6] Afficher les travaux d'un client sélectionné dans une datalistExecution d'une application externe
[VB6] Debug & Tracking "erreur automation"[VB6] Gestion dévénements liés au déplacement d'une shape
[VB6] Code 3343 - "Format de base de données non reconnu"[VB6] Arrondi tout seul ?!
Exporter de vb6 vers accessajouter une fenetre à une application win32 console ?
faire une application en reseau 
Plus de sujets relatifs à : [VB6]-localization de mon application


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR