Primero de todo muchas gracias por vuestra ayuda y disculpar por mis errores al hacer medio siglo que no programo con visual c++ 6. Estoy haciendo una dll desde visual c++ 6 y tengo una funcion que me esta matando. Esta función tiene como parámetro de entrada le llegará un codigo tipo "@x123456x@", hará una busqueda en la bbdd y quiero que me retorne los campos que tenga la tabla. Les muestro el siguiente código: (de momento estoy probando con un codigo de entrada tipo 1,2,3.. y que retorne-->arandelas de metrica 4)
char* _stdcall obtener datos(char idcode)
{
//aux_id = idcode;
_RecordsetPtr Rs(__uuidof(Recordset));
//se le asocia la conexión
Rs->PutRefActiveConnection(pAdoCone);
_bstr_t bstrSql;
bstrSql = "Select nombre from articulos_especiales where codigo = " + idcode;
try{
Rs->Open(bstrSql,vtMissing,adOpenForwardOnly,adLockReadOnly,adCmdText);
while(!Rs->adoEOF) //mientras no se fin de archivo...
{
strApe = (char*) (_bstr_t) Rs->Fields->GetItem("nombre")->Value;
return (strApe);
Rs->MoveNext();
}
//cierro y libero el recordset
Rs->Close();
Rs.Release();
//return 1;
return (strApe);
}
catch (...)
{
// ver_com_error(ce);
return error;
}
return error;
}
Muchisimas gracias por todo.