http://bugs.winehq.org/show_bug.cgi?id=30420
Bug #: 30420 Summary: pyjamas desktop (python26 + python-comtypes MSHTML.DLL from IE8) fails due to unsupported ReadTypeLib header Product: Wine Version: 1.3.37 Platform: x86 OS/Version: Linux Status: UNCONFIRMED Severity: normal Priority: P2 Component: -unknown AssignedTo: wine-bugs@winehq.org ReportedBy: lkcl@lkcl.net Classification: Unclassified
amazingly, IE8 works. python26 works. python-comtypes barfs for the sole reason that (as can be seen below) LoadTypeLibEx fails.
what python-comtypes does is find the dll, extract its typelibrary and auto-generates python code which caches all the COM functions.
an strace shows that atl.dll is correctly being located, but the fact that the function fails makes it impossible to proceed.
however - and this is the absolutely amazing bit - if i comment out the line of python code (line 39 below), GetModule('atl.dll'), then ALL OTHER GetModule CALLS WORK!
this is just absolutely stunning. pyjamas-desktop - a highly sophisticated application that relies heavily on python COM bindings to MSHTML.DLL, actually bloody well works.
the only other thing i spotted was that in the conversion process, one of the GetModule calls threw these errors:
fixme:ole:ITypeInfo_fnGetRefTypeInfo Can't find pRefType for ref 3e8 fixme:ole:ITypeInfo_fnGetRefTypeInfo Can't find pRefType for ref 3e8 fixme:ole:ITypeInfo_fnGetRefTypeInfo Can't find pRefType for ref 10b30 fixme:ole:ITypeInfo_fnGetRefTypeInfo Can't find pRefType for ref 1142c fixme:ole:ITypeInfo_fnGetRefTypeInfo Can't find pRefType for ref 3e8
other than that, this is a staggeringly-impressive result.
C:\pyjamas\examples\helloworld>python Hello.py fixme:ole:TLB_ReadTypeLib Header type magic 0x00405a4d not supported. err:ole:TLB_ReadTypeLib Loading of typelib L"atl.dll" failed with error 0 Traceback (most recent call last): File "Hello.py", line 1, in <module> import pyjd # this is dummy in pyjs. File "C:\Python26\lib\site-packages\pyjd__init__.py", line 43, in <module> from mshtml import * File "C:\Python26\lib\site-packages\pyjd\mshtml.py", line 39, in <module> GetModule('atl.dll') File "C:\Python26\lib\site-packages\comtypes\client_generate.py", line 97, in GetModule tlib = comtypes.typeinfo.LoadTypeLibEx(tlib) File "C:\Python26\lib\site-packages\comtypes\typeinfo.py", line 480, in LoadTypeLibEx _oleaut32.LoadTypeLibEx(c_wchar_p(szFile), regkind, byref(ptl)) File "_ctypes/callproc.c", line 924, in GetResult WindowsError: [Error -2147312566] Windows Error 0x80029C4A
C:\pyjamas\examples\helloworld>
https://bugs.winehq.org/show_bug.cgi?id=30420
--- Comment #1 from Austin English austinenglish@gmail.com --- Instruction on how to reproduce this would help. I tried:
$ winetricks -q python26 python26_comtypes $ unzip -d ~/.wine/drive_c pyjs-pyjs-0.8.1a-0-g8c7cbc5.zip $ cd ~/.wine/drive_c/pyjs-pyjs-07f54ad/ $ wine "C:\Python26\python.exe" bootstrap.py $ cd examples/helloworld $ wine "C:\Python26\python.exe" Hello.py Traceback (most recent call last): File "Hello.py", line 1, in <module> import pyjd # this is dummy in pyjs. ImportError: No module named pyjd fixme:msvcrt:__clean_type_info_names_internal (0x1e1f9bc8) stub
using pyjs from http://pyjs.org/Download.html
https://bugs.winehq.org/show_bug.cgi?id=30420
Nikolay Sivov bunglehead@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Component|-unknown |atl
--- Comment #2 from Nikolay Sivov bunglehead@gmail.com --- Apparently this makes sense, cause atl.dll is supposed to host a typelib. I'll take a look.
https://bugs.winehq.org/show_bug.cgi?id=30420
Jacek Caban jacek@codeweavers.com changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |jacek@codeweavers.com
--- Comment #3 from Jacek Caban jacek@codeweavers.com --- We have typelib in atl now. Please retest.
https://bugs.winehq.org/show_bug.cgi?id=30420
Simon swdevelop1981@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |swdevelop1981@gmail.com
https://bugs.winehq.org/show_bug.cgi?id=30420
Jacek Caban jacek@codeweavers.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Fixed by SHA1| |f900bb5cbcf0ab726b1326f0c8a | |c2abafb7a8ddd Status|UNCONFIRMED |RESOLVED Resolution|--- |FIXED
--- Comment #4 from Jacek Caban jacek@codeweavers.com --- Assuming fixed.
https://bugs.winehq.org/show_bug.cgi?id=30420
Alexandre Julliard julliard@winehq.org changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|RESOLVED |CLOSED
--- Comment #5 from Alexandre Julliard julliard@winehq.org --- Closing bugs fixed in 1.7.34.