Bonsoir,

Petite question nocturne....

Je fais un switch sur des AnsiString avec l'astuce du AnsiIndexStr, décrite par ailleurs ici:

http://c.developpez.com/faq/bcb/?pag...itchansistring


Tout est marche pour le mieux, j'ai d'ailleurs retesté dans un précédant projet codé sur la même machine mais dans le projet en cours, impossible d'utiliser ce AnsiIndexStr...

Qq lignes de code :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
 
AnsiString ListeFixe[5] = {"ID", "FAM", "SFAM", "NOM", "UCOT"};
String NomFourn;
for (int i = 0; i < frmMercu->pListChamp->Count; i ++)
{
NomFourn = frmMercu->pListChamp->Strings[i].SubString( (frmMercu->pListChamp->Strings[i].AnsiPos("=") + 1), frmMercu->pListChamp->Strings[i].Length() );
        switch (AnsiIndexStr(NomFourn, &ListeFixe[0], 5))
        {
        case 0:  //ID
 
        break;
        case 1: //FAM
 
        break;
        case 2: //SFAM
 
        break;
        case 3: //NOM
 
        break;
        case 4: //UCOT
 
        break;
        default:
        ShowMessage("ok");
        break;
        }
}
J'ai bien inclus StrUtils.hpp et le tout compile correctement mais plante a l'execution.
En ayant fait qq test, il semble que ce soit l'AnsiIndexStr qui bloque.

J'espère, quitte a être ridicule, avoir oublié quelquechose de simplissime quelquepart plutôt que de tomber sur un souci mystérieux, comme le coup de la référence aux composants DBADO qui sautent a chaque ouverture de l'EDI :

http://www.developpez.net/forums/viewtopic.php?t=470191


Merci d'avance pour vos lumières...
@ +