Custom Windows Installer to install multiple software from remote location - windows

I need someone to point me to the right direction. I am new to Windows Installer and I have researched WiX, Advanced Installer, Inno Setup and NSIS and I don't even know the correct keyword to look for to see if they solve my problem.
What I want to accomplish is:
I have many PC software for user to download. Each of them is a separate install file (exe or msi).
What I hope to accomplish is to create a Custom Windows Installer that is able to accomplish these during installation process:
List all PC software available for user to download/install.
Allow user to choose which PC software they would like to download/install.
Download/Install these PC software for user.
Each PC software is hosted in different location from where user executes Custom Windows Installer.
Is there any solution that meets my requirement?
thank you all, appreciate your help.

You can do this for sure with Advanced Installer and WiX.
In Advanced Installer you have a built-in support for suite installations, as in the linked tutorial. In this example the applications are included in the setup package, but you can configure them to be downloaded from a URL too, during the installation. Our support team (disclaimer: I work on Advanced Installer) is very responsive so if you have any questions check out the forums or send an email to support.
In WiX there is a bundle support called Burn. Of course the learning curve for WiX is a little bit steeper, but that's how it is with OSS :)

I would prefer NSIS or Inno Setup. They are free (open source) and easy to learn.
They are script-based, so basically you can do everything. There are a lot of plugins available for them (for example, for downloading files), and you can adjust any aspect of the installer.
Create a custom page where you list the software
Selected software will be downloaded
Software will be executed
NSIS has its own language similar to C, and Inno Setup uses Pascal language for scripting.

Related

Engines for creating installers

I'm looking for installation creator engines. I've checked NSIS and NDJS.
I would like to request for some additional information about them, or another tools I could use.
I'm not quite to figuring out whether they are tools in order for me to able to creator installer for several platforms
What's the state of NDJS? Both have not a good documentation. I'm not quite to able to figure out how's their state
Are both useful for .NET developed projects?
Are there any alternatives?
There is also Inno Setup which is free and amazing installation system.
I am not sure about NDJS but I can recommend NSIS and Inno Setup (see disclaimer below).
Both NSIS and Inno Setup are excellent. They are open source, well documented (yes this is true!), with large community and active development (NSIS has new release 3 days ago even during Christmas!).
NSIS is C like scripting language but a little more difficult to start with. Inno Setup is Pascal like language easier to learn.
Their capabilities are unlimited because of their scripting nature: you can do everything in them and even wrote C/C++/pascal/C# (maybe other) plug-ins if you need to execute something really special. They are useful for any Windows apps (native, .NET, plugin-s, drivers, firmware, from small apps to enterprise solutions).
To start with .net installer (Inno Setup) try e.g. this code: http://www.codeproject.com/Articles/20868/NET-Framework-Installer-for-InnoSetup
Disclaimer:
I tried several other commercial install system systems but none of them offered the same as NSIS/Inno Setup (for free). I use NSIS and Inno Setup daily and I recommend them as best install system available.
I am NSIS and Inno Setup professional and I develop professional installers in this systems (http://www.unsigned.sk). I also developed Microsoft Visual Studio and Embarcadero RAD studio extensions which integrate NSIS and Inno Setup into these IDEs and Graphical Installer which is skinning engine for installers.
Apart from what Slappy said I would like add Microsoft Xml type installer i.e. Wix into your list. Thought NSIS/Inno is a beautiful piece of tool to build installer system, Wix is more modern and directly accessible from Visual Studio projects.
Learning curve of Wix is a bit hard than these scripting languages but many companies are now using this Wix tool.

What are some good installer for windows?

I am writing a installer for my company's software. The specs is pretty tight: doesn't require administrator rights, good if it also include auto-update capability, have a nice UI (as opposed to the normal windows wizard UI), small and fast, robust...
I looked at Advanced Installer, which satisfy everything except having a good UI. (it shows the classic MSI installer UI which is super-duper old). We would love to have something more user-friendly.
Do you have any suggestions for installers I should look at, given these constrains?
P.S: i'm reading about Google's Omaha next, then maybe NSIS and InnoSetup / WIX...
This question is very subjective. However Office 2007, 2010, Visual Studio 2012 (aka VS11) were all developed using WiX. The software is fully open source and you can take a look at the latest weekly release for an example with a very nice UI.
Amm .. I couldn't understand if you want to develop it by yourself, or using another software, but if you do, I think that Install creator pro can be good for you.

Should I deploy software on Window using msi or can I just use a self extracting zip file

We make instruments that are controlled by software running under windows. We have a range of software that we distribute. Currently this software is installed using msi's which are created using WiX or Visual Studio setup projects. We also install third party software where required.
Our software is installed at the factory or on site by our service engineers.
We do not want to offer a choice of where to install the software apart from the drive. We do not want to install to Program Files. We do not want to be able to patch the software that is installed.
Some of our software needs to be configured for a customers needs.
Some products we have tried to use the installer to configure the system. We have found that this is not easy and is difficult to maintain.
We are thinking to drop using msi's for our applications as we do not think we are getting any advantage from them. Instead we are thinking of using zip files to put the software on the computer and then running custom configuration programs. We are thinking of using AutoIt to write the configuration programs though we could use C#.
Does anyone have experience deploying software not using an msi?
Are there any other tools apart from AutoIt that could be used to do this?

Qt packaging for windows platform

I'm looking for Qt packager for my Qt application targeted for windows platform.
I need it to create a nice installer to deploy and distribute my product on windows PC.
Which is best and recommended FREE packager?
For packaging I use the WIX (Windows Installer XML) toolset.
There are several advantages to using WIX:
Free and open-source
Creates MSI files, which allows your application to be easily deployed across large networks and correctly uninstalls (also very important)
Supported and developed by Microsoft, it is used by several other Microsoft teams internally, e.g the Visual Studio 11 Developer Preview installer features some of the latest WIX features
XML configuration allows reuse of components of installers (sets of files, feature sets)
Several types of user interface, new wizard pages can be created
Integrates into Visual Studio
Integrates into MSBuild - can allow consistent packaging to ensure you don't ship debug versions
I have used WIX for installers at work and for my own projects at home.
It isn't as simple as other solutions to get started, but once you've created a simple package, you'll find it easy to add new features.
NSIS is the way to go in my opinion. Straight forward scripting, compatible with all Microsoft Operating Systems and with support for User Levels.
Plus it has a huge active forum for any specific help you may need. I use the HMNSIS editor to write the scripts and have not come across anything it hasn't been able to do yet!
Qt has nothing that can help you, but the free Windows installer package creator is without a doubt NSIS
Inno Setup is a another good, free, light-weight installer system.
There is the Qt Installer Framework. That is a link to the manual for it. It is multi-platform. With it, you write XML files in a directory structure for delivery of components in the directories, called packages. It has scripting. You then compile it into a setup for your target platform.
Correct me if I'm wrong, but I was under the impression that they did not make it available to users of the Community edition until recent versions. When the earlier replies were written, it may well have been commercial version only.
Alas, nothing seems to warn you that you have to collect up components, nor tell you what they are, or even talk about the process; except that the 3rd. party, but free (Windows only), Dependency Walker can tell you what dynamic libraries are being used. I don't find it a necessity, but it can be helpful. (Tip: On Windows anyway, be sure to put "qwindows.dll" in a "platforms" directory with the exe. Tip #2: Make sure the Qt DLL's or static libraries are ones compiled for your compiler.)

How to identify the installer software type(whether it's NSIS, Inno, Windows Installer etc.)?

I need to detect what type of installer software is being used for a particular software. How do I do that?
I don't think there's a common way to do it which fits each vendor. I can only talk about Windows Installer based vendors, like InstallShield and WiX. If you use extra functionality provided by a certain vendor (built on top of usual Windows Installer stuff), this can be various custom MSI tables or just specific MSI properties. The Orca tool and verbose installation log file are helpful tools.

Resources