http://bugs.winehq.org/show_bug.cgi?id=12222 Darragh Bailey <felix(a)compsoc.nuigalway.ie> changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |felix(a)compsoc.nuigalway.ie --- Comment #6 from Darragh Bailey <felix(a)compsoc.nuigalway.ie> 2008-04-09 16:55:51 --- My testing of bug 9628 suggests that its exactly the same. In both cases lpApplicationName is set to the path to msiexec, and lpCommandline includes an extra space at the start which is then followed by "/i".
From my testing of CommandLineToArgvW on windows, it appears that it treats this as a special case. One or more spaces at the start of lpCommandline (CreateProcess), produces an argv[0] of "". This is also independent of the following argument.
From my reading of the msdn, the correct behaviour for developers using CreateProcess and not setting lpApplicationName to NULL, is to duplicate the exe name at the start of lpCommandline.
CommandLineToArgvW behaves in exactly the same fashion in wine, mimicking this odd behaviour. The problem occurs because in wine msiexec has its own implementation "process_args" which does not observe this quirky behaviour. Using CommandLineToArgvW in msiexec will fix this, but breaks the xlviewer installer since it does not reconstruct the argv correctly for msiexec to be able to use the arguments. See bug 9628 for the broken argv input. So unless CommandLineToArgvW has a bug in the case of the xlviewer installer, msiexec will need to either modify process_args to take a space as the first character on the command line as a special case, same as CommandLineToArgvW, or use CommandLineToArgvW and modify the returned argv to correctly put together any broken path arguments. -- Configure bugmail: http://bugs.winehq.org/userprefs.cgi?tab=email Do not reply to this email, post in Bugzilla using the above URL to reply. ------- You are receiving this mail because: ------- You are watching all bug changes.