theLionHeart
Messages postés5Date d'inscriptionvendredi 13 octobre 2006StatutMembreDernière intervention25 juin 2008
-
25 juin 2008 à 13:44
gillardg
Messages postés3275Date d'inscriptionjeudi 3 avril 2008StatutMembreDernière intervention14 septembre 2014
-
25 juin 2008 à 17:25
Bonjour à tous,
J'ai fait un programme en VB .NET, avec Visual Studio 2003. J'ai également créé un setup pour installer le programme sur un autre PC.
J'ai testé ce setup sur une nouvelle installation de Windows.
En lancant le programme, il s'arrête en mettant ce message d'erreur:
Cast from string "101.63" to type 'Single' is not valid (101.63 est une valeur (format texte) contenue dans une base de données auquel le programme accède).
J'avoue que j'ai un peu de mal à comprendre pourquoi ce programme ne fonctionne pas sur un PC alors qu'il fonctionne très bien sur le PC ou je l'ai créé (même sans passer par Visual Studio, lancer le exe fonctionne parfaitement).
J'ai développé le programme avec une version anglaise de Windows XP et de Visual Studio. Le test se fait sur une version française de Windows XP. Je sais qu'en anglais le séparateur décimal est le point et qu'en français c'est la virgule, mais je pense pas que le soucis soit là... Si oui, comment faire un programme compatible avec les deux standarts ??
Si vous avez des idées ou du vécu, ça m'aiderai beaucoup.
theLionHeart
Messages postés5Date d'inscriptionvendredi 13 octobre 2006StatutMembreDernière intervention25 juin 2008 25 juin 2008 à 15:14
Bon hé bien je double poste ^^
J'ai trouvé un contournement à mon soucis: effectivement le soucis venait bien de la distinction entre la virgule et le point comme séparateurs décimaux. Ce n'est pas au niveau du programme, lui il tourne, mais au niveau de la base de données (et sûrement les accès OLEDB).
En modifiant toutes les données de la base pour remplacer les points par des virgules (pas du tout fastidieux...), le programme fonctionne.
Sauf que je ne veux pas en rester là :-p.
N'y aurait-il pas un moyen, dans le code du programme, au moment de la récupération des données, de paramétrer la connexion pour accepter les points à la place des virgules, sur n'importe quel système ?