http://bugs.winehq.org/show_bug.cgi?id=12222
Summary: msiexec unhappy if invoked without argv[0] Product: Wine Version: CVS/GIT Platform: Other URL: http://jaman.com OS/Version: other Status: NEW Keywords: download, Installer, NoAppDBEntry, patch Severity: normal Priority: P2 Component: programs AssignedTo: wine-bugs@winehq.org ReportedBy: dank@kegel.com
The Jaman Player has To reproduce, first work around bug 12221 by executing http://appldnld.apple.com.edgesuite.net/content.info.apple.com/QuickTime/061...
Then run the installer: wine jaman-installer.exe This fails with a usage message from msiexec. It seems that msiexec is expecting GetCommandlineW to return a commandline starting with the executable name, but instead it gets one that starts with a space and then /i etc.
The /i is skipped (since msiexec is expecting argv[0] in that slot).
That sounds like the problem described here: http://blogs.msdn.com/oldnewthing/archive/2006/05/15/597984.aspx
The process is created with
0009:Call KERNEL32.CreateProcessA(00140bb8 "C:\windows\system32\msiexec.exe",00143600 " /i "C:\windows\profiles\dkegel\Application Data\jaman.com\Jaman Player\install\jaman-installer-beta1.2.msi" AI_SETUPEXEPATH="Z:\usr\local\google\bigdata\dkegel\installers\jaman-installer.exe" SETUPEXEDIR="Z:\usr\local\google\bigdata\dkegel\installers\"",00000000,00000000,00000000,00000020,00000000,00000000,0033fbe4,0033fc28) ret=00405825
I'll attach a kludgy workaround that makes the installer happy; it detects the situation by checking for commandlines that start with a space and then a slash. Total kludge-o-rama, we need to write a test for msiexec and see what it really does.