http://bugs.winehq.org/show_bug.cgi?id=18575
Summary: FlashFXP installer quits: "Cannot register "C:\Program Files\FlashFXP\IEFlash.dll" Product: Wine Version: 1.1.22 Platform: PC URL: http://www.inicom.net/pages/en.ffxp-download.php OS/Version: Linux Status: NEW Keywords: download, Installer Severity: normal Priority: P2 Component: oleaut32 AssignedTo: wine-bugs@winehq.org ReportedBy: austinenglish@gmail.com
Follow up to bug 5131, FlashFXP's installer quits early, since it can't register its dll. A 'wineserver -k' will kill the installer, and it works fine, but if you click ok to the error, it will rollback the changes and uninstall.
Looking at a +relay: 001d:Call KERNEL32.FindFirstFileA(00d7ea6c "C:\Program Files\FlashFXP\IEFlash.dll",0199e6e4) ret=00406e6c 001d:Ret KERNEL32.FindFirstFileA() retval=ffffffff ret=00406e6c 001d:Call KERNEL32.MultiByteToWideChar(00000000,00000000,00d7ea6c "C:\Program Files\FlashFXP\IEFlash.dll",00000025,0199dff4,00000400) ret=00403d3a 001d:Ret KERNEL32.MultiByteToWideChar() retval=00000025 ret=00403d3a 001d:Call oleaut32.SysReAllocStringLen(0199e834,0199dff4,00000025) ret=00403d94 001d:Call ntdll.RtlAllocateHeap(00110000,00000000,00000050) ret=7e76369d 001d:Ret ntdll.RtlAllocateHeap() retval=00159338 ret=7e76369d 001d:Ret oleaut32.SysReAllocStringLen() retval=00000001 ret=00403d94 001d:Call sfc_os.SfcIsFileProtected(00000000,0015933c L"C:\Program Files\FlashFXP\IEFlash.dll") ret=0043cf6a 001d:Ret sfc_os.SfcIsFileProtected() retval=00000000 ret=0043cf6a 001d:Call oleaut32.SysFreeString(0015933c L"C:\Program Files\FlashFXP\IEFlash.dll") ret=00403cb3 001d:Call ntdll.RtlFreeHeap(00110000,00000000,00159338) ret=7e76383d 001d:Ret ntdll.RtlFreeHeap() retval=00000001 ret=7e76383d 001d:Ret oleaut32.SysFreeString() retval=00000001 ret=00403cb3 001d:Call KERNEL32.FindFirstFileA(00d7ea6c "C:\Program Files\FlashFXP\IEFlash.dll",0199e6a0) ret=00406e6c 001d:Ret KERNEL32.FindFirstFileA() retval=ffffffff ret=00406e6c 001d:Call KERNEL32.FindFirstFileA(00d7ea6c "C:\Program Files\FlashFXP\IEFlash.dll",0199e6a0) ret=00406e6c 001d:Ret KERNEL32.FindFirstFileA() retval=ffffffff ret=00406e6c 001d:Call KERNEL32.GetFileAttributesA(0069148c "C:\Program Files\FlashFXP") ret=004177c5 001d:Ret KERNEL32.GetFileAttributesA() retval=00000010 ret=004177c5 001d:Call KERNEL32.GetFileAttributesA(006bcc58 "C:\Program Files\FlashFXP\") ret=004177c5 001d:Ret KERNEL32.GetFileAttributesA() retval=00000010 ret=004177c5 001d:Call KERNEL32.VirtualAlloc(00ce0000,00010000,00001000,00000004) ret=00401652 001d:Ret KERNEL32.VirtualAlloc() retval=00ce0000 ret=00401652 001d:Call KERNEL32.VirtualFree(00ce0000,00010000,00004000) ret=004016d3 001d:Ret KERNEL32.VirtualFree() retval=00000001 ret=004016d3 001d:Call KERNEL32.FindFirstFileA(00d7ea6c "C:\Program Files\FlashFXP\IEFlash.dll",0199e698) ret=00406e6c 001d:Ret KERNEL32.FindFirstFileA() retval=ffffffff ret=00406e6c 001d:Call ntdll.strcat(0199e800 "Z:\home\austin\Desktop\",1000a168 "FlashFXP_36_Setup.exe") ret=100014ac 001d:Ret ntdll.strcat() retval=0199e800 ret=100014ac 001d:Call ntdll._stricmp(0199e800 "Z:\home\austin\Desktop\FlashFXP_36_Setup.exe",1000a708 "C:\Program Files\FlashFXP\IEFlash.dll") ret=100014b9 001d:Ret ntdll._stricmp() retval=00000017 ret=100014b9 001d:Call KERNEL32.CreateFileA(1000a708 "C:\Program Files\FlashFXP\IEFlash.dll",40000000,00000003,0199e7a4,00000004,00000080,00000000) ret=7e06d71a
points to oleaut32. Indeed, 'winetricks -q dcom98' lets the installer proceed as normal.