What Installer program do you use/recommend?
What Installer program do you use/recommend?
Hi everyone. I was wondering, among the number of free and open source installers, like WiX, InnoSetup, NSIS, etc., which one do you use or recommend?
Also, with PureBasic programs nicely bundled in a standalone executable, would it be possible for us to write our own simple installer?
In addition to copying the executable to the Program Files folder, Start Menu, Desktop and Quick Launch Bar, we would probably need to register the file/icon associations in the registry, and then save all this data in a file for uninstall purposes. Should there be anything else? Would the Windows Add/Remove utility be able to remove such an installed program as well?
Would appreciate your invaluable feedback. Thank you.
Also, with PureBasic programs nicely bundled in a standalone executable, would it be possible for us to write our own simple installer?
In addition to copying the executable to the Program Files folder, Start Menu, Desktop and Quick Launch Bar, we would probably need to register the file/icon associations in the registry, and then save all this data in a file for uninstall purposes. Should there be anything else? Would the Windows Add/Remove utility be able to remove such an installed program as well?
Would appreciate your invaluable feedback. Thank you.
Texas Instruments TI-99/4A Home Computer: the first home computer with a 16bit processor, crammed into an 8bit architecture. Great hardware - Poor design - Wonderful BASIC engine. And it could talk too! Please visit my YouTube Channel 
Re: What Installer program do you use/recommend?
We use InnoSetup since the beginning for PureBasic and it's a really nice piece of work.
- deeproot
- Enthusiast

- Posts: 290
- Joined: Thu Dec 17, 2009 12:00 pm
- Location: Llangadog, Wales, UK
- Contact:
Re: What Installer program do you use/recommend?
I use NSIS and it does everything I need. Originally used for my VB6 projects as it handled all the messy run-time stuff really well. So just continued with it for PB programs, which of course only need much simpler scripts. Yes, it can do all the Windows uninstaller and so on.
Before that, long while ago, I used Indigo Rose Setup Factory - not free though. Easy to use with screens instead of scripting. Worked pretty good but not as flexible as NSIS - I only went up to version 5, don't know about later versions.
I've also heard a lot of people say InnoSetup is a nice alternative, perhaps I'll look at that sometime.
Before that, long while ago, I used Indigo Rose Setup Factory - not free though. Easy to use with screens instead of scripting. Worked pretty good but not as flexible as NSIS - I only went up to version 5, don't know about later versions.
I've also heard a lot of people say InnoSetup is a nice alternative, perhaps I'll look at that sometime.
Re: What Installer program do you use/recommend?
+1 innoSetup. Great software. Can be a little tricky sometimes, but allows you to do almost anything.
Re: What Installer program do you use/recommend?
InnoSetup. 
Blog: Why Does It Suck? (http://whydoesitsuck.com/)
"You can disagree with me as much as you want, but during this talk, by definition, anybody who disagrees is stupid and ugly."
- Linus Torvalds
-
BorisTheOld
- Enthusiast

- Posts: 542
- Joined: Tue Apr 24, 2012 5:08 pm
- Location: Ontario, Canada
Re: What Installer program do you use/recommend?
We've always used Inno Setup for Windows installations, ever since it was first released.
Here's a typical script as generated by our Data Dictionary package:
Why re-invent the wheel? A more worthwhile endeavor would be to automatically create the Inno Setup scripts, so that you can use the full power of Inno Setup.TI-994A wrote:Also, with PureBasic programs nicely bundled in a standalone executable, would it be possible for us to write our own simple installer?
Here's a typical script as generated by our Data Dictionary package:
Code: Select all
' Script for Inno Setup Version 5.1.5
' DVS Data Dictionary
[Setup]
' compiler
Compression=bzip
DiskClusterSize=512
DiskSliceSize=1457664
DiskSpanning=no
InternalCompressLevel=normal
MergeDuplicateFiles=yes
OutputBaseFilename=dvs00dd_5
OutputDir=H:\DvsData\DVS\EZ\
ReserveBytes=0
SlicesPerDisk=1
SolidCompression=yes
SourceDir=H:\DvsData\DVS\EZ\
UseSetupLdr=yes
' installer
AllowCancelDuringInstall=yes
AllowNoIcons=no
AllowRootDirectory=no
AllowUNCPath=yes
AlwaysRestart=no
AlwaysShowComponentsList=yes
AlwaysShowDirOnReadyPage=no
AlwaysShowGroupOnReadyPage=no
AlwaysUsePersonalGroup=no
AppName=DVS Data Dictionary
AppId=dvs00dd_5
AppMutex=
AppPublisher=Deer Valley Software
AppPublisherurl=http://www.deervalleysoftware.ca
AppSupporturl=http://www.deervalleysoftware.ca/trouble.htm
AppUpdatesurl=http://www.deervalleysoftware.ca/download.htm
AppVersion=5.1.1
AppVerName=DVS Data Dictionary 5.1.1
ChangesAssociations=no
CreateAppDir=yes
CreateUninstallRegKey=yes
DefaultDirName={sd}\DeerValleySoftware
DefaultGroupName=Deer Valley Software\DVS Data Dictionary
DefaultUserInfoName={sysuserinfoname}
DefaultUserInfoOrg={sysuserinfoorg}
DefaultUserInfoSerial=
DirExistsWarning=auto
DisableDirPage=no
DisableFinishedPage=no
DisableProgramGroupPage=no
DisableReadyMemo=no
DisableReadyPage=no
DisableStartupPrompt=yes
EnableDirDoesntExistWarning=no
ExtraDiskSpaceRequired=0
'InfoAfterFile=ReadMe.txt
'InfoBeforeFile=Setup.txt
LanguageDetectionMethod=uilanguage
'LicenseFile=license.txt
MinVersion=4,4
OnlyBelowVersion=0,0
Password=
PrivilegesRequired=admin
RestartIfNeededByRun=yes
ShowLanguageDialog=yes
TimeStampsInUTC=no
Uninstallable=yes
UninstallDisplayIcon=
UninstallDisplayName=
UninstallFilesDir={app}
UninstallLogMode=append
UninstallRestartComputer=no
UpdateUninstallLogAppName=yes
UsePreviousAppDir=yes
UsePreviousGroup=yes
UsePreviousSetupType=yes
UsePreviousTasks=yes
UsePreviousUserInfo=yes
UserInfoPage=no
' cosmetic
AppCopyright=Copyright © 1977-2012 Deer Valley Software
BackColor=clBlue
BackColor2=clBlack
BackColorDirection=toptobottom
BackSolid=no
FlatComponentsList=yes
ShowComponentSizes=yes
ShowTasksTreeLines=no
WindowShowCaption=yes
WindowStartMaximized=yes
WindowResizable=yes
WindowVisible=no
WizardImageBackColor=$400000
WizardImageFile=compiler:wizmodernimage.bmp
WizardSmallImageFile=compiler:wizmodernsmallimage.bmp
[Tasks]
Name: "desktopicon"; Description: "Create a &desktop icon"; GroupDescription: "Additional icons:"; Flags: unchecked
Name: "quicklaunchicon"; Description: "Create a &Quick Launch icon"; GroupDescription: "Additional icons:"; Flags: unchecked
[Files]
' code from other vendors
Source: "ezgui50.dll"; DestDir: "{app}"; Flags: sharedfile
' dvs package
Source: "dvs00dd.exe"; DestDir: "{app}"; Flags: replacesameversion
Source: "dvs6020.dll"; DestDir: "{app}"; Flags: sharedfile
Source: "dvs6046.dll"; DestDir: "{app}"; Flags: sharedfile
[INI]
Filename: "{app}\dvs00dd.url"; Section: "InternetShortcut"; Key: "url"; String: "http://www.deervalleysoftware.ca"
[Icons]
Name: "{group}\DVS Data Dictionary"; Filename: "{app}\dvs00dd.exe"; WorkingDir: "{app}"
Name: "{group}\DVS Data Dictionary on the Web"; Filename: "{app}\dvs00dd.url"
Name: "{group}\Uninstall DVS Data Dictionary"; Filename: "{uninstallexe}"
Name: "{userdesktop}\DVS Data Dictionary"; Filename: "{app}\dvs00dd.exe"; Tasks: desktopicon; WorkingDir: "{app}"
Name: "{userstartmenu}\DVS Data Dictionary"; Filename: "{app}\dvs00dd.exe"; Tasks: quicklaunchicon; WorkingDir: "{app}"
[Run]
Filename: "{app}\dvs00dd.exe"; Description: "Launch DVS Data Dictionary"; Flags: nowait postinstall skipifsilent; WorkingDir: "{app}"
[UninstallDelete]
Type: files; Name: "{app}\dvs00dd.url"
' end of script
For ten years Caesar ruled with an iron hand, then with a wooden foot, and finally with a piece of string.
~ Spike Milligan
~ Spike Milligan
-
MachineCode
- Addict

- Posts: 1482
- Joined: Tue Feb 22, 2011 1:16 pm
Re: What Installer program do you use/recommend?
Yep, InnoSetup here.
Microsoft Visual Basic only lasted 7 short years: 1991 to 1998.
PureBasic: Born in 1998 and still going strong to this very day!
PureBasic: Born in 1998 and still going strong to this very day!
-
jesperbrannmark
- Enthusiast

- Posts: 536
- Joined: Mon Feb 16, 2009 10:42 am
- Location: sweden
- Contact:
Re: What Installer program do you use/recommend?
Anything cross platform?
Re: What Installer program do you use/recommend?
No, crossplatform installer make no sensejesperbrannmark wrote:Anything cross platform?
PureBasic 5.73 | SpiderBasic 2.30 | Windows 10 Pro (x64) | Linux Mint 20.1 (x64)
Old bugs good, new bugs bad! Updates are evil: might fix old bugs and introduce no new ones.

Old bugs good, new bugs bad! Updates are evil: might fix old bugs and introduce no new ones.

-
IdeasVacuum
- Always Here

- Posts: 6426
- Joined: Fri Oct 23, 2009 2:33 am
- Location: Wales, UK
- Contact:
Re: What Installer program do you use/recommend?
... a cross-platform installer makes perfect sense to me.
IdeasVacuum
If it sounds simple, you have not grasped the complexity.
If it sounds simple, you have not grasped the complexity.
Re: What Installer program do you use/recommend?
A installer for linux or MacOS requires very different things than a installer for windows.
If a installer only extract files and put it in a directory, okay, but this is not a installer!
If a installer only extract files and put it in a directory, okay, but this is not a installer!
PureBasic 5.73 | SpiderBasic 2.30 | Windows 10 Pro (x64) | Linux Mint 20.1 (x64)
Old bugs good, new bugs bad! Updates are evil: might fix old bugs and introduce no new ones.

Old bugs good, new bugs bad! Updates are evil: might fix old bugs and introduce no new ones.

Re: What Installer program do you use/recommend?
Hi ts-soft,
Makes sense, but why no suggested Mac or Linux installers?
Did Fred/freak have to write their own installer for these OS's?
Makes sense, but why no suggested Mac or Linux installers?
Did Fred/freak have to write their own installer for these OS's?
The nice thing about standards is there are so many to choose from. ~ Andrew Tanenbaum
Re: What Installer program do you use/recommend?
For Linux it is high recommed to use deb or rpm installer. For MacOS i think dmg.
For Business programs on Windows you have to use signed msi installer.
Inno Setup and NSI a good installers, but big companies don't accept this kind
of installer.
>> Did Fred/freak have to write their own installer for these OS's?
A installer that works on all linux distri is complicated and the install
of purebasic is so simple, why write a installer?
For Business programs on Windows you have to use signed msi installer.
Inno Setup and NSI a good installers, but big companies don't accept this kind
of installer.
>> Did Fred/freak have to write their own installer for these OS's?
A installer that works on all linux distri is complicated and the install
of purebasic is so simple, why write a installer?
PureBasic 5.73 | SpiderBasic 2.30 | Windows 10 Pro (x64) | Linux Mint 20.1 (x64)
Old bugs good, new bugs bad! Updates are evil: might fix old bugs and introduce no new ones.

Old bugs good, new bugs bad! Updates are evil: might fix old bugs and introduce no new ones.

Re: What Installer program do you use/recommend?
Hello guys. Seems that InnoSetup is the installer of choice, so I downloaded it and gave it try. After installing a test PureBasic program, I noticed that it had copied the executable to the Program Files folder, and placed the shortcuts in the Start Menu, and onto the Quick Launch bar and Desktop, as specified. However, there were no requests for file associations, and very little going on in the registry. It didn't even create a folder for the program in the registry under HKLM or HKCU, but instead had some strange entries under:
1. Software\Microsoft\Windows\ShellNoRoam\MUICache and
2. Software\Microsoft\Windows\CurrentVersion\Uninstall
Assuming the second one is the uninstall information required for the Add/Remove Programs utility, what else does the installer do?
Using PureBasic, we could copy the executable to those various folders, and even register the file associations with our program by writing to the registry. We could also write another program to reverse these actions, making our own uninstaller. Leaving the question: what else does the installer do?
1. Software\Microsoft\Windows\ShellNoRoam\MUICache and
2. Software\Microsoft\Windows\CurrentVersion\Uninstall
Assuming the second one is the uninstall information required for the Add/Remove Programs utility, what else does the installer do?
Using PureBasic, we could copy the executable to those various folders, and even register the file associations with our program by writing to the registry. We could also write another program to reverse these actions, making our own uninstaller. Leaving the question: what else does the installer do?
Texas Instruments TI-99/4A Home Computer: the first home computer with a 16bit processor, crammed into an 8bit architecture. Great hardware - Poor design - Wonderful BASIC engine. And it could talk too! Please visit my YouTube Channel 
Re: What Installer program do you use/recommend?
did you http://www.jrsoftware.org/ishelp/index. ... runsection?TI-994A wrote: Leaving the question: what else does the installer do?
