FiveTech Support Forums

FiveWin / Harbour / xBase community
Board index FiveLinux / FiveDroid (Android) Variable publica gcc
Posts: 170
Joined: Sat Aug 07, 2010 11:36 PM
Variable publica gcc
Posted: Thu Aug 16, 2012 04:20 PM

Consulta:

Necesito inicializar una variable publica en C al iniciar mi aplicativo y cargarla con un valor, después seguir normalmente mi aplicativo y cuando la necesite pasarla a las rutinas de c que tengo en el sistema.

JNIEnv* env = create_vm()

la variable "env" es la que quiero que sea publica, así la maquina virtual de Java siempre esta abierto y la utilizo cuando quiera, solo voy cambiando las clases a utilizar.

¿Es factible hacer esto y como?

Posts: 44158
Joined: Thu Oct 06, 2005 05:47 PM
Re: Variable publica gcc
Posted: Thu Aug 16, 2012 06:06 PM
Jorge,

Puedes hacerlo sin problema:

Code (fw): Select all Collapse
#pragma BEGINDUMP
           
            #include <stdio.h>
           #include <jni.h>
            #include "fasaJpos.c"
           
            JNIEnv* env = NULL;

            HB_FUNC( FASAPRINT )
            {
 
                                   jclass clase;
                                   jobject obj;
                                   int out;
                                   int i;
                                   char linea[80];
 
                        //esta comprobacion tienes que hacerla siempre antes de usar env
                                   if( env == NULL )
                                      env = create_vm();

                                  continua tu codigo...

opcionalmente puedes declararla como static si quieres no hacerla accesible a otros modulos en C:

static JNIEnv* env = NULL;
regards, saludos

Antonio Linares
www.fivetechsoft.com

Continue the discussion