It is with that last stated command prompt entry that I get the exception. The thing is, the vast majority classes in the jar (which is made up of several packages) I do not need in order to run this one class, but I think it's failing with the exception because it's trying to wrap these other classes in the jar that I would rather not have wrapped.
On Mon, May 28, 2012 at 7:10 PM, Andi Vajda <va...@apache.org> wrote: > > On Mon, 28 May 2012, Mark Finkelstein wrote: > > Thank you, the examples work great! I was able to get basic functionality >> going, but when I tried to wrap a different jar file I got the following >> exception: >> >> jcc.cpp.JavaError: java.lang.**ExceptionInInitializerError >> Java stacktrace: >> java.lang.**ExceptionInInitializerError >> Caused by: java.lang.NullPointerException >> at org.micromanager.utils.**ImageUtils.<clinit>(** >> ImageUtils.java:23) >> > > JCC uses Java's reflection API to determine the signatures of methods to > wrap. Thus, it needs to load all classes it processes. > > This particular class has a static initializer that is failing. You need > to look at that static initializer's code and modify it so that plainly > loading the class can work. Currently, something else is needed by this > class at load time that JCC cannot provide. Maybe it's possible to pass > some extra command line arguments, maybe you need to change its code to let > that null pointer pass for the sake of being able to plainly load this > class like JCC is trying to to. > > For example, wrapping AWT classes fails in a similar way and there is a > command line flag to work that around (and it is passed to the JVM by JCC > by default, -Djava.awt.headless=true). > > > There's actually one class that I really want to wrap, it's located in a >> jar file that I have in my classpath. I have also tried using --package >> org.micromanager, since this is the package the class resides in, but it >> seems as if this gets ignored. >> > > Having a class on your classpath is not enough to have it wrapped by JCC. > You need to put its classname onto the JCC command line or pass its jar > file with --jar. > --package is different. It is used to wrap dependent classes found in the > signatures of methods of classes you explicitely asked to have wrapped. > Without --package, these methods would be skipped instead. > > Run the command below to get more details about all of JCC's command line > arguments: > > $ python -m jcc.__main__ > > > Right now the command I'm using is: >> >> C:\Users\avastmatey>python -m jcc.__main__ --find-jvm-dll --package >> java.lang --package java.util --package java.io --jar "C:\Program >> Files\Micro-Manager-1.4\**plugins\Micro-Manager\MMCoreJ.**jar" --jar >> "C:\Program >> Files\Micro-Manager-1.4\**plugins\Micro-Manager\MMJ_.**jar" --classpath >> %CLASSPATH% --python CMMCore3 --version 2.6 --build --compiler msvc >> --install >> >> where MMJ_ is the jar which contains the class I would like to wrap. I >> think that the other classes in this jar are perhaps stopping this from >> happening? I tried to extract this jar, but got a bunch of classes with >> $1.class at the end, which I dont think represent the class I would like >> to >> wrap. >> > > So you are explicitely requesting with via --jar. Good. Thus it must be > wrapped. How do you determine that it's not being wrapped ? > Because of missing methods ? Look at their signatures and be sure that all > classes they mention at least be listed via their package with --package. > > $1.class class names are due to anonymous inner classes in your classes. > This is a normal Java thing, nothing to do with JCC. > > Andi.. > > > >> Many thanks! >> >> Mark. >> >> On Sun, May 27, 2012 at 8:18 PM, Andi Vajda <va...@apache.org> wrote: >> >> >>> On May 27, 2012, at 6:30, Mark Finkelstein <finkel.m...@gmail.com> >>> wrote: >>> >>> That solved it; I worked through and set up everything to work >>>> >>> consistently >>> >>>> with msvc. It now compiles, but I'm having trouble finding any good jcc >>>> examples. I tried the following: >>>> >>> >>> Take a look at PyLucene test cases and examples. >>> >>> import jcc >>>> >>> >>> Not necessary. Only used for building your extension. Especially if you >>> didn't build your extension with --shared mode. >>> >>> import CMMCore3 >>>> >>>> vm=jcc.initVM() >>>> >>> >>> Use CMMCore3.initVM() instead. >>> >>> vm.attachCurrentThread() >>>> >>> >>> Not necessary from main thread. >>> >>> print vm.isCurrentThreadAttached() >>>> >>>> core=CMMCore3.CMMCore() # this is the jcc wrapped class >>>> >>>> >>>> It prints out True, but immediately afterwards gives out the >>>> error: RuntimeError: initVM() must be called first >>>> >>> >>> Because your extension isn't initialized as you didn't call initVM() on >>> it >>> (but on jcc instead). >>> >>> Which leads me to assume that the vm intialization is not global, which >>>> seems contrary to the description? >>>> >>> >>> It is global (there can only be one Java VM instantiated per process) but >>> must be called on your extension, not jcc. >>> >>> Andi.. >>> >>> Again, many thanks for the amazing support! >>>> >>>> Mark. >>>> >>>> On Sun, May 27, 2012 at 1:42 AM, Bill Janssen <jans...@parc.com> wrote: >>>> >>>> Andi Vajda <va...@apache.org> wrote: >>>>> >>>>> >>>>>> On Sat, 26 May 2012, Mark Finkelstein wrote: >>>>>> >>>>>> That solved it; apparently it wasnt using the CLASSPATH variable to >>>>>>> >>>>>> get >>> >>>> this information, but specifying it directly solved this. Hopefully >>>>>>> >>>>>> this >>>>> >>>>>> will be one of the last errors; after pushing forward, I found myself >>>>>>> >>>>>>> C:\MinGW\bin\gcc.exe -mdll -O -Wall -DPYTHON -DJCC_VER="2.13" >>>>>>> -D_java_generics -IX:\Java16/include -IX:\Java16/include/win32 >>>>>>> -Ibuild\_CMMCore2 -IC:\Python26\lib\site-**packages\jcc\sources >>>>>>> -IC:\Python26\include -IC:\Python26\PC -c >>>>>>> build\_CMMCore2\CMMCore2.cpp >>>>>>> >>>>>> -o >>>>> >>>>>> build\temp.win32-2.6\Release\**build\_cmmcore2\cmmcore2.o /EHsc >>>>>>> /D_CRT_SECURE_NO_WARNINGS >>>>>>> gcc: error: /EHsc: No such file or directory >>>>>>> gcc: error: /D_CRT_SECURE_NO_WARNINGS: No such file or directory >>>>>>> error: command 'gcc' failed with exit status 1 >>>>>>> >>>>>>> Perhaps this is more meant for a cygwin installation, but is there a >>>>>>> >>>>>> way to >>>>> >>>>>> make this work for the cmd prompt? >>>>>>> >>>>>> >>>>>> You've configured JCC to work with a Microsoft Visual C++ compiler but >>>>>> you're using gcc via MinGW. I can't help you with that configuration >>>>>> as I don't have it but MinGW has been used with JCC before and someone >>>>>> on this list should be able to help you. >>>>>> >>>>> >>>>> Yes, consistency is important here. Those flags (/EHsc and >>>>> /D_CRT_SECURE_NO_WARNINGS) look like Microsoft compiler directives to >>>>> me, and won't work with GCC. >>>>> >>>>> In case it's of help, this is my build script for mingw and JCC 3.x. >>>>> I haven't tried this recently, but it should still work. >>>>> >>>>> Bill >>>>> >>>>> export JCC_ARGSEP=";" >>>>> export JCC_JDK="$WINSTYLEJAVAHOME" >>>>> export JCC_CFLAGS="-fno-strict-**aliasing;-Wno-write-strings" >>>>> export JCC_LFLAGS="-L${**WINSTYLEJAVAHOME}\\lib;-ljvm" >>>>> export >>>>> >>>>> JCC_INCLUDES="${**WINSTYLEJAVAHOME}\\include;${** >>> WINSTYLEJAVAHOME}\\include\\**win32" >>> >>>> export JCC_JAVAC="${WINSTYLEJAVAHOME}**\\bin\\javac.exe" >>>>> ${python} setup.py build --compiler=mingw32 install >>>>> --single-version-externally-**managed --root /c/ --prefix="${distdir}" >>>>> if [ -f jcc/jcc.lib ]; then >>>>> cp -p jcc/jcc.lib "${sitepackages}/jcc/jcc.lib" >>>>> fi >>>>> # for 3.x compiled with MinGW GCC 4.x and "--shared", we also need two >>>>> # GCC libraries >>>>> if [ -f /mingw/bin/libstdc++-6.dll ]; then >>>>> install -m 555 /mingw/bin/libstdc++-6.dll "${distdir}/bin/" >>>>> echo "copied libstdc++-6.dll" >>>>> fi >>>>> if [ -f /mingw/bin/libgcc_s_dw2-1.dll ]; then >>>>> install -m 555 /mingw/bin/libgcc_s_dw2-1.dll "${distdir}/bin/" >>>>> echo "copied libgcc_s_dw2-1.dll" >>>>> fi >>>>> >>>>> >>>>> >>>>>> You might want to search the list archives, this question has come up >>>>>> before. >>>>>> >>>>>> Andi.. >>>>>> >>>>>> >>>>>>> Also, so many thanks in regards to the help you've given me; I >>>>>>> >>>>>> definitely >>>>> >>>>>> wouldnt have been able to move forward without it. >>>>>>> >>>>>>> On Sat, May 26, 2012 at 6:24 PM, Andi Vajda <va...@apache.org> >>>>>>> wrote: >>>>>>> >>>>>>> >>>>>>>> On May 26, 2012, at 1:30, Mark Finkelstein <finkel.m...@gmail.com> >>>>>>>> >>>>>>> wrote: >>>>> >>>>>> >>>>>>>> Apparently the correct (I think) command is: >>>>>>>>> >>>>>>>>> python -m jcc.__main__ --find-jvm-dll >>>>>>>>> >>>>>>>>> But if I use this I get: >>>>>>>>> >>>>>>>>> C:\Users\avastmatey>python -m jcc.__main__ --find-jvm-dll --jar >>>>>>>>> >>>>>>>> "C:\Program >>>>>>>> >>>>>>>>> Files\Micro-Manager-1.4\**plugins\Micro-Manager\MMCoreJ.**jar" >>>>>>>>> MMCoreJ.jar path = C:\Program >>>>>>>>> Files\Micro-Manager-1.4\**plugins\Micro-Manager\MMCo >>>>>>>>> reJ.jar >>>>>>>>> C:\Program Files\Micro-Manager-1.4\**plugins\Micro-Manager >>>>>>>>> C:\Program Files\Micro-Manager-1.4\**plugins >>>>>>>>> C:\Program Files\Micro-Manager-1.4\**plugins\mm\win32 >>>>>>>>> C:\Program Files\Micro-Manager-1.4 >>>>>>>>> C:\Program Files\Micro-Manager-1.4\mm\**win32 >>>>>>>>> Traceback (most recent call last): >>>>>>>>> File "C:\Python26\Lib\runpy.py", line 122, in _run_module_as_main >>>>>>>>> "__main__", fname, loader, pkg_name) >>>>>>>>> File "C:\Python26\Lib\runpy.py", line 34, in _run_code >>>>>>>>> exec code in run_globals >>>>>>>>> File "C:\Python26\lib\site-**packages\jcc\__main__.py", line 104, >>>>>>>>> in >>>>>>>>> <module> >>>>>>>>> cpp.jcc(sys.argv) >>>>>>>>> File "C:\Python26\lib\site-**packages\jcc\cpp.py", line 632, in >>>>>>>>> jcc >>>>>>>>> generics, _dll_export) >>>>>>>>> File "C:\Python26\lib\site-**packages\jcc\cpp.py", line 766, in >>>>>>>>> header >>>>>>>>> for method in cls.getDeclaredMethods(): >>>>>>>>> jcc.cpp.JavaError: java.lang.**NoClassDefFoundError: >>>>>>>>> >>>>>>>> org/json/JSONObject >>>>> >>>>>> >>>>>>>> Where is the org.json.JSONObject class defined ? If it's not in >>>>>>>> MMCoreJ.jar then you need to tell jcc via the --classpath flag, for >>>>>>>> example, so that it can find it. >>>>>>>> >>>>>>>> Andi.. >>>>>>>> >>>>>>>> Java stacktrace: >>>>>>>>> java.lang.**NoClassDefFoundError: org/json/JSONObject >>>>>>>>> at java.lang.Class.**getDeclaredMethods0(Native Method) >>>>>>>>> at java.lang.Class.**privateGetDeclaredMethods(**Unknown >>>>>>>>> Source) >>>>>>>>> at java.lang.Class.**getDeclaredMethods(Unknown Source) >>>>>>>>> Caused by: java.lang.**ClassNotFoundException: org.json.JSONObject >>>>>>>>> at java.net.URLClassLoader$1.run(**Unknown Source) >>>>>>>>> at java.net.URLClassLoader$1.run(**Unknown Source) >>>>>>>>> at java.security.**AccessController.doPrivileged(**Native >>>>>>>>> Method) >>>>>>>>> at java.net.URLClassLoader.**findClass(Unknown Source) >>>>>>>>> at java.lang.ClassLoader.**loadClass(Unknown Source) >>>>>>>>> at sun.misc.Launcher$**AppClassLoader.loadClass(**Unknown >>>>>>>>> Source) >>>>>>>>> at java.lang.ClassLoader.**loadClass(Unknown Source) >>>>>>>>> ... 3 more >>>>>>>>> >>>>>>>>> I tried --package org.json, but this did not work? >>>>>>>>> >>>>>>>>> On Sat, May 26, 2012 at 10:09 AM, Mark Finkelstein < >>>>>>>>> >>>>>>>> finkel.m...@gmail.com>wrote: >>>>>>>> >>>>>>>>> >>>>>>>>> It is at C:\Python26\Lib\site-packages\**jcc.dll. I can also >>>>>>>>>> show you >>>>>>>>>> >>>>>>>>> my >>>>> >>>>>> installation log: >>>>>>>>>> >>>>>>>>>> *** Installation started 2012/05/14 13:29 *** >>>>>>>>>> Source: C:\Users\avastmatey\Downloads\**JCC-2.13.win32-py2.6.exe >>>>>>>>>> 999 Root Key: HKEY_LOCAL_MACHINE >>>>>>>>>> 020 Reg DB Key: >>>>>>>>>> [Software\Microsoft\Windows\**CurrentVersion\Uninstall]JCC-** >>>>>>>>>> py2.6 >>>>>>>>>> 040 Reg DB Value: >>>>>>>>>> >>>>>>>>>> >>>>>>>> >>>>> [Software\Microsoft\Windows\**CurrentVersion\Uninstall\JCC-** >>> py2.6]DisplayName=Python >>> >>>> 2.6 JCC-2.13 >>>>>>>>>> 040 Reg DB Value: >>>>>>>>>> >>>>>>>>>> >>>>>>>> >>>>> [Software\Microsoft\Windows\**CurrentVersion\Uninstall\JCC-** >>> py2.6]UninstallString="C:\**Python26\RemoveJCC.exe" >>> >>>> -u "C:\Python26\JCC-wininst.log" >>>>>>>>>> 200 File Copy: C:\Python26\Lib\site-packages\**jcc.dll >>>>>>>>>> 100 Made Dir: C:\Python26\Lib\site-packages\**jcc >>>>>>>>>> 200 File Copy: C:\Python26\Lib\site-packages\**jcc\config.py >>>>>>>>>> 200 File Copy: C:\Python26\Lib\site-packages\**jcc\cpp.py >>>>>>>>>> 200 File Copy: C:\Python26\Lib\site-packages\**jcc\jcc.lib >>>>>>>>>> 200 File Copy: C:\Python26\Lib\site-packages\**jcc\python.py >>>>>>>>>> 200 File Copy: C:\Python26\Lib\site-packages\**jcc\windows.py >>>>>>>>>> 200 File Copy: C:\Python26\Lib\site-packages\**jcc\_jcc.pyd >>>>>>>>>> 200 File Copy: C:\Python26\Lib\site-packages\**jcc\__init__.py >>>>>>>>>> 200 File Copy: C:\Python26\Lib\site-packages\**jcc\__main__.py >>>>>>>>>> 100 Made Dir: C:\Python26\Lib\site-packages\**jcc\classes >>>>>>>>>> 100 Made Dir: C:\Python26\Lib\site-packages\**jcc\classes\org >>>>>>>>>> 100 Made Dir: C:\Python26\Lib\site-packages\** >>>>>>>>>> jcc\classes\org\apache >>>>>>>>>> 100 Made Dir: >>>>>>>>>> >>>>>>>>> C:\Python26\Lib\site-packages\**jcc\classes\org\apache\jcc >>>>> >>>>>> 200 File Copy: >>>>>>>>>> >>>>>>>>>> >>>>>>>> >>>>> C:\Python26\Lib\site-packages\**jcc\classes\org\apache\jcc\** >>> PythonException.class >>> >>>> 200 File Copy: >>>>>>>>>> >>>>>>>>>> C:\Python26\Lib\site-packages\**jcc\classes\org\apache\jcc\** >>>>> PythonVM.class >>>>> >>>>>> 100 Made Dir: C:\Python26\Lib\site-packages\**jcc\patches >>>>>>>>>> 200 File Copy: C:\Python26\Lib\site-packages\** >>>>>>>>>> jcc\patches\patch.4195 >>>>>>>>>> 200 File Copy: >>>>>>>>>> >>>>>>>>> C:\Python26\Lib\site-packages\**jcc\patches\patch.43.0.6c11 >>>>> >>>>>> 200 File Copy: >>>>>>>>>> >>>>>>>>> C:\Python26\Lib\site-packages\**jcc\patches\patch.43.0.6c7 >>>>> >>>>>> 100 Made Dir: C:\Python26\Lib\site-packages\**jcc\sources >>>>>>>>>> 200 File Copy: >>>>>>>>>> >>>>>>>>> C:\Python26\Lib\site-packages\**jcc\sources\functions.cpp >>>>> >>>>>> 200 File Copy: >>>>>>>>>> >>>>>>>>> C:\Python26\Lib\site-packages\**jcc\sources\functions.h >>> >>>> 200 File Copy: C:\Python26\Lib\site-packages\**jcc\sources\JArray.cpp >>>>>>>>>> 200 File Copy: C:\Python26\Lib\site-packages\** >>>>>>>>>> jcc\sources\JArray.h >>>>>>>>>> 200 File Copy: C:\Python26\Lib\site-packages\** >>>>>>>>>> jcc\sources\jcc.cpp >>>>>>>>>> 200 File Copy: C:\Python26\Lib\site-packages\** >>>>>>>>>> jcc\sources\JCCEnv.cpp >>>>>>>>>> 200 File Copy: C:\Python26\Lib\site-packages\** >>>>>>>>>> jcc\sources\JCCEnv.h >>>>>>>>>> 200 File Copy: C:\Python26\Lib\site-packages\** >>>>>>>>>> jcc\sources\jccfuncs.h >>>>>>>>>> 200 File Copy: >>>>>>>>>> >>>>>>>>> C:\Python26\Lib\site-packages\**jcc\sources\JObject.cpp >>> >>>> 200 File Copy: C:\Python26\Lib\site-packages\**jcc\sources\JObject.h >>>>>>>>>> 200 File Copy: C:\Python26\Lib\site-packages\** >>>>>>>>>> jcc\sources\macros.h >>>>>>>>>> 200 File Copy: C:\Python26\Lib\site-packages\** >>>>>>>>>> jcc\sources\types.cpp >>>>>>>>>> 100 Made Dir: C:\Python26\Lib\site-packages\** >>>>>>>>>> JCC-2.13-py2.6.egg-info >>>>>>>>>> 200 File Copy: >>>>>>>>>> >>>>>>>>>> >>>>>>>> >>>>> C:\Python26\Lib\site-packages\**JCC-2.13-py2.6.egg-info\** >>> dependency_links.txt >>> >>>> 200 File Copy: >>>>>>>>>> C:\Python26\Lib\site-packages\**JCC-2.13-py2.6.egg-info\not-** >>>>>>>>>> zip-safe >>>>>>>>>> 200 File Copy: >>>>>>>>>> C:\Python26\Lib\site-packages\**JCC-2.13-py2.6.egg-info\PKG-** >>>>>>>>>> INFO >>>>>>>>>> 200 File Copy: >>>>>>>>>> C:\Python26\Lib\site-packages\**JCC-2.13-py2.6.egg-info\** >>>>>>>>>> SOURCES.txt >>>>>>>>>> 200 File Copy: >>>>>>>>>> C:\Python26\Lib\site-packages\**JCC-2.13-py2.6.egg-info\top_** >>>>>>>>>> level.txt >>>>>>>>>> 200 File Copy: C:\Python26\Lib\site-packages\**jcc\__main__.pyc >>>>>>>>>> 200 File Copy: C:\Python26\Lib\site-packages\**jcc\__init__.pyc >>>>>>>>>> 200 File Copy: C:\Python26\Lib\site-packages\**jcc\windows.pyc >>>>>>>>>> 200 File Copy: C:\Python26\Lib\site-packages\**jcc\python.pyc >>>>>>>>>> 200 File Copy: C:\Python26\Lib\site-packages\**jcc\cpp.pyc >>>>>>>>>> 200 File Copy: C:\Python26\Lib\site-packages\**jcc\config.pyc >>>>>>>>>> 200 File Copy: C:\Python26\Lib\site-packages\**jcc\__main__.pyo >>>>>>>>>> 200 File Copy: C:\Python26\Lib\site-packages\**jcc\__init__.pyo >>>>>>>>>> 200 File Copy: C:\Python26\Lib\site-packages\**jcc\windows.pyo >>>>>>>>>> 200 File Copy: C:\Python26\Lib\site-packages\**jcc\python.pyo >>>>>>>>>> 200 File Copy: C:\Python26\Lib\site-packages\**jcc\cpp.pyo >>>>>>>>>> 200 File Copy: C:\Python26\Lib\site-packages\**jcc\config.pyo >>>>>>>>>> >>>>>>>>>> I also updated my PATH to be "C:\Program Files >>>>>>>>>> (x86)\Java\jdk1.7.0_04\bin";"**C:\Program Files >>>>>>>>>> >>>>>>>>>> >>>>>>>> >>>>> (x86)\Java\jdk1.7.0_04\lib";C:**\Python26;C:\Python26\Lib\** >>> site-packages;C:\Python26\Lib\**site-packages\PyQt4;"C:\**Program >>> >>>> Files (x86)\MiKTeX 2.9\miktex/bin/";"C:\Program >>>>>>>>>> Files\TortoiseSVN\bin";"C:\**Program Files (x86)\CMake >>>>>>>>>> >>>>>>>>> 2.8\bin";"C:\Program >>>>>>>> >>>>>>>>> Files (x86)\Java\jdk1.7.0_04\jre\**bin\client" >>>>>>>>>> >>>>>>>>>> Again, many thanks for the help. >>>>>>>>>> >>>>>>>>>> On Sat, May 26, 2012 at 9:59 AM, Andi Vajda <va...@apache.org> >>>>>>>>>> >>>>>>>>> wrote: >>>>> >>>>>> >>>>>>>>>> >>>>>>>>>>> On May 25, 2012, at 22:57, Mark Finkelstein < >>>>>>>>>>> >>>>>>>>>> finkel.m...@gmail.com >>> >>>> >>>>>> wrote: >>>>>>>>>>> >>>>>>>>>>> Hello everyone! >>>>>>>>>>>> >>>>>>>>>>>> I hope this is a relevant question. I was trying to use jcc to >>>>>>>>>>>> >>>>>>>>>>> create >>>>> >>>>>> a >>>>>>>> >>>>>>>>> wrapper for a different project's library but when I try to run >>>>>>>>>>>> >>>>>>>>>>> python >>>>> >>>>>> -m >>>>>>>>>>> >>>>>>>>>>>> jcc.main >>>>>>>>>>>> I get the error C:\Python26\python.exe: DLL load failed: The >>>>>>>>>>>> >>>>>>>>>>> specified >>>>> >>>>>> module could not be found. >>>>>>>>>>>> I'm not sure why this is since I put the directory containing >>>>>>>>>>>> >>>>>>>>>>> jcc.dll >>>>> >>>>>> into >>>>>>>>>>> >>>>>>>>>>>> my PATH. I am not sure if it will help, but the following is my >>>>>>>>>>>> >>>>>>>>>>> PATH: >>>>> >>>>>> >>>>>>>>>>>> >>>>>>>>>>> >>>>>>>> >>>>> C:\Python26;C:\Python26\Lib\**site-packages;C:\Python26\Lib\** >>> site-packages\PyQt4;"C:\**Program >>> >>>> Files (x86)\MiKTeX 2.9\miktex/bin/";"C:\Program >>>>>>>>>>>> Files\TortoiseSVN\bin";"C:\**Program Files (x86)\CMake >>>>>>>>>>>> >>>>>>>>>>> 2.8\bin";"C:\Program >>>>>>>>>>> >>>>>>>>>>>> Files (x86)\Java\jdk1.7.0_04\jre\**bin\client" >>>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>>> I don't think jcc.dll is likely to be in any of the directories >>>>>>>>>>> of >>>>>>>>>>> >>>>>>>>>> the >>>>> >>>>>> PATH you show. What is the full path of the directory containing >>>>>>>>>>> >>>>>>>>>> jcc.dll on >>>>>>>> >>>>>>>>> your system ? >>>>>>>>>>> >>>>>>>>>>> Andi.. >>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>>>> Any help would be very much appreciated. >>>>>>>>>>>> >>>>>>>>>>>> Thank you in advance, >>>>>>>>>>>> >>>>>>>>>>>> Mark. >>>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>> >>>>>>>>>> >>>>>>>> >>>>>>> >>>>> >>> >>