HTML Installer Suggestions

Developer
Dec 24, 2010 at 8:21 AM
Edited Dec 24, 2010 at 8:39 AM

In the introduction to the HTMLInstaller there was a request for suggestions to improve it, I would like to suggest the following:

  1. It should have a real Windows window with Titlebar and Close/Min/Max buttons. I think the current approach doesn't really look good and it would be too much effort to make it look like a real Windows form. In additional it wouldn't look good on all Windows variants.
  2. There should be a way to disable resizing and therefore maximise. I don't think in most cases resizing is approriate for installer Windows.
  3. It should have the setup icon emededed by default.
  4. It should start up without elevation and then when you click install or move to a second page it should elevate. This would be fairly easy to handle as you would just close the existing process and restart it using ShellExecute with the "runas" verb (http://blogs.msdn.com/b/vistacompatteam/archive/2006/09/25/771232.aspx) and a commandline to tell it to jump to a named page.
  5. I think this was hinted at in the original article but it would good if you could put two different configurations in the XML file and then from the HTML Installer pass a value through to determine which to run. In my case I have a server and client install, the client version doesn't need the SQL install so I could just exclude this from the configuration. Another approach to this would be to have one configuration and a variable passed through that could be used to filter the installation elements.

In general I like the HTML Installer concept, it allows much more flexibility, with the features above I think this would be a world class bootstrapper.

Neil

Coordinator
Dec 24, 2010 at 6:22 PM

Thanks for your suggestions.

  1. Suprisingly unobvious to do, since this is a custom draw control.
    http://dotnetinstaller.codeplex.com/workitem/7965
  2. Reasonable.
    http://dotnetinstaller.codeplex.com/workitem/7966
  3. Reasonable.
    http://dotnetinstaller.codeplex.com/workitem/7967
  4. It's a very good feature request, I would like that for my installers :)
    http://dotnetinstaller.codeplex.com/workitem/7968
  5. That's the orignal intent. I realize that there's no workitem for that.
    http://dotnetinstaller.codeplex.com/workitem/7969

I haven't had a lot of time to work on DNI lately, so no promises about how fast these things appear. Of course I always make a priority in reviewing patches if anyone is implementing this stuff.

 

 

Developer
Dec 26, 2010 at 11:33 AM
Looks like I am going to have to brush up my c++ skills and start posting patches!
Developer
Dec 28, 2010 at 10:39 AM

Out of interest have you ever considered using an html application (hta file) as the framework for the bootstrapper, on the surface it looks like it could do everything that is required.

Coordinator
Dec 28, 2010 at 1:36 PM

HTA can only call COM from what I understand, so I don't see how we can deliver a functional bootstrapper to the client. The UI is pretty though.

Developer
Dec 28, 2010 at 2:25 PM

True but through COM you can launch applications so you could use HTA to launch the installer or even itself with parameters. Just a thought, I am doing some work on this now so if I find anything useful I'll post it here.

Coordinator
Dec 28, 2010 at 4:02 PM

The dream is a fully integrated UI that hosts progress. This sounds like a form to collect input information. I am not saying it's not useful, feel free to implement something like this!