http://bugs.winehq.org/show_bug.cgi?id=30512
Bug #: 30512 Summary: TM2009 crashes with initialization failure Product: Wine Version: 1.5.2 Platform: x86-64 OS/Version: Linux Status: UNCONFIRMED Severity: normal Priority: P2 Component: -unknown AssignedTo: wine-bugs@winehq.org ReportedBy: lilydjwg@gmail.com Classification: Unclassified
Created attachment 39907 --> http://bugs.winehq.org/attachment.cgi?id=39907 Initilization failure screenshot
TM2009 is a proprietary messaging client for Tencent, which can communicate with QQ---the popular IM client in China.
It can be downloaded from here: http://dl_dir.qq.com/qqfile/tm/TM2009Beta3.3_chs.exe
After installation, running its executable (Bin/TM.exe) output nothing in terminal, but only a "Initilization failure: 0x00000004" is shown.
http://bugs.winehq.org/show_bug.cgi?id=30512
--- Comment #1 from lilydjwg@gmail.com 2012-04-24 11:55:32 CDT --- Log with WINEDEBUG=+relay,+seh,+tid is here (9.1MiB) http://img.vim-cn.com/83/e59bb8ba4e18b1d39892d384f77525b6761add
By the way, I'm using WINEARCH=win32.
http://bugs.winehq.org/show_bug.cgi?id=30512
lilydjwg@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |lilydjwg@gmail.com
http://bugs.winehq.org/show_bug.cgi?id=30512
Ma Xiaojun damage3025@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |damage3025@gmail.com
http://bugs.winehq.org/show_bug.cgi?id=30512
Qian Hong fracting@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |fracting@gmail.com
http://bugs.winehq.org/show_bug.cgi?id=30512
Austin English austinenglish@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Keywords| |download Status|UNCONFIRMED |NEW URL| |http://dl_dir.qq.com/qqfile | |/tm/TM2009Beta3.3_chs.exe Ever Confirmed|0 |1
--- Comment #2 from Austin English austinenglish@gmail.com 2012-04-24 14:39:30 CDT --- Confirming:
austin@aw25 ~ $ du -h TM2009Beta3.3_chs.exe 19M TM2009Beta3.3_chs.exe austin@aw25 ~ $ sha1sum TM2009Beta3.3_chs.exe 6329b7707d2a4f708b166c8780ced532f862553e TM2009Beta3.3_chs.exe austin@aw25 ~ $ wine --version wine-1.5.2-250-gdc830aa
http://bugs.winehq.org/show_bug.cgi?id=30512
--- Comment #3 from Austin English austinenglish@gmail.com 2012-04-24 14:39:57 CDT --- Created attachment 39911 --> http://bugs.winehq.org/attachment.cgi?id=39911 relay,seh,tid trace
Here's a relay with notepad already running. 1.4MB uncompressed
http://bugs.winehq.org/show_bug.cgi?id=30512
--- Comment #4 from lilydjwg@gmail.com 2012-04-25 03:49:16 CDT --- I just now tried the beta3.4 version of TM2009 from this link http://dl_dir.qq.com/qqfile/tm/TM2009Beta3.4_chs.exe and got the same error.
http://bugs.winehq.org/show_bug.cgi?id=30512
Anastasius Focht focht@gmx.net changed:
What |Removed |Added ---------------------------------------------------------------------------- Keywords| |Installer CC| |focht@gmx.net Component|-unknown |atl Summary|TM2009 crashes with |Tencent Messenger 2008/2009 |initialization failure |crashes with initialization | |failure due to atl80.dll | |AtlCreateRegistrar being a | |stub (registration of COM | |servers failed at install | |time)
--- Comment #5 from Anastasius Focht focht@gmx.net 2012-04-25 14:20:54 CDT --- Hello,
confirming.
--- snip --- $ pwd /home/focht/.wine/drive_c/Program Files/Tencent/TM2008/Bin ... $ WINEDEBUG=+tid,+seh,+relay,+snoop,+atl wine ./TM.exe ... 0024:CALL Common.?CreateObjectFromDllFile@Com@Util@@YGJPB_WABU_GUID@@1PAPAXPAUIUnknown@@@Z(<unknown, check return>) ret=00402d21 0024:Call KERNEL32.GetModuleHandleW(0040bc20 L"Common.dll") ret=30002bc7 0024:Ret KERNEL32.GetModuleHandleW() retval=30000000 ret=30002bc7 0024:Call KERNEL32.GetProcAddress(30000000,30187af0 "DllGetClassObject") ret=30002c2d 0024:Ret KERNEL32.GetProcAddress() retval=00358415 ret=30002c2d 0024:CALL Common.DllGetClassObject(<unknown, check return>) ret=30002c47 0024:Call atl.AtlModuleGetClassObject(301fa000,0040bc6c,301bdfe0,0032fa98) ret=3000962a 0024:trace:atl:AtlModuleGetClassObject 0x301fa000 {2289d8b7-c29a-47ae-9a7e-7b784e502b30} {00000001-0000-0000-c000-000000000046} 0x32fa98 0024:warn:atl:AtlModuleGetClassObject no class object found for {2289d8b7-c29a-47ae-9a7e-7b784e502b30} 0024:Ret atl.AtlModuleGetClassObject() retval=80040111 ret=3000962a 0024:RET Common.DllGetClassObject(0040bc6c,301bdfe0,0032fa98) retval=80040111 ret=30002c47 --- snip ---
"{2289d8b7-c29a-47ae-9a7e-7b784e502b30}" lives in "common.dll" COM inproc server.
If we manually try to register it:
--- snip --- $ wine regsvr32 common.dll fixme:atl80:AtlCreateRegistrar (0x32fd1c) stub Failed to register DLL common.dll --- snip ---
Same failure probably at installer time. Tracing installer indeed yields:
--- snip --- ... 0020:Call KERNEL32.CreateProcessW(00000000,019dd3b0 L""C:\windows\system32\regsvr32.exe" /s Common.dll",00000000,00000000,00000000,00000000,00000000,019dd7c0 L"C:\Program Files\Tencent\TM2008\Bin",019dcf40,019dcf2c) ret=0041c3cc ... 002a:Call KERNEL32.__wine_kernel_init() ret=7bc530d2 ... 0020:Ret KERNEL32.CreateProcessW() retval=00000001 ret=0041c3cc ... 002a:Ret PE DLL (proc=0x3016fb00,module=0x30000000 L"Common.dll",reason=PROCESS_ATTACH,res=(nil)) retval=1 002a:Ret KERNEL32.LoadLibraryExA() retval=30000000 ret=7effd6c2 002a:Call KERNEL32.GetProcAddress(30000000,7effe10e "DllRegisterServer") ret=7effd714 002a:Ret KERNEL32.GetProcAddress() retval=3000a140 ret=7effd714 002a:Call KERNEL32.GetThreadLocale() ret=30009f7e 002a:Ret KERNEL32.GetThreadLocale() retval=00000409 ret=30009f7e 002a:Call KERNEL32.SetThreadLocale(00000800) ret=30009f8b 002a:Ret KERNEL32.SetThreadLocale() retval=00000001 ret=30009f8b 002a:Call atl80.AtlCreateRegistrar(0033fd1c) ret=30009906 002a:fixme:atl80:AtlCreateRegistrar (0x33fd1c) stub 002a:Ret atl80.AtlCreateRegistrar() retval=80004001 ret=30009906 002a:Call KERNEL32.SetThreadLocale(00000409) ret=30009ff4 002a:Ret KERNEL32.SetThreadLocale() retval=00000001 ret=30009ff4 002a:Call KERNEL32.ExitProcess(ffffffff) ret=7effdedb ... --- snip ---
Source: http://source.winehq.org/git/wine.git/blob/7bffd907908a18a16b34d16245c817ec0...
--- snip --- 27 HRESULT WINAPI AtlCreateRegistrar(IRegistrar** ppReg) 28 { 29 FIXME("(%p) stub\n", ppReg); 30 return E_NOTIMPL; 31 } --- snip ---
Workaround: 'winetricks -q vcrun2005' and set 'atl80.dll' to '(native,builtin)' before running the installer.
Additionally:
--- snip --- err:module:import_dll Library MFC42.DLL (which is needed by L"C:\Program Files\Tencent\TM2008\Bin\TSEH.DAT") not found --- snip ---
'winetricks -q mfc42'
$ du -sh TM2009Beta3.4_chs.exe 19M TM2009Beta3.4_chs.exe
$ sha1sum TM2009Beta3.4_chs.exe 7af2000ffdc6fa68450065101e089e61f80ddff8 TM2009Beta3.4_chs.exe
$ wine --version wine-1.5.2-250-gdc830aa
Regards
http://bugs.winehq.org/show_bug.cgi?id=30512
--- Comment #6 from lilydjwg@gmail.com 2012-04-26 01:08:44 CDT --- Hi Anastasius Focht,
I tried your workaround and it works. Now the UI can show up, but when I try to login, it crashes. Should I create another bug report?
BTW, I got this: ALSA lib dlmisc.c:236:(snd1_dlobj_cache_get) Cannot open shared library /usr/lib32/alsa-lib/libasound_module_pcm_pulse.so
But I just installed that lib and verify that file exists.
http://bugs.winehq.org/show_bug.cgi?id=30512
Felix Yan felixonmars@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |felixonmars@gmail.com
http://bugs.winehq.org/show_bug.cgi?id=30512
--- Comment #7 from Ma Xiaojun damage3025@gmail.com 2012-05-21 16:00:29 CDT --- Same problem still exists in wine 1.5.4 without workarounds
http://bugs.winehq.org/show_bug.cgi?id=30512
johan.gardhage@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |johan.gardhage@gmail.com
http://bugs.winehq.org/show_bug.cgi?id=30512
Anastasius Focht focht@gmx.net changed:
What |Removed |Added ---------------------------------------------------------------------------- Blocks| |26461
http://bugs.winehq.org/show_bug.cgi?id=30512
--- Comment #8 from Nikolay Sivov bunglehead@gmail.com 2012-09-02 01:42:32 CDT --- Created attachment 41552 --> http://bugs.winehq.org/attachment.cgi?id=41552 patch
Try this patch please.
http://bugs.winehq.org/show_bug.cgi?id=30512
--- Comment #9 from Qian Hong fracting@gmail.com 2012-09-02 06:04:31 CDT --- (In reply to comment #8)
Created attachment 41552 [details] patch
Try this patch please.
Hello, Nikolay
With this patch, the app still failure with "Initilization failure: 0x00000004", also `regsvr32 common.dll` still doesn't work:
$ regsvr32 Common.dll fixme:atl:AtlModuleUpdateRegistryFromResourceD hinst 0x3: did not get module name Failed to register DLL Common.dll
What kind of log would you like?
Thanks for the work!
http://bugs.winehq.org/show_bug.cgi?id=30512
Dan Kegel dank@kegel.com changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |lyq.0617@gmail.com
--- Comment #10 from Dan Kegel dank@kegel.com 2012-09-29 05:09:04 CDT --- *** Bug 31821 has been marked as a duplicate of this bug. ***
http://bugs.winehq.org/show_bug.cgi?id=30512
Jacek Caban jacek@codeweavers.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Fixed by SHA1| |9abb9ffe91f034eb53f5788d915 | |d5551a1b38eba Status|NEW |RESOLVED CC| |jacek@codeweavers.com Resolution| |FIXED
--- Comment #11 from Jacek Caban jacek@codeweavers.com 2012-12-13 04:33:49 CST --- AtlCreateRegistrar is implemented properly in Git and AtlModuleUpdateRegistryFromResourceD is fixed in atl80. Please retest and open new bug if there are more problems.
http://bugs.winehq.org/show_bug.cgi?id=30512
--- Comment #12 from Qian Hong fracting@gmail.com 2012-12-13 06:42:05 CST --- Thanks Jacek, confirming fixed. Next bug is Bug 32435, atl80.dll.AtlComModuleGetClassObject is needed by TM2009/QQ2011
http://bugs.winehq.org/show_bug.cgi?id=30512
--- Comment #13 from Qian Hong fracting@gmail.com 2012-12-13 06:53:38 CST --- *** Bug 30211 has been marked as a duplicate of this bug. ***
http://bugs.winehq.org/show_bug.cgi?id=30512
Alexandre Julliard julliard@winehq.org changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|RESOLVED |CLOSED
--- Comment #14 from Alexandre Julliard julliard@winehq.org 2012-12-21 13:27:45 CST --- Closing bugs fixed in 1.5.20.