En el fichero HbRddDbf.h de Harbour, existe la declaraci贸n de la estructura _DBFAREA.
En la versi贸n 8.01 uno de sus 'valores' era declarado as铆:
FHANDLE hDataFile; /* Data file handle */
En la versi贸n 9.01 ese mismo 'valor' es declarado as铆:
PHB_FILE pDataFile; /* Data file handle */
Tengo una funci贸n que tiene este c贸digo:
HB_FUNC( DBFHDL )
{
聽 聽LPDBFAREA pArea = hb_rddGetCurrentWorkAreaPointer();
聽 聽if( pArea )
聽 聽 聽 hb_retni( pArea->hDataFile );
聽 聽else
聽 聽 聽 hb_retni( 0 );
}Para que se pueda compilar con la versi贸n 9.01 que debo cambiar?
Ya ha visto que de entrada ha cambiado su nombre, de hDataFile a pDataFile. Con esto no es suficiente ya que al compilar da un error de:
Error E2342 c:\desarrol\treball\Ampa0903\C\HBFORCE.C 23: Type mismatch in parame
ter 'iNumber' (wanted 'int', got 'void *') in function HB_FUN_DBFHDL
*** 1 errors in Compile ***
Que debo cambiar en ese c贸digo para que pueda compilarlo y evidentemente funcione?
Saludos y gracias
Carlos G.
SOLUCION:
Parece ser que cambiando
hb_retni( pArea->hDataFile );
por
hb_retptr( pArea->pDataFile );
sera suficiente.
De nuevo un Saludo
Carlos G.
Un Saludo
Carlos G.
FiveWin 25.12 + Harbour 3.2.0dev (r2502110321), BCC 7.7 Windows 11 Home