Bonjour,

La mise à jour vers la version 2.24 64 bits continue à poser des problèmes :

Dans mon projet, je suis amené à créer une base de données avec des champs noms et prénoms. Les noms étant stockés en majuscule et la première lettre des prénoms en majuscule et les autres en minuscule (ce qui fait par une fonction spécifique qui fonctionne bien). Jusqu'à présent, la séquence de code suivante (expl pour le nom) fonctionnait sans problème Laz Util étant dans la options du projet et LazUTF8 dans Uses :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
procedure TF_Gene.DB_NaissNomEnftExit(Sender: TObject);
 Var NomEnfant : String   ;
begin
 NomEnfant := Upcase(Utf8ToWinCP(DB_NaissNomEnft.Text)) ;
 DB_NaissNomEnft.text := NomEnfant ;
 DB_NaissPnomEnft.SetFocus ;
end;
 
procedure TF_Gene.DB_NaissNomEnftKeyPress(Sender: TObject; var Key: char);
begin
   if Key = #13 Then  DB_NaissPnomEnft.setFocus ;
end;
par exemple si j'entrais comme nom "estÉve" ( le É étant entré par la touche Alt144) je récupérais dans le champ "NomEnfant" de la base "ESTÉVE". Depuis le passage à la version 2.24 il est impossible de traduire en Ansi les entrées faites dans les contrôles qu'il s'agisse du type TDB_edit ou simplement Ed_Edit et que l'on utilise UTF8ToANSi, UTF8ToSys ou UTF8ToWinCp. Actuellemnt je récupère NomEnfant = $000000000E318CB8^: 'EST'#$C9'VE'
Comment se sortir de ce mauvais pas ?