[Distutils] bdist_innoinst ?!

M.-A. Lemburg mal@lemburg.com
Wed Jul 25 15:30:01 2001


Tim Peters wrote:
> 
> [MAL]
> > ... customized installs, add auxiliary package installs such as
> > MDAC or ship MSVC DLLs etc.
> 
> [Thomas Heller]
> > I have the impression that in these times (file system protection
> > in win2000) it is even more complicated to get it right, or maybe
> > even impossible to replace/update system dlls. I remember having
> > looked (some time ago, win95 was current at that time) into the
> > WISE supplied ODBC install script, IIRC it didn't really look so easy.
> 
> After the ancient Wise 5.0a installer PythonLabs still uses kept me up all
> night desperately trying to build a 2.2a1 Windows installer that worked,
> over the rest of that week I poked away at building an Inno installer for
> Python.  The result is in CVS, under PCbuild/python.iss.  It gets most of
> the job done, but not all.
> 
> I hit a brick wall with Inno when it came to distributing the MSVC runtime,
> and with writing to HKLM *or* HKCU (depending on the combo of whether the
> user needs admin privs to write to HKLM and whether the user *has* admin
> privs).  Inno doesn't appear up to these tasks:  it has no way to query
> whether the user is an admin, and no conditionals even if it did.  You can
> tell Inno to *require* admin privs, but then the script stops with an error
> msg if the user doesn't have them.  All MSVC runtime DLLs must be installed
> with Inno's "restartreplace" flag, and that requires admin privs on W2K
> boxes.  See
> 
>     http://www.jrsoftware.org/ishowto.phtml?a=vc
> 
> for the full Inno story here.

I've just skimmed the Inno docs, but it seems that you can
work around these issues by providing a custom little EXE which
does all the tricks you want (according to the docs you just 
have to place it into the [Run] section).

	http://www.jrsoftware.org/ishowto.phtml?a=custom

You might even be able to place a call to vcredist.exe into
that section (I just don't know how to stop the .exe from
giving me the reboot box).

-- 
Marc-Andre Lemburg
CEO eGenix.com Software GmbH
______________________________________________________________________
Company & Consulting:                           http://www.egenix.com/
Python Software:                        http://www.lemburg.com/python/