Click here to Skip to main content
15,907,906 members
Please Sign up or sign in to vote.
0.00/5 (No votes)
See more:
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
Updated 31-Aug-12 2:17am
v2
Comments
[no name] 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

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
 
Share this answer
 
Comments
[no name] 31-Aug-12 12:18pm    
Yep. NSIS is not too bad.
Mehdi Gholam 31-Aug-12 12:20pm    
Cheers Wes!
sunder.tinwar 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 5-Sep-12 11:27am    
Just create a normal .net application for this.
sunder.tinwar 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

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



CodeProject, 20 Bay Street, 11th Floor Toronto, Ontario, Canada M5J 2N8 +1 (416) 849-8900