-localization de mon application [VB6] - VB/VBA/VBS - Programmation
Marsh Posté le 07-06-2006 à 22:05:39
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
Marsh Posté le 07-06-2006 à 22:48:32
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
Marsh Posté le 07-06-2006 à 23:06:14
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
Marsh Posté le 07-06-2006 à 23:39:41
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
Marsh Posté le 07-06-2006 à 21:50:10
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