http://bugs.winehq.org/show_bug.cgi?id=31423
Bug #: 31423 Summary: Windows script host broken Product: Wine Version: 1.5.10 Platform: x86 OS/Version: Linux Status: UNCONFIRMED Severity: major Priority: P2 Component: jscript AssignedTo: wine-bugs@winehq.org ReportedBy: djahma@gmail.com Classification: Unclassified
Windows script host is not found by software which provide a scripting interface based on it. AmiBroker is the software in question. It offers a scripting feature which rely on WSH but AmiBroker doesn't find it on recent versions of wine, although running scripts work when doing: wine wscript myscript.js I've tried various setups with Ubuntu 12.04 64bit and mint13 32bit and playonlinux to install various wine versions (1.5, 1.4, 1.3 ,1.2, 1.1.30). The strange thing is that AmiBroker could run jscripts when I was on Ubuntu 11.04 32bit and wine 1.2.2. Each time, I installed vcrun6 wsh56 and wsh57, msxml3, MFC42, ie6. I don't know how but I could see in the registry that jscript and vbscript are registered...not sure that help.
Unfortunately, I'm not a hacker, I just write simple scripts and programs to help me in my financial researches (render information directly on charts). A lot of my code written for AmiBroker rely on this ability to call WSH from within Amibroker. This means that a lot of my work would be lost unless a Hacker finds a way to setup WSH properly in wine, or I return to windows.
All I can do is to offer my time to run the commands someone knowledgeable would tell me to type. I've got AmiBroker, I've got some scripts to test, let me know
http://bugs.winehq.org/show_bug.cgi?id=31423
guillaume djahma@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |djahma@gmail.com
http://bugs.winehq.org/show_bug.cgi?id=31423
Dan Kegel dank@kegel.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Keywords| |download URL| |http://www.amibroker.com/do | |wnload.html CC| |dank@kegel.com Component|jscript |-unknown Severity|major |normal
--- Comment #1 from Dan Kegel dank@kegel.com 2012-08-07 06:05:30 CDT --- Thanks for your report. I downloaded the app. It seems to need 'winetricks mfc42' before installing. It's not easy to see whether scripting is working from your description. Please provide a sample script, and instructions for how to run it and tell whether it worked. Your instructions should assume the person following them does not know jack about the app.
http://bugs.winehq.org/show_bug.cgi?id=31423
--- Comment #2 from guillaume djahma@gmail.com 2012-08-23 21:30:55 CDT --- Hi, Thanks for caring about this issue. Once AmiBroker is opened, you should see a 'Charts' tab in the left hand side vertical pane. Click on it, then right click the 'custom' folder and select New->Formula. Then right click your formula file and choose 'edit'. Copy the following AFL language code:
EnableScript("jscript"); <% function displayMessage(message) { var myshell = new ActiveXObject("WScript.Shell"); myshell.Popup(message); } %> script=GetScriptObject(); script.displayMessage("A message");
Save that and click on the button named 'AFL' to check syntax. You should get an error saying 'Is there a semicolon missing'. Actually, AmiBroker cannot find windows scripting host and thus, the 'script' object from the code above is never created. Also, if you start AB from a terminal, you should get a message saying: "fixme:jscript:JScript_SetScriptSate unimplemented state 3". This message wasn't there when it was working on my previous xubuntu version. Also, two years ago when I first installed AB on Linux, I had to install internet explorer 6, vcrun6 and wsh56 to get scripting working, in addition to MFC40.dll and MFC42.dll to get AmiBroker to install.
Regards, Guillaume
http://bugs.winehq.org/show_bug.cgi?id=31423
--- Comment #3 from guillaume djahma@gmail.com 2012-08-23 21:43:32 CDT --- Sorry I forgot to mention I've tried many different setups over the past 3 months, and I get the best results with older wine versions, the 1.2.2 in particular, no matter the ubuntu flavour I use (incl. Mint). 'best results' means doing "wscript test.js" from a cmd.exe works, whereas after wine 1.4 it doesn't. In the test.js file I wrote: var myshell = new ActiveXObject("WScript.Shell"); myshell.Popup("this message");
http://bugs.winehq.org/show_bug.cgi?id=31423
--- Comment #4 from Nikolay Sivov bunglehead@gmail.com 2012-08-24 01:18:12 CDT --- Could you attach complete terminal output running that? As I understood it only needs native mfc42 to display a problem, no more overrides needed.
http://bugs.winehq.org/show_bug.cgi?id=31423
--- Comment #5 from guillaume djahma@gmail.com 2012-08-24 05:41:06 CDT --- well, nothing happens when doing "wscript test.js", not even a small error line. However, I get varying outputs according to if I don't override more than winetricks mfc40 & mfc42 + ie6 + vcrun6 + wsh56 do; and if I add the following overrides: msvcrt(n,b) ole32(n,b) oleaut32(n,b) rpcrt4(n,b)
So, this is output when running AB in a terminal with just basic winetricks overrides: [POL_Wine_SetVersionEnv] Message: Setting wine version path: 1.5.11, x86 [POL_Wine_SetVersionEnv] Message: "/home/gman/.PlayOnLinux//wine/linux-x86/1.5.11" exists [POL_Wine] Message: Running wine-1.5.11 Broker.exe wine: cannot find L"C:\windows\system32\winemenubuilder.exe" err:wineboot:ProcessRunKeys Error running cmd L"C:\windows\system32\winemenubuilder.exe -a -r" (2) p11-kit: couldn't load module: /usr/lib/i386-linux-gnu/pkcs11/gnome-keyring-pkcs11.so: /usr/lib/i386-linux-gnu/pkcs11/gnome-keyring-pkcs11.so: cannot open shared object file: No such file or directory err:module:import_dll Library qpdll.dll (which is needed by L"C:\AmiBroker\Plugins\QP2.dll") not found err:module:import_dll Library FastTrack.dll (which is needed by L"C:\AmiBroker\Plugins\FT.dll") not found fixme:jscript:JScript_SetScriptState unimplemented state 3 fixme:jscript:JScript_SetScriptState unimplemented state 3 fixme:jscript:JScript_SetScriptState unimplemented state 3 fixme:jscript:JScript_SetScriptState unimplemented state 3 fixme:jscript:JScript_SetScriptState unimplemented state 3 fixme:jscript:JScript_SetScriptState unimplemented state 3 err:statusbar:StatusWindowProc unknown msg 2728 wp=0002 lp=00000000 fixme:jscript:JScript_SetScriptState unimplemented state 3 fixme:jscript:JScript_SetScriptState unimplemented state 3 err:statusbar:StatusWindowProc unknown msg 2728 wp=0002 lp=00000000 fixme:jscript:JScript_SetScriptState unimplemented state 3 fixme:jscript:JScript_SetScriptState unimplemented state 3 fixme:jscript:JScript_SetScriptState unimplemented state 3 fixme:jscript:JScript_SetScriptState unimplemented state 3 err:statusbar:StatusWindowProc unknown msg 2728 wp=0002 lp=00000000 err:statusbar:StatusWindowProc unknown msg 2728 wp=0002 lp=00000000 err:statusbar:StatusWindowProc unknown msg 2728 wp=0002 lp=00000000 err:statusbar:StatusWindowProc unknown msg 2728 wp=0002 lp=00000000 err:statusbar:StatusWindowProc unknown msg 2728 wp=0002 lp=00000000 err:tooltips:TOOLTIPS_WindowProc unknown msg 0ba8 wp=0360b610 lp=00000002 err:tooltips:TOOLTIPS_WindowProc unknown msg 0ba8 wp=0360b610 lp=00000002 err:tooltips:TOOLTIPS_WindowProc unknown msg 0ba8 wp=0360b610 lp=00000002 err:tooltips:TOOLTIPS_WindowProc unknown msg 0ba8 wp=0360b610 lp=00000002 fixme:win:LockWindowUpdate (0x202ac), partial stub! fixme:win:LockWindowUpdate ((nil)), partial stub! fixme:win:LockWindowUpdate (0x202ac), partial stub! fixme:win:LockWindowUpdate ((nil)), partial stub! fixme:win:LockWindowUpdate (0x202ac), partial stub! fixme:win:LockWindowUpdate ((nil)), partial stub! fixme:win:LockWindowUpdate (0x202ac), partial stub! fixme:win:LockWindowUpdate ((nil)), partial stub! fixme:win:LockWindowUpdate (0x202ac), partial stub! fixme:win:LockWindowUpdate ((nil)), partial stub! fixme:jscript:JScript_SetScriptState unimplemented state 3
And here is a different output with the additional manual overrides: [POL_Wine_SetVersionEnv] Message: Setting wine version path: 1.5.11, x86 [POL_Wine_SetVersionEnv] Message: "/home/gman/.PlayOnLinux//wine/linux-x86/1.5.11" exists [POL_Wine] Message: Running wine-1.5.11 Broker.exe rm: cannot remove `*': No such file or directory p11-kit: couldn't load module: /usr/lib/i386-linux-gnu/pkcs11/gnome-keyring-pkcs11.so: /usr/lib/i386-linux-gnu/pkcs11/gnome-keyring-pkcs11.so: cannot open shared object file: No such file or directory err:module:import_dll Library qpdll.dll (which is needed by L"C:\AmiBroker\Plugins\QP2.dll") not found err:module:import_dll Library FastTrack.dll (which is needed by L"C:\AmiBroker\Plugins\FT.dll") not found fixme:jscript:to_number unimplemented for vt 4 fixme:jscript:to_number unimplemented for vt 4 fixme:jscript:to_number unimplemented for vt 4 fixme:jscript:to_number unimplemented for vt 4 fixme:jscript:to_number unimplemented for vt 4 fixme:jscript:to_number unimplemented for vt 4 fixme:jscript:JScript_SetScriptState unimplemented state 3 fixme:jscript:to_number unimplemented for vt 4 fixme:jscript:JScript_SetScriptState unimplemented state 3 fixme:jscript:to_number unimplemented for vt 4 fixme:jscript:to_number unimplemented for vt 4 fixme:jscript:to_number unimplemented for vt 4 fixme:jscript:to_number unimplemented for vt 4 fixme:jscript:JScript_SetScriptState unimplemented state 3 fixme:jscript:to_number unimplemented for vt 4 fixme:jscript:JScript_SetScriptState unimplemented state 3 fixme:jscript:to_number unimplemented for vt 4 fixme:jscript:to_number unimplemented for vt 4 fixme:jscript:to_number unimplemented for vt 4 fixme:jscript:to_number unimplemented for vt 4 fixme:jscript:to_number unimplemented for vt 4 fixme:jscript:JScript_SetScriptState unimplemented state 3 fixme:jscript:to_number unimplemented for vt 4 fixme:jscript:to_number unimplemented for vt 4 fixme:jscript:to_number unimplemented for vt 4 fixme:jscript:to_number unimplemented for vt 4 fixme:jscript:JScript_SetScriptState unimplemented state 3 err:statusbar:StatusWindowProc unknown msg 2728 wp=0002 lp=00000000 err:statusbar:StatusWindowProc unknown msg 2728 wp=0002 lp=00000000 fixme:jscript:to_number unimplemented for vt 4 fixme:jscript:to_number unimplemented for vt 4 fixme:jscript:to_number unimplemented for vt 4 fixme:jscript:to_number unimplemented for vt 4 fixme:jscript:JScript_SetScriptState unimplemented state 3 fixme:jscript:to_number unimplemented for vt 4 fixme:jscript:to_number unimplemented for vt 4 fixme:jscript:to_number unimplemented for vt 4 fixme:jscript:to_number unimplemented for vt 4 fixme:jscript:JScript_SetScriptState unimplemented state 3 fixme:jscript:to_number unimplemented for vt 4 fixme:jscript:to_number unimplemented for vt 4 fixme:jscript:to_number unimplemented for vt 4 fixme:jscript:JScript_SetScriptState unimplemented state 3 fixme:jscript:to_number unimplemented for vt 4 fixme:jscript:JScript_SetScriptState unimplemented state 3 fixme:jscript:to_number unimplemented for vt 4 err:statusbar:StatusWindowProc unknown msg 2728 wp=0002 lp=00000000 fixme:jscript:to_number unimplemented for vt 4 err:statusbar:StatusWindowProc unknown msg 2728 wp=0002 lp=00000000 err:statusbar:StatusWindowProc unknown msg 2728 wp=0002 lp=00000000 err:statusbar:StatusWindowProc unknown msg 2728 wp=0002 lp=00000000 err:statusbar:StatusWindowProc unknown msg 2728 wp=0002 lp=00000000 fixme:jscript:to_number unimplemented for vt 4 fixme:jscript:to_number unimplemented for vt 4 fixme:jscript:to_number unimplemented for vt 4 fixme:jscript:JScript_SetScriptState unimplemented state 3 fixme:jscript:to_number unimplemented for vt 4 fixme:jscript:to_number unimplemented for vt 4 fixme:jscript:to_number unimplemented for vt 4 fixme:jscript:to_number unimplemented for vt 4 fixme:jscript:JScript_SetScriptState unimplemented state 3 fixme:jscript:to_number unimplemented for vt 4 fixme:jscript:to_number unimplemented for vt 4 err:statusbar:StatusWindowProc unknown msg 2728 wp=0002 lp=00000000 err:statusbar:StatusWindowProc unknown msg 2728 wp=0002 lp=00000000 err:statusbar:StatusWindowProc unknown msg 2728 wp=0002 lp=00000000 err:statusbar:StatusWindowProc unknown msg 2728 wp=0002 lp=00000000 fixme:jscript:JScript_SetScriptState unimplemented state 3 fixme:jscript:to_number unimplemented for vt 4 fixme:jscript:to_number unimplemented for vt 4 fixme:jscript:to_number unimplemented for vt 4 fixme:jscript:to_number unimplemented for vt 4 fixme:jscript:to_number unimplemented for vt 4 fixme:jscript:JScript_SetScriptState unimplemented state 3 err:statusbar:StatusWindowProc unknown msg 2728 wp=0200 lp=00000000 err:statusbar:StatusWindowProc unknown msg 2728 wp=0002 lp=00000000 fixme:jscript:to_number unimplemented for vt 4 fixme:jscript:to_number unimplemented for vt 4 fixme:jscript:JScript_SetScriptState unimplemented state 3 fixme:jscript:to_number unimplemented for vt 4 fixme:jscript:to_number unimplemented for vt 4 fixme:jscript:JScript_SetScriptState unimplemented state 3 fixme:jscript:to_number unimplemented for vt 4 fixme:jscript:to_number unimplemented for vt 4 fixme:jscript:to_number unimplemented for vt 4 fixme:jscript:to_number unimplemented for vt 4 fixme:jscript:JScript_SetScriptState unimplemented state 3 fixme:jscript:to_number unimplemented for vt 4 fixme:jscript:to_number unimplemented for vt 4 fixme:jscript:to_number unimplemented for vt 4 fixme:jscript:to_number unimplemented for vt 4 fixme:jscript:to_number unimplemented for vt 4 fixme:jscript:to_number unimplemented for vt 4 fixme:jscript:JScript_SetScriptState unimplemented state 3 err:tooltips:TOOLTIPS_WindowProc unknown msg 0ba8 wp=0145f9e8 lp=00000002 err:tooltips:TOOLTIPS_WindowProc unknown msg 0ba8 wp=0145f9e8 lp=00000002 err:tooltips:TOOLTIPS_WindowProc unknown msg 0ba8 wp=0145f9e8 lp=00000002 fixme:win:LockWindowUpdate (0x202ac), partial stub! fixme:win:LockWindowUpdate ((nil)), partial stub! fixme:win:LockWindowUpdate (0x202ac), partial stub! fixme:win:LockWindowUpdate ((nil)), partial stub! fixme:win:LockWindowUpdate (0x202ac), partial stub! fixme:win:LockWindowUpdate ((nil)), partial stub! fixme:win:LockWindowUpdate (0x202ac), partial stub! fixme:win:LockWindowUpdate ((nil)), partial stub! err:tooltips:TOOLTIPS_Timer How did this happen? fixme:wshom:ClassFactory_QueryInterface (0xf7086a54)->({342d1ea0-ae25-11d1-89c5-006008c3fbfc} 0x32d578) fixme:wshom:WshShell3_QueryInterface Unknown iface {fc4801a3-2ba9-11cf-a229-00aa003d7352} fixme:wshom:WshShell3_QueryInterface Unknown iface {a6ef9860-c720-11d0-9337-00a0c90dcaa9} fixme:wshom:WshShell3_QueryInterface Unknown iface {719c3050-f9d3-11cf-a493-00400523a8a6} fixme:wshom:WshShell3_QueryInterface Unknown iface {a6ef9860-c720-11d0-9337-00a0c90dcaa9} fixme:win:LockWindowUpdate (0x202ac), partial stub! fixme:win:LockWindowUpdate ((nil)), partial stub! fixme:jscript:JScript_SetScriptState unimplemented state 3
https://bugs.winehq.org/show_bug.cgi?id=31423
Anastasius Focht focht@gmx.net changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|UNCONFIRMED |RESOLVED CC| |focht@gmx.net Resolution|--- |FIXED Summary|Windows script host broken |AmiBroker fails on startup
--- Comment #6 from Anastasius Focht focht@gmx.net --- Hello folks,
I can't reproduce this problem with recent Wine version, the app works pretty well. Resolving 'fixed'.
Prerequisite: 'winetricks -q mfc42'
$ sha1sum AmiBroker5702.exe 0f1c8a2af392bb6394529d92afd42a0634f1d4dc AmiBroker5702.exe
$ du -sh AmiBroker5702.exe 8.4M AmiBroker5702.exe
$ wine --version wine-1.7.14
Regards
https://bugs.winehq.org/show_bug.cgi?id=31423
Alexandre Julliard julliard@winehq.org changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|RESOLVED |CLOSED
--- Comment #7 from Alexandre Julliard julliard@winehq.org --- Closing bugs fixed in 1.7.15.