Click here to Skip to main content
Rate this: bad
good
Please Sign up or sign in to vote.
See more: C# Windows installer
Hi Guys,
 
I have created an application which is an window service which has to run under context of domain administrator account and take some server settings etc stuff.
 
Now I need to install it on client machine, obviously I can not do it using normal deployment project MSI because it involved custom dialog and user input while installation.
 
How can I do this?
 
Now Is there any 3rd party framework which really allow me to create custom dialog and write code which will execute at runtime?
 
If I have to do it manually? How I will incorporate my custom installer files and my windows server application files into a single MSI.
 
This is how I want to have my installation process-
 
1) Welcome Screen
2) System Checks
3) EULA
4) Server settings as per product licensing, its a radio selection by user.
5) Server settings based on last selection.
6) my window server settings which will make a rest call and update server.
7) accepting domain user account credentials.
8) Now installations starts.
9) Redirection to cloud portal with finish message based on selection.
 
Please suggest
 
Thanks in advance
Posted 31-Aug-12 3:05am
Edited 31-Aug-12 3:17am
v2
Comments
Wes Aday at 31-Aug-12 8:21am
   
There are plenty of setup creation packages available. NullSoft makes one that is free. There is Innosetup that is also free. Research them until you find one that meets your needs.

1 solution

Rate this: bad
good
Please Sign up or sign in to vote.

Solution 1

Most installers are painful when trying to do more than the usual things.
 
Personally I use NSIS installer with my own .net application installer which I can control completely, the NSIS script just checks for .net availability and installs the .net runtime needed then unpacks the files and calls my installer EXE.
 
Below is the install script which checks for .net, add your code to "do stuff here".
!define PRODUCT_NAME "DotNetVer Tests"
!define PRODUCT_VERSION "1.1"
!define PRODUCT_PUBLISHER "NSIS"
!define PRODUCT_WEB_SITE "http://nsis.sourceforge.net/"
 
SetCompressor /SOLID LZMA
Brandingtext "Installer (www.companyname.com)"
 

; Modern interface settings
!include "MUI.nsh"
 
!define MUI_ABORTWARNING
!insertmacro MUI_PAGE_WELCOME
!insertmacro MUI_PAGE_DIRECTORY
!insertmacro MUI_PAGE_INSTFILES
!insertmacro MUI_PAGE_FINISH 
 

; Set languages (first is default language)
!insertmacro MUI_LANGUAGE "English"
!insertmacro MUI_RESERVEFILE_LANGDLL
 
Name "${PRODUCT_NAME} ${PRODUCT_VERSION}"
OutFile "DotNetVerTests.exe"
InstallDir "$PROGRAMFILES\Test DotNetVer"
ShowInstDetails show
 
;-------------------------------------------------------------------------------------
Section "MainSection" SEC01
	ClearErrors
	ReadRegDWORD $0 HKLM "Software\Microsoft\Net Framework Setup\NDP\v4\Full" "Install"
	IfErrors dotNet40NotFound
	IntCmp $0 1 dotNet40Found
	dotNet40NotFound: 
		DetailPrint  "Installing .NET Framework 4.0" 
		SetOutPath "$TEMP\"
		File "dotNetFx40_Full_setup.exe"
		ExecWait "$TEMP\dotNetFx40_Full_setup.exe" ;/passive
		Delete /REBOOTOK "$TEMP\dotNetFx40_Full_setup.exe"
	dotNet40Found:
	ClearErrors
	ReadRegDWORD $0 HKLM "Software\Microsoft\Net Framework Setup\NDP\v4\Full" "Install"
	IfErrors endd
	; do stuff here
	;MessageBox MB_OK ".net installed."
 
	return
	endd:
	MessageBox MB_OK "You must install .net first."
SectionEnd
  Permalink  
Comments
Wes Aday at 31-Aug-12 12:18pm
   
Yep. NSIS is not too bad.
Mehdi Gholam at 31-Aug-12 12:20pm
   
Cheers Wes!
sunder.tinwar at 5-Sep-12 7:17am
   
can you guys redirect me to some tutorial where I can create custom dialog and code against those. I started reading NSIS tutorials. Look like somehow I can meet my requirement using this. Please help thanks.
Mehdi Gholam at 5-Sep-12 11:27am
   
Just create a normal .net application for this.
sunder.tinwar at 10-Sep-12 1:08am
   
thanks using this i have solved my all issues. Now I have only one question for you. Compiling NSIS scripts gives me a .exe file, can it also return .MSI file
Mehdi Gholam at 10-Sep-12 3:21am
   
Unfortunatly NSIS doesn't give you a MSI file.

This content, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)

  Print Answers RSS
0 OriginalGriff 341
1 Marcin Kozub 225
2 Praneet Nadkar 197
3 Sergey Alexandrovich Kryukov 190
4 Shweta N Mishra 161
0 OriginalGriff 8,149
1 Sergey Alexandrovich Kryukov 7,287
2 DamithSL 5,614
3 Manas Bhardwaj 4,986
4 Maciej Los 4,910


Advertise | Privacy | Mobile
Web02 | 2.8.1411023.1 | Last Updated 31 Aug 2012
Copyright © CodeProject, 1999-2014
All Rights Reserved. Terms of Service
Layout: fixed | fluid

CodeProject, 503-250 Ferrand Drive Toronto Ontario, M3C 3G8 Canada +1 416-849-8900 x 100