[Distutils] problem with bdist_msi post-install script

Bill Janssen janssen at parc.com
Mon Mar 22 18:48:19 CET 2010


Martin v. Löwis <martin at v.loewis.de> wrote:

> > But this doesn't look quite complete.  I don't see where the Python
> > interpreter is actually invoked here.  (Cute trick swapping the args,
> > by the way).
> > 
> > Which is presumably why, in finalize_options, we find:
> > 
> >         if self.pre_install_script:
> >             raise DistutilsOptionError, "the pre-install-script feature is not yet implemented"
> > 
> > Shouldn't the custom action be this:
> > 
> >             add_data(self.db, "CustomAction",
> >                 [("PreInstall", 2, "PreInstall", '"PYTHON"'),
> >                 ])
> 
> I don't remember the details, but one problem might have been that
> custom action 2 is defined as "EXE file stored in a Binary table
> stream." Not sure whether batch files are even allowed here.

Apparently not.


MSI (s) (2C:A0) [10:44:12:462]: Doing action: PreInstall
Action 10:44:12: PreInstall. 
Action start 10:44:12: PreInstall.
MSI (s) (2C:A0) [10:44:12:492]: Note: 1: 1721 2: PreInstall 3: C:\WINDOWS\Installer\MSIB7.tmp 4: "C:\Python26\\python.exe" 
MSI (s) (2C:A0) [10:44:12:492]: Note: 1: 2262 2: Error 3: -2147287038 
MSI (c) (6C:C4) [10:44:12:502]: Note: 1: 2262 2: Error 3: -2147287038 
DEBUG: Error 2888:  Executing the Binary view failed
The installer has encountered an unexpected error installing this package. This may indicate a problem with this package. The error code is 2888. The arguments are: Binary, , 
Error 1721. There is a problem with this Windows Installer package. A program required for this install to complete could not be run. Contact your support personnel or package vendor. Action: PreInstall, location: C:\WINDOWS\Installer\MSIB7.tmp, command: "C:\Python26\\python.exe" 
MSI (s) (2C:A0) [10:44:14:545]: Note: 1: 2262 2: Error 3: -2147287038 
MSI (s) (2C:A0) [10:44:14:545]: Product: UpLib-1.7.9 -- Error 1721. There is a problem with this Windows Installer package. A program required for this install to complete could not be run. Contact your support personnel or package vendor. Action: PreInstall, location: C:\WINDOWS\Installer\MSIB7.tmp, command: "C:\Python26\\python.exe" 

Action ended 10:44:14: PreInstall. Return value 3.


Looks like we need JScript (what can that do, though?) or VBScript.

By the way, the double backslashes don't seem to be a problem.

Bill


More information about the Distutils-SIG mailing list