http://bugs.winehq.org/show_bug.cgi?id=35445
--- Comment #3 from Anastasius Focht focht@gmx.net --- Hello Nikolay,
looks fine to me.
--- snip --- ... 0024:trace:scrrun:folder_Invoke (0x171038)->(0 {00000000-0000-0000-0000-000000000000} 0 2 0x7e8ced10 0x33f2f8 (nil) (nil)) 0024:trace:ole:ITypeInfo_fnInvoke (0x1c6d90)(0x171038,id=0,flags=0x00000002,0x7e8ced10,0x33f2f8,(nil),(nil)) 0024:trace:ole:dump_DispParms args=0 named args=0 0024:trace:ole:ITypeInfo_fnInvoke invoking: L"Path"(1) parm0: L"pbstrPath" memid is 00000000 Param 0: tdesc.vartype 26 (ptr to VT_BSTR) u.paramdesc.wParamFlags PARAMFLAG_FOUT PARAMFLAG_FRETVAL u.paramdesc.lpex (nil) funckind: 1 (pure virtual) invkind: 2 (property get) 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,00000026) ret=7e7c1a73 0024:Ret ntdll.RtlAllocateHeap() retval=001d0230 ret=7e7c1a73 0024:trace:ole:ITypeInfo_fnInvoke changing args 0024:trace:ole:DispCallFunc (0x171038, 28, 4, 10, 1, 0x1d0254, 0x1d0250, 0x33ef90 (vt=10)) 0024:Call ntdll.RtlAllocateHeap(00110000,00000000,00000018) ret=7e7c1b08 0024:Ret ntdll.RtlAllocateHeap() retval=001d0260 ret=7e7c1b08 0024:trace:ole:DispCallFunc arg 0: type 16392 0024:trace:ole:dump_Variant 0x1d0230->{VT_BSTR|VT_BYREF,0x33ef80} 0024:trace:scrrun:folder_get_Path (0x171038)->(0x33ef80) 0024:Call oleaut32.SysAllocString(0017110c L"C:\CPCe_41_inst\codeimages") ret=7d6ca0ad ... 0024:trace:ole:ITypeInfo_fnInvoke -- 0x00000000 ... 0024:trace:scrrun:file_Invoke (0x1d01c0)->(1000 {00000000-0000-0000-0000-000000000000} 1033 3 0x33f558 0x33f7a8 0x33f538 0x33f568) 0024:trace:ole:ITypeInfo_fnInvoke (0x1c85e0)(0x1d01c0,id=1000,flags=0x00000003,0x33f558,0x33f7a8,0x33f538,0x33f568) 0024:trace:ole:dump_DispParms args=0 named args=0 0024:trace:ole:ITypeInfo_fnInvoke invoking: L"Name"(1) parm0: L"pbstrName" memid is 000003e8 Param 0: tdesc.vartype 26 (ptr to VT_BSTR) u.paramdesc.wParamFlags PARAMFLAG_FOUT PARAMFLAG_FRETVAL u.paramdesc.lpex (nil) funckind: 1 (pure virtual) invkind: 2 (property get) callconv: 4 (stdcall) oVft: 32 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:trace:scrrun:file_get_Name L"aa_cs.jpg" ... 0024:trace:ole:ITypeInfo_fnInvoke -- 0x00000000 ... 0024:RET MSVBVM60.__vbaVarLateMemCallLd() retval=0033f7a8 ret=0055180a 0024:CALL MSVBVM60.__vbaVarCat(0033f798,0033f7a8,0033f7b8) ret=0055181b 0024:Call oleaut32.VarCat(0033f7b8,0033f7a8,0033f798) ret=660e5ef8 0024:trace:variant:VarCat (0x33f7b8->(VT_BSTR),0x33f7a8->(VT_BSTR),0x33f798) 0024:trace:variant:VariantInit (0x33f508) 0024:trace:variant:VariantInit (0x33f4f8) 0024:trace:variant:VarBstrCat L"C:\CPCe_41_inst\codeimages\",L"aa_cs.jpg",0x33f7a0 0024:trace:variant:VarBstrCat L"C:\CPCe_41_inst\codeimages\aa_cs.jpg" 0024:trace:variant:VariantClear (0x33f508->(VT_EMPTY)) 0024:trace:variant:VariantClear (0x33f4f8->(VT_EMPTY)) 0024:Ret oleaut32.VarCat() retval=00000000 ret=660e5ef8 0024:RET MSVBVM60.__vbaVarCat() retval=0033f798 ret=0055181b 0024:CALL MSVBVM60.rtcTrimVar(0033f788,0033f798) ret=00551829 0024:Call oleaut32.SysAllocStringLen(001bbadc L"C:\CPCe_41_inst\codeimages\aa_cs.jpg",00000024) ret=660e6b96 ... --- snip ---
Next issue is IFileCollection iterator.
Dmitry already fixed IFolderCollection (patches recently went in).
--- snip --- 0024:trace:scrrun:filecoll_enumvariant_Next (0x1cd690)->(1 0x33f8a0 (nil)) 0024:Call KERNEL32.FindNextFileW(001cd640,0033f2dc) ret=7d6c81be 0024:Ret KERNEL32.FindNextFileW() retval=00000000 ret=7d6c81be ... 0024:trace:ole:SysAllocStringLen L"C:\CPCe_41_inst\codeimages\\f3d03\03e2" 0024:Ret oleaut32.SysAllocString() retval=001d01c4 ret=7d6c6735 .. 0024:Call KERNEL32.GetFullPathNameW(001d01c4 L"C:\CPCe_41_inst\codeimages\\f3d03\03e2",00000000,00000000,00000000) ret=7d6cc1a9 0024:Ret KERNEL32.GetFullPathNameW() retval=0000001f ret=7d6cc1a9 ... 0024:Call KERNEL32.GetFullPathNameW(001d01c4 L"C:\CPCe_41_inst\codeimages\\f3d03\03e2",0000001f,001d02c0,00000000) ret=7d6cc220 0024:Ret KERNEL32.GetFullPathNameW() retval=0000001e ret=7d6cc220 0024:Call KERNEL32.GetFileAttributesW(001d02c0 L"C:\CPCe_41_inst\codeimages\\f3d03\03e2") ret=7d6cc29f 0024:Ret KERNEL32.GetFileAttributesW() retval=ffffffff ret=7d6cc29f ... 0024:Call oleaut32.SysFreeString(001d01c4 L"C:\CPCe_41_inst\codeimages\\f3d03\03e2") ret=7d6c8221 0024:Ret oleaut32.SysFreeString() retval=00000000 ret=7d6c8221 0024:trace:scrrun:enumvariant_QueryInterface (0x1cd690)->({df0b3d60-548f-101b-8e65-08002b2bd119} 0x33f584) 0024:trace:scrrun:filecoll_enumvariant_Release (0x1cd690)->(0) 0024:trace:scrrun:filecoll_Release (0x1cd628)->(1) ... 0024:Call KERNEL32.RaiseException(c000008f,00000001,00000002,0033f518) ret=660d0956 0024:trace:seh:raise_exception code=c000008f flags=1 addr=0x7b83a97b ip=7b83a97b tid=0024 0024:trace:seh:raise_exception info[0]=deadcafe 0024:trace:seh:raise_exception info[1]=deadcafe 0024:trace:seh:raise_exception eax=7b8269e1 ebx=7b8bb000 ecx=deadcafe edx=0033f474 esi=0033f518 edi=0033f4e0 0024:trace:seh:raise_exception ebp=0033f4b8 esp=0033f454 cs=0023 ds=002b es=002b fs=0063 gs=006b flags=00000283 0024:trace:seh:call_stack_handlers calling handler at 0x408bb6 code=c000008f flags=1 ... 0024:Call winex11.drv.SetWindowText(000100c4,001d5a58 L"Run-time error '53':\n\nFile not found") ret=7ec9f739 --- snip ---
Regards