Bonjour,

J'ai un soucis que je n'arrive pas à comprendre dans le cast d'un variant contenant un entier long vers un type "long"
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
       DataTypeEnum nDataType = (DataTypeEnum)(long) FieldsPtr->GetItem("DATA_TYPE")->Value;
       _variant_t vtLong = FieldsPtr->GetItem("CHARACTER_MAXIMUM_LENGTH")->Value;
       long iLongueur = 0;
       if(vtLong.vt != VT_NULL)
           iLongueur = (long)vtLong;
Comme vous le voyez, je travaille avec une base de données et ADO comme interface !!
Ce code marche avec Sql Server mais avec oracle par ex, il y a erreur lors du "iLongueur = (long)vtLong", cela est capturé avec un try...catch... plus exactement lorsque vtLong est une grande valeur car nDataType = adBinary (le type binaire en base de données).
Je ne sais si vous avez déja rencontré un tel cas, que faire