aspose file tools*
The moose likes Java in General and the fly likes Problem in calling java application into C Big Moose Saloon
  Search | Java FAQ | Recent Topics | Flagged Topics | Hot Topics | Zero Replies
Register / Login


Win a copy of EJB 3 in Action this week in the EJB and other Java EE Technologies forum!
JavaRanch » Java Forums » Java » Java in General
Bookmark "Problem in calling java application into C " Watch "Problem in calling java application into C " New topic
Author

Problem in calling java application into C

Satheesh Thurairajah
Greenhorn

Joined: Aug 20, 2001
Posts: 2
Hi,
i am trying to call a call java application into C code so that it can be run as NT Service. For this I am following the below mentioned way:
JNI_GetDefaultJavaVMInitArgs(&vm_args);
jint res;
/* Append USER_CLASSPATH to the end of default system class path */
sprintf(classpath, "%s%c%s",MY_CLASSPATH, PATH_SEPARATOR, USER_CLASSPATH);
vm_args.classpath = classpath;
/* IMPORTANT: specify vm_args version # if you use JDK1.1.2 and beyond */
vm_args.version = 0x00010001;
res = JNI_CreateJavaVM(&jvm,(void**)&env, &vm_args);
Here when I run this, I getting a null value for the instance value for the jvm instance value.
Could anyone tell me what will cause for the above and what will be the remide for this?
Thanks in advance,
Satheesh
Todd Fisher
Greenhorn

Joined: Aug 21, 2001
Posts: 3
If all you are doing is trying to call a java application
from your C program just try using the
system function, nothing fancy, and pass it your a string
formated just as it would appear at the command prompt...
that is of course if this is what you mean i'm a little
confused by what you are asking.
Satheesh Thurairajah
Greenhorn

Joined: Aug 20, 2001
Posts: 2
Thanks Todd for your reply..
But what I expect is not the one that is included in your reply (sorry if I couldn't explain in detail..)
The problem is not calling the application. As It should be run as NT Service, I want to use it's full features so that it could be controlled through the Service Control Manager (SCM). And at the same time I could pass the signals here and there from C++ to java as well.
For this I am creating an instance of the JVM so that it could be possible to handle the event through the execution of java classes.
In my code, it compiles without any problem, but during runtime, it is not creating an instance to the JVM so that it is crashing.
I think I have detailed my problem.
Thanks again,
Satheesh
 
I agree. Here's the link: http://aspose.com/file-tools
 
subject: Problem in calling java application into C
 
Similar Threads
Invoking JVM through C++ code
Here is how to create process and Image APPName.exe file instead of java or javaw
Calling java from Visual C
problem of C++ Call java with JNI
Undefined reference in JNI