Thread: pgAdmin3 1.12.2 won't start on WinXP

pgAdmin3 1.12.2 won't start on WinXP

From
Bexley Hall
Date:
Hi,

I'm traveling so I threw together an XP laptop to allow me to
populate some PG tables while on the road.

I installed PostgreSQL 8.4.6.1 (to "Program Files\PostgreSQL") 
and pgAdmin 1.12.2 (to "Program Files\pgAdmin III").  This 
resulted in two copies of pgAdmin3 being present on the laptop
(1.10.5 in ...\PostgreSQL and 1.12.2 in ...\pgAdmin III).

As an "unpriveleged user" (Group = "Users"), I was unable to run
the *newer* pgAdmin3.  However, it appeared that the "original"
pgAdmin3 (in ...\PostgreSQL) *did* work properly.

[note all of these tests have been simple cursory inspections...
just try to connect to the PG server running on the local machine]

Invoking the 1.12.2 version resulted in a dialog complaining
"This application has failed to start because the application
configuration is incorrect..."

I spent some time wondering if the problem was related to the
"non-Administrator" account.  So, I tried both pgAdmin3's from
an administrator account and saw the same results!

I *tentatively* deduced that the problem was not related to the
privilege level of the user running the application.

Having saved a snapshot of the system (i.e., complete disk image)
*prior* to any applications being installed, I restored that
snapshot to try to isolate the problem.

[The snapshot represents a "genuine" XP SP2 from the laptop vendor's
CD, updates of all drivers from the manufacturer, a local install
of SP3 followed by all security and driver updates from MS's "Windows
Update" service -- i.e., a "clean", up-to-date XP system.  N.B.  I
can't imagine *anyone* troubleshooting a system without such a
snapshot to fall back to!]

Then, I installed PostgreSQL (8.4.6.1) with its bundled pgAdmin3
(1.10.5).  Next, I installed pgAdmin3 1.12.2 as above.  Invoking
the 1.12.2 version complained while subsequently invoking the
1.10.5 version did not (i.e., the symptoms remain the same as
originally encountered).

This suggests that the problem is not consequential to some other
application that had been installed prior to the original PostgreSQL
and pgAdmin3 applications.

Once again, I restored the disk image and installed *just* the
1.12.2 version of pgAdmin3 (again, to "Program Files\pgAdmin III").
I.e., PostgreSQL and the 1.10.5 version of pgAdmin3 are *not* present
in this system configuration (so I don't expect to be able to
connect to any local server).

Invoking this pgAdmin3 (1.12.2) resulted in the same behavior.

Having isolated the behavior to the pgAdmin3 1.12.2 version, I
compared a fresh download to the image that I have been using for
my installs and verified they are in agreement.

http://wwwmaster.postgresql.org/redir/198/h/pgadmin3/release/v1.12.2/win32/pgadmin3-1.12.2.zip

[Hmmm... in retrospect, I guess I could have abbreviated this report to:
"1.12.2 complains '... failed to start...' on virgin, up-to-date XP"]

I've checked the 1.12 FAQ and known bugs and see no mention of this
behavior.  And, since I've stripped the environment to the minimum
supported above "bare metal", I am clueless as to what else to try.

Thanks!

--don

[Apologies if I am slow to reply as I am traveling and not well-connected]


     


Re: pgAdmin3 1.12.2 won't start on WinXP

From
Dave Page
Date:
On Mon, Jan 31, 2011 at 12:49 AM, Bexley Hall <bexley401@yahoo.com> wrote:
>
> Invoking the 1.12.2 version resulted in a dialog complaining
> "This application has failed to start because the application
> configuration is incorrect..."

It sounds like you don't have the correct version of the MSVC++
runtimes installed - which is odd, as they're included in the pgAdmin
installer. Try reinstalling them:

http://www.microsoft.com/downloads/en/details.aspx?FamilyID=9b2da534-3e03-4391-8a4d-074b9f2bc1bf


-- 
Dave Page
Blog: http://pgsnake.blogspot.com
Twitter: @pgsnake

EnterpriseDB UK: http://www.enterprisedb.com
The Enterprise PostgreSQL Company


Re: pgAdmin3 1.12.2 won't start on WinXP

From
Bexley Hall
Date:
Hi Dave,

--- On Mon, 1/31/11, Dave Page <dpage@pgadmin.org> wrote:

> Bexley Hall <bexley401@yahoo.com> wrote:
>
> > Invoking the 1.12.2 version resulted in a dialog complaining
> > "This application has failed to start because the application
> > configuration is incorrect..."
> 
> It sounds like you don't have the correct version of the MSVC++
> runtimes installed - which is odd, as they're included in the pgAdmin
> installer. Try reinstalling them:
> 
> http://www.microsoft.com/downloads/en/details.aspx?FamilyID=9b2da534-3e03-4391-8a4d-074b9f2bc1bf

I searched the "post pgAdmin3" machine image for "mfc90.dll"
and didn't find it anywhere.  Presumably, 1.10.5 did *not*
require this runtime?

Installing the above URL resulted in a copy of mfc90.dll
turning up under Windows\WinSxS...

And, not surprisingly, pgAdmin3 1.12.2 now starts correctly.

Are you *sure* the pgAdmin installer is configured to install it?
(I don't have the tools with me to examine the .msi itself)

Also, the above URL indicates a *newer* version of the runtime
is available ("SP1"). Should that, instead, be installed?

Thanks for your help!  Let me know if there is anything else I
can capture from the install process to assist you in chasing this
down (hmmm... I should turn on the installer's logging and take
a peek at that)

--don

     


Re: pgAdmin3 1.12.2 won't start on WinXP

From
Dave Page
Date:
On Mon, Jan 31, 2011 at 8:03 PM, Bexley Hall <bexley401@yahoo.com> wrote:
> Hi Dave,
>
> --- On Mon, 1/31/11, Dave Page <dpage@pgadmin.org> wrote:
>
>> Bexley Hall <bexley401@yahoo.com> wrote:
>>
>> > Invoking the 1.12.2 version resulted in a dialog complaining
>> > "This application has failed to start because the application
>> > configuration is incorrect..."
>>
>> It sounds like you don't have the correct version of the MSVC++
>> runtimes installed - which is odd, as they're included in the pgAdmin
>> installer. Try reinstalling them:
>>
>> http://www.microsoft.com/downloads/en/details.aspx?FamilyID=9b2da534-3e03-4391-8a4d-074b9f2bc1bf
>
> I searched the "post pgAdmin3" machine image for "mfc90.dll"
> and didn't find it anywhere.  Presumably, 1.10.5 did *not*
> require this runtime?

No. It used the VC++ 2005 runtime.

> Installing the above URL resulted in a copy of mfc90.dll
> turning up under Windows\WinSxS...
>
> And, not surprisingly, pgAdmin3 1.12.2 now starts correctly.
>
> Are you *sure* the pgAdmin installer is configured to install it?
> (I don't have the tools with me to examine the .msi itself)

Positive. See
http://git.postgresql.org/gitweb?p=pgadmin3.git;a=blob;f=pkg/win32/src/pgadmin3.wxs;h=d836c41f8a9f2cd4c8233347250b1dd6fd60574d;hb=6861d498b619b39d0a083da115b8beaf1b771b89,
specifically the lines:

<Merge Id="CRT" Language="0" SourceFile="$(env.ProgramFiles)\Common
Files\Merge Modules\Microsoft_vc90_crt_x86.msm" DiskId="1" />

and

<MergeRef Id="CRT" />


--
Dave Page
Blog: http://pgsnake.blogspot.com
Twitter: @pgsnake

EnterpriseDB UK: http://www.enterprisedb.com
The Enterprise PostgreSQL Company


Re: pgAdmin3 1.12.2 won't start on WinXP

From
Bexley Hall
Date:
Hi Dave,

--- On Mon, 1/31/11, Dave Page <dpage@pgadmin.org> wrote:

> >> It sounds like you don't have the correct version of the MSVC++
> >> runtimes installed - which is odd, as they're included in the pgAdmin
> >> installer. Try reinstalling them:
> >>
> >> http://www.microsoft.com/downloads/en/details.aspx?FamilyID=9b2da534-3e03-4391-8a4d-074b9f2bc1bf
> >
> > I searched the "post pgAdmin3" machine image for "mfc90.dll"
> > and didn't find it anywhere.  Presumably, 1.10.5 did *not*
> > require this runtime?
>
> No. It used the VC++ 2005 runtime.

OK.

> > Installing the above URL resulted in a copy of mfc90.dll
> > turning up under Windows\WinSxS...
> >
> > And, not surprisingly, pgAdmin3 1.12.2 now starts correctly.
> >
> > Are you *sure* the pgAdmin installer is configured to install it?
> > (I don't have the tools with me to examine the .msi itself)
>
> Positive. See
http://git.postgresql.org/gitweb?p=pgadmin3.git;a=blob;f=pkg/win32/src/pgadmin3.wxs;h=d836c41f8a9f2cd4c8233347250b1dd6fd60574d;hb=6861d498b619b39d0a083da115b8beaf1b771b89,
> specifically the lines:
>
> <Merge Id="CRT" Language="0"
> SourceFile="$(env.ProgramFiles)\Common
> Files\Merge Modules\Microsoft_vc90_crt_x86.msm" DiskId="1"
> />
>
> and
>
> <MergeRef Id="CRT" />

<shrug>  Dunno.  "I don't do windows"  :>

I re-ran the experiment (pgadmin3 onto "virgin, up-to-date XP
install") and still don't see any signs of this package being
drawn in.  Would you like me to forward the installer's
log file to you directly?  (too big to post, here -- ~750KB)

I'll take a quick glance through it to see if anything obvious
turns up but otherwise I'm not qualified to understand what
it is (or, in this case, is NOT) doing to comment intelligently.

I can likewise forward a (manually authored) log of the steps
by which I created the "virgin, up-to-date XP install" so you
can see the "updates", etc. that were drawn into it...

Thx,
--don





Re: pgAdmin3 1.12.2 won't start on WinXP

From
Dave Page
Date:
On Mon, Jan 31, 2011 at 11:01 PM, Bexley Hall <bexley401@yahoo.com> wrote:

> I re-ran the experiment (pgadmin3 onto "virgin, up-to-date XP
> install") and still don't see any signs of this package being
> drawn in.  Would you like me to forward the installer's
> log file to you directly?  (too big to post, here -- ~750KB)

No need thanks - I ran the same test here, and see it is being installed.

The problem appears to be this...

The code is built using VC++ 2008 SP1, however, the generated manifest
requires the non-SP1 version of the runtimes. As I'm running with SP1,
that's the version that is included in the merge module the installer
uses.

So, there are two issues here which are not as I expect:

1) Why is VC++ 2008 SP1 requiring the use of the pre-SP1 runtimes?

2) I thought that one of the benefits of side by side assemblies was
that an executable built using an old version would automatically use
a newer version if present. I guess I'm missing something here.

More research required...

--
Dave Page
Blog: http://pgsnake.blogspot.com
Twitter: @pgsnake

EnterpriseDB UK: http://www.enterprisedb.com
The Enterprise PostgreSQL Company


Re: pgAdmin3 1.12.2 won't start on WinXP

From
Bexley Hall
Date:
Hi Dave,

--- On Tue, 2/1/11, Dave Page <dpage@pgadmin.org> wrote:

> Bexley Hall <bexley401@yahoo.com> wrote:
>
> > I re-ran the experiment (pgadmin3 onto "virgin, up-to-date XP
> > install") and still don't see any signs of this package being
> > drawn in.  Would you like me to forward the installer's
> > log file to you directly?  (too big to post, here -- ~750KB)
>
> No need thanks - I ran the same test here, and see it is
> being installed.

Wait, it *is* being installed in your case?   So, what's the
difference between *your* "virgin, up-to-date XP" and *mine*?

> The problem appears to be this...
>
> The code is built using VC++ 2008 SP1, however, the generated manifest
> requires the non-SP1 version of the runtimes. As I'm running with SP1,
> that's the version that is included in the merge module the installer
> uses.

So, you *want* and have included the SP1 version in the MSI.
Yet the MSI thinks it needs to install the "SP0" version
(which is not present in the MSI and, in my case, not present
on the machine)?

> So, there are two issues here which are not as I expect:
>
> 1) Why is VC++ 2008 SP1 requiring the use of the pre-SP1
> runtimes?

Does it require "SP0" *before* it can install the SP1 (i.e.,
as a prerequisite)?  Or, are you thinking this behavior is
"just wrong"?
> 2) I thought that one of the benefits of side by side
> assemblies was that an executable built using an old version
> would automatically use a newer version if present. I guess
> I'm missing something here.
>
> More research required...

Let me know if there is anything I can grep from my system
to assist.

Thanks!
--don





Re: pgAdmin3 1.12.2 won't start on WinXP

From
Dave Page
Date:
On Wed, Feb 2, 2011 at 6:27 AM, Bexley Hall <bexley401@yahoo.com> wrote:
>> The code is built using VC++ 2008 SP1, however, the generated manifest
>> requires the non-SP1 version of the runtimes. As I'm running with SP1,
>> that's the version that is included in the merge module the installer
>> uses.
>
> So, you *want* and have included the SP1 version in the MSI.
> Yet the MSI thinks it needs to install the "SP0" version
> (which is not present in the MSI and, in my case, not present
> on the machine)?

No. I want, and the MSI installs the SP1 version of the runtimes. The
compiler is linking the binary against "SP0" though (despite the fact
that VC++ claims to be the SP1 version).

>> So, there are two issues here which are not as I expect:
>>
>> 1) Why is VC++ 2008 SP1 requiring the use of the pre-SP1
>> runtimes?
>
> Does it require "SP0" *before* it can install the SP1 (i.e.,
> as a prerequisite)?  Or, are you thinking this behavior is
> "just wrong"?

It shouldn't do. If it did, why would the upgrade of Visual Studio to
SP1 *replace* the runtime merge module with the SP1 version?

>> 2) I thought that one of the benefits of side by side
>> assemblies was that an executable built using an old version
>> would automatically use a newer version if present. I guess
>> I'm missing something here.
>>
>> More research required...
>
> Let me know if there is anything I can grep from my system
> to assist.

I think I just need some time to figure it out at this stage. Time I
don't really have right now.


--
Dave Page
Blog: http://pgsnake.blogspot.com
Twitter: @pgsnake

EnterpriseDB UK: http://www.enterprisedb.com
The Enterprise PostgreSQL Company


Re: pgAdmin3 1.12.2 won't start on WinXP

From
ondro
Date:
I have same problem, fresh installation winXp with all updates. Instalation
Microsft Visual C++ 2005 SP1 resloved problem and pgadmin start correctly.

--
View this message in context:
http://postgresql.1045698.n5.nabble.com/pgAdmin3-1-12-2-won-t-start-on-WinXP-tp3364203p3423018.html
Sent from the PostgreSQL - pgadmin support mailing list archive at Nabble.com.