The answer is "Yes, but no"!
o You can use the dlls as they are written.
o You will have to write one or more "wrapper" dll's that meet JNI calling-sequence requirements, and bridge to the existing dlls.
General procedure is
1. Define some nice java native methods that you would like to call to get the job done. (In other words, write the anaolg to the C/C++ functions, but make them nice java methods.)
2. Run javah on the results. This will generate an "h" file for the wrapper dll.
3. Write the wrapper dll to invoke the C functions, compile it, and link it.
Yes you can .
But some modification need to be done to your native source code in order to comunicate with java.
So, you must write some native methods into your java code first ( native methods are just like the other java methods except they have the "native" type in front of the metho's declaration ).
After you declare those methods you must implement them into your native source code ( C++) .
Then these native function writen in C++ can interact very well with the other methods in the DLL that you have.
Good luck !