POV-Ray : Newsgroups : povray.beta-test : Installation for all users is a royal pain. Server Time
18 May 2024 14:30:36 EDT (-0400)
  Installation for all users is a royal pain. (Message 1 to 2 of 2)  
From: Mike Raiford
Subject: Installation for all users is a royal pain.
Date: 28 Feb 2011 01:08:31
Message: <4d6b3bdf$1@news.povray.org>
I think I've mentioned this before, but to install to ProgramFiles the 
installer needs to perform a UAC elevation.

Giving the user a choice to install for themselves, or for all users is 
fine, but as it is, the all users option is a bit painful for a couple 
reasons:

* The install will fail if they select to install in program files. 
Normally, this is where one would expect a program to install. Every 
single other application out there installs just fine to program files. 
The installer does not contain an embedded manifest to require UAC 
elevation. This works for a single-user installation (somewhat 
non-standard, but a valid option) but does not work for a system-wide 
install. Per-user installation I think is more the exception than the rule.

* Windows does not provide a means to execute an MSI as an 
administrator. This is rather frustrating to the end user. I was finally 
able to get around this omission by running the installer from an 
administrative command prompt. But lets face it, if this is someone's 
first experience with POV-Ray, they may indeed turn their nose up at it 
and walk away.

There is a solution:

If you can get the HWND of the Next button, after the user selects the 
install for all users option, you can send the button a BCM_SETSHIELD 
message, which will place a shield on the next button, and cause the 
program to ask for elevation when the user selects it.

The only requirement for this message to work is to make sure the .msi's 
embedded manifest includes the reference for comctl32 version 6

This is the link to the relevant info on UAC:

http://msdn.microsoft.com/en-us/library/bb756990.aspx

Thanks!


Post a reply to this message

From: Christian Froeschlin
Subject: Re: Installation for all users is a royal pain.
Date: 28 Feb 2011 07:49:04
Message: <4d6b99c0@news.povray.org>
Mike Raiford wrote:

> Giving the user a choice to install for themselves, or for all users is 
> fine, but as it is, the all users option is a bit painful

I second that. However, it has already been discussed for a while
and at least the installer is now rather clear about what happens.
The default case works for new users, and people who generally care
about where programs are installed are probably those who know how
to execute an MSI with administrator privileges via command line.
Maybe it would be useful to explicitely mention this technique in
the warning message about required administrator privileges.

What I never quite grasped is the strong reluctance to provide the
installer in EXE format like 99% of all other consumer level apps.
Is it just to save 100 KB of extractor overhead?

The BCM_SHIELD solution also sounds nice but it would depend on
the selected target directory and require event handling of the
radio button (typically installer code is executed after the
next button is clicked and values are then read from the page).


Post a reply to this message

Copyright 2003-2023 Persistence of Vision Raytracer Pty. Ltd.