https://bugs.winehq.org/show_bug.cgi?id=45429
Bug ID: 45429 Summary: 'wintb' plugin for Inno Setup needs some Win7+ ITaskbarList3 ThumbBar/Thumbnail semi-stubs Product: Wine Version: 3.11 Hardware: x86-64 OS: Linux Status: NEW Severity: normal Priority: P2 Component: explorerframe Assignee: wine-bugs@winehq.org Reporter: focht@gmx.net Distribution: ---
Hello folks,
as it says. Wine's Win7+ ITaskbarList3 methods are currently not implemented, returning 'E_NOTIMP'.
The plugin in question is not listed/mentioned at main site, it might be some "scene" plugin, distributed with some game installers.
http://www.jrsoftware.org/isinfo.php
http://www.jrsoftware.org/is3rdparty.php
Trace log #1
--- snip --- $ WINEDEBUG=+seh,+relay wine ./setup.exe >> ~/Downloads/log.txt 2>&1 ... 0031:Call KERNEL32.GetProcAddress(074a0000,009b9b44 "SetTaskBarToolTip") ret=0049aca6 0031:Ret KERNEL32.GetProcAddress() retval=074a4b78 ret=0049aca6 0031:Call KERNEL32.GetVersionExW(0033f980) ret=074a4785 0031:Ret KERNEL32.GetVersionExW() retval=00000001 ret=074a4785 0031:Call KERNEL32.MultiByteToWideChar(000004e4,00000000,0069a68c "Crash Bandicoot N Sane Trilogy",0000001e,0033ea80,000007ff) ret=074a3b7d 0031:Ret KERNEL32.MultiByteToWideChar() retval=0000001e ret=074a3b7d 0031:fixme:explorerframe:taskbar_list_SetThumbnailTooltip iface 0x1aa150, hwnd 0x100a8, pszTip L"Crash Bandicoot N Sane Trilogy" stub! 0031:Call user32.MessageBoxA(00000000,074a7768 "Runtime error 229 at 074A4BCF",074a7760 "Error",00000000) ret=074a3915 ... --- snip ---
Wine source: https://source.winehq.org/git/wine.git/blob/HEAD:/dlls/explorerframe/taskbar...
--- snip --- 233 static HRESULT STDMETHODCALLTYPE taskbar_list_SetThumbnailTooltip(ITaskbarList4 *iface, 234 HWND hwnd, 235 LPCWSTR pszTip) 236 { 237 FIXME("iface %p, hwnd %p, pszTip %s stub!\n", iface, hwnd, debugstr_w(pszTip)); 238 239 return E_NOTIMPL; 240 } --- snip ---
Trace log #2 (running into next stub)
--- snip --- ... 0030:fixme:explorerframe:taskbar_list_ThumbBarAddButtons iface 0x1aa150, hwnd 0x100a8, cButtons 3, pButton 0x74aab30 stub! 0030:Call user32.MessageBoxA(00000000,074a7768 "Runtime error 229 at 074A4ED7",074a7760 "Error",00000000) ret=074a3915 ... --- snip ---
Wine source: https://source.winehq.org/git/wine.git/blob/HEAD:/dlls/explorerframe/taskbar...
--- snip --- 193 static HRESULT STDMETHODCALLTYPE taskbar_list_ThumbBarAddButtons(ITaskbarList4 *iface, 194 HWND hwnd, 195 UINT cButtons, 196 LPTHUMBBUTTON pButton) 197 { 198 FIXME("iface %p, hwnd %p, cButtons %u, pButton %p stub!\n", iface, hwnd, cButtons, pButton); 199 200 return E_NOTIMPL; 201 } --- snip ---
Trace log #3 (running into next stub)
--- snip --- ... 0077:Call KERNEL32.GetProcAddress(074a0000,009b9d74 "TaskBarButtonIcon") ret=0049aca6 0077:Ret KERNEL32.GetProcAddress() retval=074a507c ret=0049aca6 0077:Call KERNEL32.GetVersionExW(0033f994) ret=074a4785 0077:Ret KERNEL32.GetVersionExW() retval=00000001 ret=074a4785 0077:fixme:explorerframe:taskbar_list_ThumbBarUpdateButtons iface 0x1aa150, hwnd 0x40056, cButtons 3, pButton 0x74aab30 stub! 0077:Call user32.MessageBoxA(00000000,074a7768 "Runtime error 229 at 074A50C4",074a7760 "Error",00000000) ret=074a3915 ... --- snip ---
Wine source: https://source.winehq.org/git/wine.git/blob/HEAD:/dlls/explorerframe/taskbar...
--- snip --- 203 static HRESULT STDMETHODCALLTYPE taskbar_list_ThumbBarUpdateButtons(ITaskbarList4 *iface, 204 HWND hwnd, 205 UINT cButtons, 206 LPTHUMBBUTTON pButton) 207 { 208 FIXME("iface %p, hwnd %p, cButtons %u, pButton %p stub!\n", iface, hwnd, cButtons, pButton); 209 210 return E_NOTIMPL; 211 } --- snip ---
Just returning 'S_OK' is enough to make the installer work. In future there should be a more elaborate implementation though.
ProtectionID scan for documentation:
--- snip --- Scanning -> Z:\home\focht\Downloads\setup\is-SJ8C4.tmp\wintb.dll File Type : 32-Bit Dll (Subsystem : Win GUI / 2), Size : 28160 (06E00h) Byte(s) | Machine: 0x14C (I386) Compilation TimeStamp : 0x4F9D8D4D -> Sun 29th Apr 2012 18:49:49 (GMT) [TimeStamp] 0x4F9D8D4D -> Sun 29th Apr 2012 18:49:49 (GMT) | PE Header | - | Offset: 0x00000108 | VA: 0x00400108 | - [LoadConfig] CodeIntegrity -> Flags 0xA3F0 | Catalog 0x46 (70) | Catalog Offset 0x2000001 | Reserved 0x46A4A0 [LoadConfig] GuardAddressTakenIatEntryTable 0x8000011 | Count 0x46A558 (4629848) [LoadConfig] GuardLongJumpTargetTable 0x8000001 | Count 0x46A5F8 (4630008) [LoadConfig] HybridMetadataPointer 0x8000011 | DynamicValueRelocTable 0x46A66C [LoadConfig] FailFastIndirectProc 0x8000011 | FailFastPointer 0x46C360 [LoadConfig] UnknownZero1 0x8000011 [File Heuristics] -> Flag #1 : 00000000000001001100000100100001 (0x0004C121) [Entrypoint Section Entropy] : 5.10 (section #1) ".itext " | Size : 0xEC (236) byte(s) [DllCharacteristics] -> Flag : (0x0000) -> NONE [SectionCount] 8 (0x8) | ImageSize 0x10000 (65536) byte(s) [Export] 100% of function(s) (14 of 14) are in file | 0 are forwarded | 14 code | 0 data | 0 uninit data | 0 unknown | [VersionInfo] Company Name : David.D.Rocco [VersionInfo] Product Version : 1.0 [VersionInfo] File Description : Plugin for Inno Setup [VersionInfo] File Version : 1.0.0.7 [VersionInfo] Legal Copyrights : © 2012 Free Software [ModuleReport] [IAT] Modules -> oleaut32.dll | advapi32.dll | user32.dll | kernel32.dll | kernel32.dll | user32.dll | gdi32.dll | kernel32.dll | ole32.dll [CompilerDetect] -> Borland Delphi [!] File appears to have no protection or is using an unknown protection - Scan Took : 0.219 Second(s) [0000000DBh (219) tick(s)] [246 of 580 scan(s) done] --- snip ---
$ wine --version wine-3.11-150-g80205232d3
Regards