Page 1 of 1

cOMO cONECTAR UNA rUTINA EN C A FWHARBOUR

PostPosted: Mon Nov 15, 2010 4:34 pm
by carloslmm
Hola a todos un saludo primero que nada, tengo la tarea de hacer unas rutinas en C y que me regresen resultados en mis programas de HArbour, alguno de ustede tiene dentro de sus cosas algunos ejemplos o algun manual que me pueda servir para realizar estas tareas, ejemplo dentro de harbour mandar un dato y que me regrese el resultado matematico o de caracteres que necesito, esto para la facturacion electronica.

he revisado los ejemplos de las funciones que vienen en fwh, pero al compilar me dan errores, etc.

Gracias y Saludos a Todos

Carlos I De La Rosa
carloslmm@hotmail.com

Re: cOMO cONECTAR UNA rUTINA EN C A FWHARBOUR

PostPosted: Mon Nov 15, 2010 11:22 pm
by carlos vargas
las funciones definidas en el sistema extendido de harbour son muchas, las cuales nos sirven para recuperar datos hb_parXXX( nNumPar )
y otras para regesar datos hb_retXXX( valor )

ejemplo:
hb_parni( 2) /*recupera el valor del segundo parametro de una funcion el cual esperamos que sea de tipo INTEGER*/

hb_parni( 20 ) /* retorna el valor 20 el cual es un INTEGER de C a Harbour*/

Code: Select all  Expand view

procedure main()
  ?pasa1( 10 )  /*retornara 20 */
return


#pragma BEGINDUMP

#include "hbapi.h"
#include "windows.h"

HB_FUNC( PASA1 )
{
  int iNum = hb_parni( 1 )

  hb_retni(  _funcion_c1( iNum ) );
}

int _funcion_c1( int x )
{
   return ( x * 2 );
}

#pragma ENDDUMP

 

Re: cOMO cONECTAR UNA rUTINA EN C A FWHARBOUR

PostPosted: Tue Nov 16, 2010 4:26 pm
by carloslmm
Hola Carlos
Muchas gracias por tu respuesta, todo va de maravillas, solo que me falta algo, para recibir los parametros numericos no hay problema, me sucede que al mandar una cadena de un nombre por ejemplo, no encuentro la forma y me marca error al compilarlo, ya estube revisando el hbapi.h y ahi encontre las diferentes formas de recibir los parametros solo que no localice una que me funcionara, no traigo de momento el error pero lo voy a genrar y a mostrarllo

te agradesco muchisimo tu ayuda

saludos

carlos i. de la rosa
carloslmm@hotmail.com

fwh 9.12 y borland 5.5

Re: cOMO cONECTAR UNA rUTINA EN C A FWHARBOUR

PostPosted: Tue Nov 16, 2010 6:19 pm
by lailton.webmaster
creo que es isso :



func main()

? FwCharSend( " asdasd " )

return

#pragma BEGINDUMP

#include "hbapi.h"

char* _funcChar( char* msg ){
return ( msg );
}

HB_FUNC( FWCHARSEND ){
char* cName = hb_parc( 1 );

cName = (char*) _funcChar( cName );

hb_retc( cName );
}

#pragma ENDDUMP

Re: cOMO cONECTAR UNA rUTINA EN C A FWHARBOUR

PostPosted: Mon Nov 22, 2010 6:14 pm
by carloslmm
Lailton muchas gracias por tu respuesta, lo voy a checar y les comento si ya quedo
Muchas gracias a los dos por su gran ayuda

Saludos y a sus Ordenes

carlos I. De La Rosa
carloslmm@hotmail.com