https://bugs.winehq.org/show_bug.cgi?id=35390
Anastasius Focht focht@gmx.net changed:
What |Removed |Added ---------------------------------------------------------------------------- Keywords| |download, Installer Status|RESOLVED |REOPENED URL| |http://orange.micrologik.fr | |/Progs/SSD/Samsung_Magician | |_Setup_v4.0.exe CC| |focht@gmx.net Resolution|INVALID |--- Summary|Samsung_Magician_Setup_v4.0 |Samsung Magician v4.0 fails |.exe fails to install |to install | |(SWbemLocator.ConnectServer | |method dispargs are | |optional) Ever confirmed|0 |1
--- Comment #5 from Anastasius Focht focht@gmx.net --- Hello folks,
I don't see a reason why this doesn't qualify for a valid bug :-) Fixing any kind of misbehaviour might improve the situation for other apps.
Found a download for v4.0 here: http://orange.micrologik.fr/Progs/SSD/Samsung_Magician_Setup_v4.0.exe
I ran the sub-installer with some parameters to shorten log/debugging a bit...
Relevant part of trace log:
--- snip --- $ pwd /home/focht/.wine/drive_c/users/focht/Temp/is-V24S5.tmp
$ WINEDEBUG=+tid,+seh,+relay,+wbemprox,+wbemdisp,+ole,+variant wine Samsung_Magician_Setup_v4.0.tmp /SL5="$10066,7905800,379904,Z:\home\focht\Downloads\Samsung_Magician_Setup_v4.0.exe"
log.txt 2>&1
... 0024:trace:wbemdisp:locator_Invoke 0x14cb28, 1, {00000000-0000-0000-0000-000000000000}, 2048, 3, 0x33f94c, 0x603210, 0x33f970, 0x33f968 0024:trace:ole:ITypeInfo_fnInvoke (0x1592c8)(0x14cb28,id=1,flags=0x00000003,0x33f94c,0x603210,0x33f970,0x33f968) 0024:trace:ole:dump_DispParms args=4 named args=0 0024:trace:ole:dump_DispParms args: 0024:trace:ole:dump_Variant 0x681d88->{VT_BSTR,(null)} 0024:trace:ole:dump_Variant 0x681d98->{VT_BSTR,(null)} 0024:trace:ole:dump_Variant 0x681da8->{VT_BSTR,L"root\CIMV2"} 0024:trace:ole:dump_Variant 0x681db8->{VT_BSTR,(null)} 0024:trace:ole:ITypeInfo_fnInvoke invoking: L"ConnectServer"(9) parm0: L"strServer" parm1: L"strNamespace" parm2: L"strUser" parm3: L"strPassword" parm4: L"strLocale" parm5: L"strAuthority" parm6: L"iSecurityFlags" parm7: L"objWbemNamedValueSet" parm8: L"objWbemServices" memid is 00000001 Param 0: tdesc.vartype 8 (VT_BSTR) u.paramdesc.wParamFlags PARAMFLAG_FIN u.paramdesc.lpex (nil) Param 1: tdesc.vartype 8 (VT_BSTR) u.paramdesc.wParamFlags PARAMFLAG_FIN u.paramdesc.lpex (nil) Param 2: tdesc.vartype 8 (VT_BSTR) u.paramdesc.wParamFlags PARAMFLAG_FIN u.paramdesc.lpex (nil) Param 3: tdesc.vartype 8 (VT_BSTR) u.paramdesc.wParamFlags PARAMFLAG_FIN u.paramdesc.lpex (nil) Param 4: tdesc.vartype 8 (VT_BSTR) u.paramdesc.wParamFlags PARAMFLAG_FIN u.paramdesc.lpex (nil) Param 5: tdesc.vartype 8 (VT_BSTR) u.paramdesc.wParamFlags PARAMFLAG_FIN u.paramdesc.lpex (nil) Param 6: tdesc.vartype 3 (VT_I4) u.paramdesc.wParamFlags PARAMFLAG_FIN u.paramdesc.lpex (nil) Param 7: tdesc.vartype 9 (VT_DISPATCH) u.paramdesc.wParamFlags PARAMFLAG_FIN u.paramdesc.lpex (nil) Param 8: tdesc.vartype 26 (ptr to ptr to VT_USERDEFINED ref = 7d0) u.paramdesc.wParamFlags PARAMFLAG_FOUT PARAMFLAG_FRETVAL u.paramdesc.lpex (nil) funckind: 1 (pure virtual) invkind: 1 (func) callconv: 4 (stdcall) oVft: 28 cParamsOpt: 0 wFlags: 0 elemdescFunc (return value type): tdesc.vartype 25 (VT_HRESULT) u.paramdesc.wParamFlags PARAMFLAGS_NONE u.paramdesc.lpex (nil) helpstring: (null) entry: invalid 0024:Call ntdll.RtlAllocateHeap(00110000,00000008,00000156) ret=7ecbeaa7 0024:Ret ntdll.RtlAllocateHeap() retval=0015b710 ret=7ecbeaa7 0024:trace:ole:ITypeInfo_fnAddRef (0x159658)->ref is 1 0024:trace:ole:ITypeLib2_fnAddRef (0x14c408) ref=2 0024:trace:ole:ITypeInfo_fnGetRefTypeInfo (0x1592c8) hreftype 0x07d0 loaded SUCCESS (0x159658) 0024:trace:ole:ITypeInfo_fnGetTypeAttr (0x159658) 0024:Call ntdll.RtlAllocateHeap(00110000,00000000,0000004c) ret=7ecbeb3c 0024:Ret ntdll.RtlAllocateHeap() retval=0015b870 ret=7ecbeb3c 0024:trace:ole:ITypeInfo_fnReleaseTypeAttr (0x159658)->(0x15b870) 0024:Call ntdll.RtlFreeHeap(00110000,00000000,0015b870) ret=7ecbebfd 0024:Ret ntdll.RtlFreeHeap() retval=00000001 ret=7ecbebfd 0024:trace:ole:ITypeInfo_fnRelease (0x159658)->(0) 0024:trace:ole:ITypeLib2_fnRelease (0x14c408) ref=1 0024:trace:ole:ITypeInfo_fnInvoke changing args 0024:trace:ole:dump_Variant 0x681db8->{VT_BSTR,(null)} 0024:trace:ole:dump_Variant 0x681da8->{VT_BSTR,L"root\CIMV2"} 0024:trace:ole:dump_Variant 0x681d98->{VT_BSTR,(null)} 0024:trace:ole:dump_Variant 0x681d88->{VT_BSTR,(null)} 0024:Call ntdll.RtlFreeHeap(00110000,00000000,0015b710) ret=7ecbebfd 0024:Ret ntdll.RtlFreeHeap() retval=00000001 ret=7ecbebfd 0024:trace:ole:ITypeInfo_fnInvoke -- 0x8002000e 0024:trace:ole:ITypeInfo_fnRelease (0x1592c8)->(4294967295) 0024:Call KERNEL32.FormatMessageW(00003200,00000000,8002000e,00000000,0033f6f8,00000100,00000000) ret=00410e20 0024:Ret KERNEL32.FormatMessageW() retval=00000000 ret=00410e20 0024:Call KERNEL32.RaiseException(0eedfade,00000001,00000007,0033f8e4) ret=0049efd3 0024:trace:seh:raise_exception code=eedfade flags=1 addr=0x7b83a913 ip=7b83a913 tid=0024 0024:trace:seh:raise_exception info[0]=0049efd3 0024:trace:seh:raise_exception info[1]=0065e530 0024:trace:seh:raise_exception info[2]=8002000e 0024:trace:seh:raise_exception info[3]=00000000 0024:trace:seh:raise_exception info[4]=00000000 0024:trace:seh:raise_exception info[5]=0033f994 0024:trace:seh:raise_exception info[6]=0033f900 ... 0024:Call user32.MessageBoxW(00010092,006142fc L"INSTALLATION CANNOT CONTINUE: ''Windows Management Instrumentation'' service is disabled. Please enable and try again.",0065a13c L"Setup",00000040) ret=0047c3ce --- snip ---
The installer only passes four disp args with invoke call.
This is allowed because all '[in]' arguments for SWbemLocator.ConnectServer() method are also '[optional]'.
MSDN: http://msdn.microsoft.com/en-us/library/aa393720%28v=vs.85%29.aspx
Source: http://source.winehq.org/git/wine.git/blob/686de978c002a20964724c3586c207015...
--- snip --- 88 [ id(1) ] 89 HRESULT ConnectServer( 90 [in] BSTR strServer, 91 [in] BSTR strNamespace, 92 [in] BSTR strUser, 93 [in] BSTR strPassword, 94 [in] BSTR strLocale, 95 [in] BSTR strAuthority, 96 [in] long iSecurityFlags, 97 [in] IDispatch *objWbemNamedValueSet, 98 [out, retval] ISWbemServices **objWbemServices); --- snip ---
$ sha1sum Samsung_Magician_Setup_v4.0.exe e7335e889eb6868a6407a827bb4e0a6f6e1b4c50 Samsung_Magician_Setup_v4.0.exe
$ du -sh Samsung_Magician_Setup_v4.0.exe 8.0M Samsung_Magician_Setup_v4.0.exe
$ wine --version wine-1.7.10-428-g444c2b2
Regards