http://bugs.winehq.org/show_bug.cgi?id=18097
Summary: Missing extrac32.exe tool causes some prerequisite installers to fail (msjavx86.exe) Product: Wine Version: 1.1.19 Platform: Other URL: http://www.microsoft.com/downloads/details.aspx?FamilyID =1dacdb3d-50d1-41b2-a107-fa75ae960856&di OS/Version: other Status: UNCONFIRMED Severity: normal Priority: P2 Component: -unknown AssignedTo: wine-bugs@winehq.org ReportedBy: focht@gmx.net
Hello,
while testing old stuff, I noticed some installers require "extrac32.exe" utility present in system32.
An example is the M$ Java VM prerequisite installer "msjavx86.exe" from M$ Visual C++ 6.0 and Embedded Visual C++ 4.x.
Due to missing extrac32.exe:
--- snip --- 002b:Call user32.SetDlgItemTextA(00060034,000003e9,0033f2e0 "Installing Component: XML Classes") ret=00401392 ... 002b:Call KERNEL32.CreateProcessW(00000000,0033ced4 L"C:\windows\system32\extrac32.exe /c /y C:\windows\temp\IXP000.TMP\xmldso.cab C:\windows\Java\Classes\xmldso.cab",00000000,00000000,00000000,04000200,00000000,00150440 L"C:\windows\temp\IXP000.TMP",0033ce60,0033ce50) ret=714d15da ... 002b:Call KERNEL32.CreateProcessW(00000000,0033ced4 L"rundll32 C:\windows\system32\msjava.dll,JavaPkgMgr_Install C:\windows\Java\classes\xmldso.cab,0,0,0,0,4,42",00000000,00000000,00000000,04000200,00000000,00150450 L"C:\windows\temp\IXP000.TMP",0033ce60,0033ce50) ret=714d15da --- snip ---
failure later:
--- snip --- 002b:Call KERNEL32.CreateProcessW(00000000,0033ced4 L"rundll32 C:\windows\system32\msjava.dll,JavaPkgMgr_Install C:\windows\Java\classes\xmldso.cab,0,0,0,0,4,42",00000000,00000000,00000000,04000200,00000000,00150450 L"C:\windows\temp\IXP000.TMP",0033ce60,0033ce50) ret=714d15da ... 0047:CALL msjava.JavaPkgMgr_Install(<unknown, check return>) ret=601d6475 0047:Call KERNEL32.lstrcpynA(0033fa90,0012fd48 "C:\windows\Java\classes\xmldso.cab,0,0,0,0,4,42",00000023) ret=00500bf4 ... 0047:Call KERNEL32.GetFullPathNameA(0033fa90 "C:\windows\Java\classes\xmldso.cab",00000105,0033f880,0033fd10) ret=005012e8 0047:Ret KERNEL32.GetFullPathNameA() retval=00000022 ret=005012e8 0047:Call KERNEL32.GetFileAttributesA(0033f880 "C:\windows\Java\classes\xmldso.cab") ret=00516697 0047:Ret KERNEL32.GetFileAttributesA() retval=ffffffff ret=00516697 ... 0047:Call user32.MessageBoxA(00000000,0033ef54 "Unable to install Java packages from C:\windows\Java\classes\xmldso.cab.\r\n\r\nUnknown HRESULT: (80070002h)",00133bd0 "Java Package Manager",00000030) ret=00500fe4 .... --- snip ---
Bug 12852 was initially about this problem but that app no longer ships with this dependency and the issue went out of focus. Therefore I create a separate bug for this "extrac32.exe" tool.
A wine-devel thread talked about this tool some time ago:
http://www.winehq.org/pipermail/wine-devel/2007-July/057886.html
It looks like the Ethersoft guys went their own route ... A google search didn't really come up with useful info.
Although it says the tool is "part of Internet Explorer" all installers will detect IE already installed in WINEPREFIX and do not attempt to install any earlier version (like IE4). Hence Extrac32.exe will never be installed as prerequisite.
Extrac32 is the win32 gui version of the console "extract" utility from Microsoft Cabinet Software Development Kit.
--- snip --- EXTRACT [/Y] [/A] [/D | /E] [/L dir] cabinet [filename ...] EXTRACT [/Y] source [newname] EXTRACT [/Y] /C source destination
cabinet - Cabinet file (contains two or more files). filename - Name of the file to extract from the cabinet. Wild cards and multiple filenames (separated by blanks) may be used.
source - Compressed file (a cabinet with only one file). newname - New filename to give the extracted file. If not supplied, the original name is used.
/A Process ALL cabinets. Follows cabinet chain starting in first cabinet mentioned. /C Copy source file to destination (to copy from DMF disks). /D Display cabinet directory (use with filename to avoid extract). /E Extract (use instead of *.* to extract all files). /L dir Location to place extracted files (default is current directory). /Y Do not prompt before overwriting an existing file. --- snip ---
Maybe another attempt can be made by someone to get this tool in to fix older installers.
Regards