Ajouter un commentaire

K-lo

Dsl autant pour moi
DBPARAMS params;
(en fait j'ai repris 1 exemple de MS et ça jlé pas modifié)
:oops:

Sinon j'ai réglé mon erreur en faisant comme ceci :

typedef struct  tagParamADef{

    char nomValeur[100];
    char valeur[100];

}PARAMADEF;

PARAMADEF p1;

strcpy(p1.nomValeur, "nomVal1"); /*strcpy(p1.nomValeur, varNomVal1.c_str()); dans l'intérêt ou on dépasse pas la mémoire alloué*/
strcpy(p1.valeur, "valeur1"); /*strcpy(p1.valeur, varVal.c_str());*/


for (int i=0 ; i<=1; i++){
     acDBBinding[i].obLength = 0;
     acDBBinding[i].obStatus = 0;
     acDBBinding[i].pObject = NULL;
     acDBBinding[i].pTypeInfo = NULL;
     acDBBinding[i].pBindExt = NULL;
     acDBBinding[i].dwPart = DBPART_VALUE;
     acDBBinding[i].dwMemOwner = DBMEMOWNER_CLIENTOWNED;
     acDBBinding[i].dwFlags = 0;
     acDBBinding[i].bScale = 0;
} 

   
acDBBinding[0].iOrdinal = 1;
acDBBinding[0].obValue = offsetof(PARAMADEF, nomValeur);
acDBBinding[0].eParamIO = DBPARAMIO_INPUT;
acDBBinding[0].cbMaxLen= 100;
acDBBinding[0].wType = DBTYPE_STR;
acDBBinding[0].bPrecision = 0; 

acDBBinding[1].iOrdinal = 2;
acDBBinding[1].obValue = offsetof(PARAMADEF, valeur);
acDBBinding[1].eParamIO = DBPARAMIO_INPUT;
acDBBinding[1].cbMaxLen= 100;
acDBBinding[1].wType = DBTYPE_STR;
acDBBinding[1].bPrecision = 0; 


params.pData = &p1;
params.cParamSets = 1;
params.hAccessor = hAccessor;
cNumRows=0;

if( FAILED( hr = pICommandText->Execute( NULL,
      IID_IRowset,
      &params,
      &cNumRows,
      (IUnknown **)&pIRowset ) )
      ){
         cerr<<"Echec lors de l'execution de la procedure "<<endl;
         return 1;
} 

Enfin c'est relatif de dire que j'ai réglé mon erreur car même si ça s'inscrit bien dans ma base (et que j'ai fait moins de faute à la recopie sur le topic) ça semble pas très beau ?

Filtered HTML

Plain text

CAPTCHA
Cette question permet de vérifier que vous n'êtes pas un robot spammeur :-)
 DDD   V     V  N   N  BBBB    QQQ   
D D V V NN N B B Q Q
D D V V N N N BBBB Q Q
D D V V N NN B B Q QQ
DDD V N N BBBB QQQQ
Q