Comment 0 for bug 696691

Revision history for this message
surfdork (surfdork) wrote : Sikuli X fails to execute scripts via Net Beans

OS Win7 starter x32
OS Win 7 ultimate x32

Description:
User unable to run sikuli scripts when using Sikuli X components , error returned is
VDictProxy loaded.
Traceback (most recent call last):
  File "C:\Users\Mike\Documents\NetBeansProjects\NewPythonProject\src\newpythonproject.py", line 4, in <module>
    from sikuli.Sikuli import *
  File "C:\UnjarSikuliScript\Lib\sikuli\Sikuli.py", line 183, in <module>
    initSikuli()
  File "C:\UnjarSikuliScript\Lib\sikuli\Sikuli.py", line 178, in initSikuli
    dict['SCREEN'] = Screen()
  File "C:\UnjarSikuliScript\Lib\sikuli\Screen.py", line 16, in __init__
    r = JScreen().getBounds()
        at java.lang.ClassLoader$NativeLibrary.load(Native Method)

        at java.lang.ClassLoader.loadLibrary0(Unknown Source)

        at java.lang.ClassLoader.loadLibrary(Unknown Source)

        at java.lang.Runtime.load0(Unknown Source)

        at java.lang.System.load(Unknown Source)

        at com.wapmx.nativeutils.jniloader.NativeLoader.loadLibrary(NativeLoader.java:44)

        at org.sikuli.script.Win32Util.<clinit>(Win32Util.java:14)

        at java.lang.Class.forName0(Native Method)

        at java.lang.Class.forName(Unknown Source)

        at org.sikuli.script.Env.getOSUtil(Env.java:82)

        at org.sikuli.script.ScreenHighlighter.init(ScreenHighlighter.java:174)

        at org.sikuli.script.ScreenHighlighter.<init>(ScreenHighlighter.java:287)

        at org.sikuli.script.Screen.initBounds(Screen.java:96)

        at org.sikuli.script.Screen.<init>(Screen.java:108)

        at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)

        at sun.reflect.NativeConstructorAccessorImpl.newInstance(Unknown Source)

        at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(Unknown Source)

        at java.lang.reflect.Constructor.newInstance(Unknown Source)

        at org.python.core.PyReflectedConstructor.constructProxy(PyReflectedConstructor.java:163)

java.lang.UnsatisfiedLinkError: java.lang.UnsatisfiedLinkError: C:\Users\Mike\AppData\Local\Temp\tmplib\Win32Util.dll: Can't find dependent libraries

Executing dependency walker on the affected x32 machine returns the following:

c:\users\mike\appdata\local\temp\tmplib\WIN32UTIL.DLL

?Java_org_sikuli_script_Win32Util_bringWindowToFront@@YGXPAUJNIEnv_@@PAV_jclass@@PAV_jobject@@E@Z
_Java_org_sikuli_script_Win32Util_closeApp__I@12
_Java_org_sikuli_script_Win32Util_closeApp__Ljava_lang_String_2@12
_Java_org_sikuli_script_Win32Util_getFocusedRegion@8
_Java_org_sikuli_script_Win32Util_getHwnd__II@16
_Java_org_sikuli_script_Win32Util_getHwnd__Ljava_lang_String_2I@16
_Java_org_sikuli_script_Win32Util_getRegion@20
_Java_org_sikuli_script_Win32Util_openApp@12
_Java_org_sikuli_script_Win32Util_switchApp__II@16
_Java_org_sikuli_script_Win32Util_switchApp__Ljava_lang_String_2I@16

JAWT.DLL , IESHMIS.DLL, AWT.DLL, MSVCR71.DLL
are shown as missing dependencies (see the attached screen shots)
User variable path is
C:\Program Files\UnjarSikuliScript\Lib;C:\Program Files\Sikuli X\libs;C:\Program Files\Java\jre6\bin

The fix is to add the following to your system path.

C:\Program Files\UnjarSikuliScript\Lib;C:\Program Files\Sikuli X\libs;C:\Program Files\Java\jre6\bin

I hope reporting this will save a tester pain.