views:

346

answers:

4

I use Visual C# 2008 Express Edition. I would like to be able to create an installer for a project I have. I can kind of do it with the Publish tool, but you get little to no control.

Is there a free way to do this, or do I need to spring for the full-blown version of VS2008? -or- Do I just not know what I am doing when publishing?

My biggest issue is that it doesn't let the user choose where to install the program, it just drops it in some predefined location.

+6  A: 

No, you don't need to pay for the full Visual Studio, but it might be easier.

  • You can try to write Wix code in a text editor. It's complicated though, and will require some reading to understand the Wix/MSI model. Download the wix tools. Read the MSDN Magazine article.

  • there is IExpress, built-in to Windows. Run it from c:\windows\system32\iexpress.exe . It will create an EXE installer for you. It's not MSI based.

  • Try InnoSetup for an open-source tool that builds MSI installers for Windows.

  • Finally, there is the option to use a self-extracting ZIP file. DotNetZip is a free .NET library that allows you to create a self-extracting EXE. When run, it extracts the files and then optionally runs an application afterwards. The app could be something you write (and extract), or it could be a simple cmd.exe command line.

Cheeso
You beat me to it :) good recommendation.
Michael La Voie
+1 for WiX, which is actually pretty easy to use (granted, with standard VS or higher). There is also an app called WarSetup which makes creating WiX Installers even easier: http://warsetup.jgaa.com/
Jim Schubert
+1 for iexpress
kizzx2
+3  A: 

If you do not need to use MSI, you could use the Nullsoft Scriptable Install System. It is free and is the installer used by a lot of open source programs.

http://nsis.sourceforge.net/Main_Page

CalebD
+3  A: 

Nullsoft Installer System is pretty mature, flexible and powerful. I think it would meet your requirements.

John Gietzen
A: 

visit http://www.actualinstaller.com/

Markus