SoloCodigo
		Programación General => C/C++ => Visual C++ => Mensaje iniciado por: 1cacalvo en Lunes 17 de Diciembre de 2007, 10:07
		
			
			- 
				Estoy realizando una aplicación que desde código nativo C++ se comunica con Java por medio de JNI. 
 
 Lo que necesito es levantar la JVM y lanzar una clase que me crea un panel AWT, el problema que tengo es que necesito que sea Modal, es decir, que mientras este el panel abierto, el usuario no pueda interectuar con mi aplicación...
 
 hVM = ::LoadLibrary( jvmPath_ );
 if (hVM == NULL)
 {
 return;
 }
 
 vm_args_.version = 0x00010002;
 JNI_GETDEFAULTJAVAVMINITARGS initArgsVM = (JNI_GETDEFAULTJAVAVMINITARGS)JNU_GetDefaultArgsVM();
 initArgsVM(&vm_args_);
 
 vm_args_.classpath = "d:/aplib/s211/bin";
 
 // carga dinamicacmente la libreria de java
 JNI_CREATEJAVAVM createVM=  (JNI_CREATEJAVAVM)JNU_FindCreateJavaVM();
 res_ = createVM(&jvm_, (void**)&env_, &vm_args_);
 if (res_ < 0)
 {
 RTS_TRACE0( jni_invoker_id , "Can't create Java VM");
 return;
 }
 
 cls_ = env_->FindClass("DemoPanel");
 //Esta llamada devuelve nulo
 
 env_->GetStaticMethodID(cls_,"main","([Ljava/lang/String;)V");
 
 Un saludo cALvET
 
 PD: SI teneis información sobre JNI a ser posible en castellano me indicais link o me la pasais....