Ver Mensaje Individual
  #1  
Antiguo 12-08-2014
mordaz mordaz is offline
Miembro
 
Registrado: mar 2008
Posts: 32
Reputación: 0
mordaz Va por buen camino
Enviar BSTR como parámetro de funcion

Buenos dias,

Estoy utilizando un Control Active X en C++ Builder 6 y estoy tratando de usar una función que recibe como parámetro un puntero BSTR*, pero al ejecutar la función me marca error de memoria.

En concreto la función que deseo utilizar es la siguiente:

Código Delphi [-]
  TOLEBOOL        __fastcall GetUserTmpExStr(long dwMachineNumber/*[in]*/, 
                                             BSTR dwEnrollNumber/*[in]*/, long dwFingerIndex/*[in]*/, 
                                             long* Flag/*[out]*/, BSTR* TmpData/*[out]*/, 
                                             long* TmpLength/*[out]*/);

Y la estoy empleando de esta manera:

Código Delphi [-]
void __fastcall TForm1::CZKEM1EnrollFingerEx(TObject *Sender,
      BSTR EnrollNumber, long FingerIndex, long ActionResult,
      long TemplateLength)
{
  if (ActionResult==0)
  {
     long TLength;
     long flag;
     BSTR Tempdata;

     if (CZKEM1->GetUserTmpExStr(CZKEM1->MachineNumber,EnrollNumber,FingerIndex,&flag,&Tempdata,&TLength))
     {
     }
  }
}

Todos los parametros de entrada los recibe de la propia función y están bien inicializados, el problema es con los 3 ultimos parámetros de salida.

Agradezco su ayuda.
Responder Con Cita