Search code examples
programming-languagesinstallation

How to make it easy for users to install my software? Does the programming language matter?


I'm a beginner to intermediate programmer and I've learned some java and C#. I want to start thinking about making some simple programs that I can release to the world. Just some basic stuff like calendar software that will probably be free. Users want the install process to be quick and easy. To install a java program, I have to tell them to have java installed. To install a C# program, I have to tell them to have .NET installed. I'm worried this might put off some potential users who just want to double click an exe file, choose a directory and be pretty much done.

So, I guess this is an either/or two part question:

1) Is there a programming language that makes it easier to set up an installer without requiring users to have other stuff installed?

or:

2) Is there some way to set up an installer that checks the system to see if it has java/.NET/whatever, and then includes java/.Net/whatever in the installation if it's not already there?


Solution

  • I'm surprised ClickOnce hasn't been mentioned yet, Microsoft's own setup project. It's integrated in Visual Studio and checks for prerequisites, like the .Net framework. Be warned though, it does not play too nice if you use certain third-party components (like reporting etc), but you probably won't worry about that at this time :) Oh and it installs EXE's in a weird location, not Program Files :/

    Personally I really love Nullsoft's Scriptable Install System! I don't worry too much about the .Net requirement, it comes with Windows Updates and most PC's have it nowadays, but there are NSIS scripts that can check for whatever requirements you need. Just make sure users know it's a requirement, with links to where they can get it if they need; Same for Java.

    OT but of interest, have a look at http://smallestdotnet.com