pginstaller - pginst: Fix two Vista issues found recently: Fix 1 *****

From: dpage(at)pgfoundry(dot)org (User Dpage)
To: pgsql-committers(at)postgresql(dot)org
Subject: pginstaller - pginst: Fix two Vista issues found recently: Fix 1 *****
Date: 2008-02-26 10:08:32
Message-ID: 20080226100832.8B54317ADCCD@pgfoundry.org
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-committers

Log Message:
-----------
Fix two Vista issues found recently:

Fix 1
*****

Per http://blogs.msdn.com/astebner/archive/2007/01/09/problems-with-custom-actions-that-depend-on-the-visual-c-8-0-runtime-files-on-windows-vista.aspx

On a Vista machine without the VC++ runtimes preinstalled, initdb will
fail. We fix that by bundling the vc_redist.exe runtime installer in
both the main installer package, and now in the no-installer package.
SETUP.bat and UPGRADE.bat are modified to run the runtime installer
with minimal UI, prior to launching the main installer.

Notes:

- We still ship the runtimes in the main installer so pre-Vista
machines can ignore SETUP.bat and the external installer if required.
- The version of vc_redist.exe shipped is that supplied with Visual
Studio, *not* the one offered for free download on the Microsoft
website. The latter version adds a second IExpress wrapper with a
EULA, and therefore requires a difference command line to install. The
correct version must be used.
- Users repackaging/silent installing the MSIs are responsible for
pre-installing the runtimes on their target machines.

Fix 2
*****

On Windows Vista, a service set to run with a user account of
<machinename>\<username> will cause the Service Control Manager to
start the Netlogon service as a dependency of PostgreSQL in some
circumstances. This fails on standalone machines as Netlogon will
terminate because it knows it's not on a domain and shouldn't be
needed, however this causes the SCM to terminate startup of Postgres
as well. This is resolved by using a user account in the form
.\<username>. To avoid using that potentially unclear notation in the
installer UI, the patch adds a SCMSERVICEDOMAIN property which is set
during the ServiceValidate action and used when installing the
service. If the domain specified matches the machine name, it sets it
to '.', otherwise it sets it to the value of SERVICEDOMAIN (which may
have been set to an actual domain name).

Modified Files:
--------------
pginst/ca:
pginstca.c (r1.119 -> r1.120)
(http://cvs.pgfoundry.org/cgi-bin/cvsweb.cgi/pginstaller/pginst/ca/pginstca.c.diff?r1=1.119&r2=1.120)
pginst/package:
setup.bat (r1.2 -> r1.3)
(http://cvs.pgfoundry.org/cgi-bin/cvsweb.cgi/pginstaller/pginst/package/setup.bat.diff?r1=1.2&r2=1.3)
upgrade.bat (r1.7 -> r1.8)
(http://cvs.pgfoundry.org/cgi-bin/cvsweb.cgi/pginstaller/pginst/package/upgrade.bat.diff?r1=1.7&r2=1.8)
pginst:
paths.projinc.in (r1.6 -> r1.7)
(http://cvs.pgfoundry.org/cgi-bin/cvsweb.cgi/pginstaller/pginst/paths.projinc.in.diff?r1=1.6&r2=1.7)
pginst.proj (r1.15 -> r1.16)
(http://cvs.pgfoundry.org/cgi-bin/cvsweb.cgi/pginstaller/pginst/pginst.proj.diff?r1=1.15&r2=1.16)
pginst/wxs:
pginst.wxs (r1.227 -> r1.228)
(http://cvs.pgfoundry.org/cgi-bin/cvsweb.cgi/pginstaller/pginst/wxs/pginst.wxs.diff?r1=1.227&r2=1.228)

Browse pgsql-committers by date

  From Date Subject
Next Message User Dpage 2008-02-26 10:10:15 pginstaller - pginst: Don't enable the debugger plugin by default.
Previous Message User Dpage 2008-02-26 10:07:49 pginstaller - pginst: Fix two Vista issues found recently: Fix 1 *****