When I talk about my Installer and Uninstaller below I should actually talk about my Install-32-bit.exe Install-64-bit.exe, Uninstall-32-bit.exe and Uninstall-64.bit exe, because that's the real names of them, but I decided only to talk about my Installer and Uninstaller below (so I hope you understand what I mean).
The current version of Installer installs both the PsPad Editor and my extra CapaLib features.
In my daily work at Slagelse Municipality, Denmark, making CapaLib ComputerJobs to our 3.500 Windows 7 32 bit Enterprise computers, I'm not satisfied with most application vendors, because often they doesn't remove all files, folders and regkeys, when I'm using their uninstallers selecting it from Controlpanel.
Because of that, and as you can see below, I have spend a lot of time to make sure, that files, folders and regkeys installed using my Installer is 101% removed when using my Uninstaller, and that's true, except 2 regkeys.
This one I use to alert you about overwriting your current installation, when using a new "main" version of my Installer:
But you can delete it yourself, if you don't wanna use my Installer anymore. The shown screendump is from a 64 bit system, so if you are using a 32 bit system, the regkey is located under:
HKEY_LOCAL_MACHINE\SOFTWARE\JGsoft\DeployIT (from DeployMaster)
This one I use to configure my Uninstaller for compability with Windows 7:
The shown screendump is from a 32 bit system, so if you are using a 64 bit system, the regkey is located under:
Otherwise you would see this message, after using my Uninstaller:
But you can delete it yourself, if you don't wanna use my Installer and Uninstaller anymore.
Because of the 5 reasons mentioned below, After creating my first version of my Installer and Uninstaller, I needed to change the syntax for my Installer and Uninstaller, so I actually ended up making 2 versions, but it's only the second version you can download.
The first version of my Installer is finished in about 20 minutes, and my Uninstaller is finished in about 5 minutes.
The second version of my Installer is finished in about 5 minutes, and my Uninstaller is finished in about 15 seconds.
Warning: Don't spend time to create ComputerJob's for my Installer and Uninstaller. I wasted 1½ day with no luck, and it wasn't possible to run them silent, and here are the reasons for my Installer (almost the same for my Uninstaller):
- If you have User Account Control activated, my Installer is stopped until you answer yes for UAC-elevation to accept the installation, otherwise it's terminated. It doesn't help to run the Installer UAC-elevated by rightclicking it, and select to "run as administrator". So I stopped to making further efforts to run it silent, because I don't like the only option to let ComputerJob's create 2 reboots in order to work (disabling UAC, reboot, install, enabling UAC, reboot). There's more info about that in Error003
- If run silent, the Installer from www.pspad.com's automatically installs the Babylon toolbar to your browser. So it will be installed if using the following silent switches:
pspad456inst_en.exe /SILENT /TASKS="multiuser,icons,contextmenu"
The only ways to avoid that is to install manually, or to purchase an expensive Package Creator, that monitors all steps of the actual installation. So if you don't want the Babylon toolbar, you must disable it manually.
BTW: While testing it I also saw some other thirdparty programs like the Babylon toolbar, but www.pspad.com only installs it when using silent switches, so if you are using www.pspad.com's installer manually, you have an option to disable the install of the Babylon toolbar.
- Like me, www.pspad.com makes a "Main" installer sometimes, and extra "Builds" more often. pspad456inst_en.exe is such a "main" installer, and installs version 4.5.6 (2427) e.g. in the "C:\Program Files" folder. The extra builds like e.g. 4.5.7(2447), is not an installer, but only a newer copy of the PsPad.exe file, and the needed language files, and a few other files.
This isn't a problem if you are using Windows XP, or if you have User Account Control disabled in Windows 7, because you have (or can grant) write access both for files and subfolders in the "C:\Program Files" folder.
But if you have User Account Control enabled in Windows 7, you can't grant write access for files in the "C:\Program Files" folder, even if you'r a local administrator, or even if you try UAC-elevating with rigthclick and select "run as administrator". And you can't take ownership of the "C:\Program Files" folder, unless you disables the User Account Control. You can only grant write permissions for subfolders. The only way to grant write permissions for files, when User Account Control is enabled , is to run as local system account, and that's normally only possible when using a service to do the "install".
My only option to solve that programatically, is to disable User Account Control, reboot the computer, change the needed settings, enable User Account Control, and reboot the computer again. And that's not really an option (2 reboots).
That's why www.pspad.com decided, that important extra files to PsPad.exe (pspad.ini and keymap.ini) needs to be stored in C:\Users\ <UserName> \AppData\Roaming\PSpad, but that will only happen if you disables "Install as single user / portable application", while installing.
www.pspad.com also decided to keep default settings builtin as part of the PsPad.exe file, but even so, there's also created some ini-files, with the same settings. But these ini-files isn't used, before the user (you) changes some of these settings only if you'r using PsPad.exe's menu Settings/Program Settings.
So I can't just overwrite the default settings in these ini-files with my extra CapaLib features. You would need to make some changes manually first, and then I can overwrite these ini-files. So that's not possible, when both thing is needed to be done at once, only using my Installer.
- In Windows 7 you can't use regedit -s and a regfile with e.g,
In Windows XP that worked without problems, if used by a local administrator, but Microsoft doesn't allow that anymore in Windows 7, except when using
And it doesn't help if you UAC-elevates regedit.exe -s using a local administrator when rightclicking and selecting "run as administrator", and it's the same problem if using reg.exe delete.
And you can't use regedt32.exe with -s
- Some of us is tired of the many malicious attack's on our operating system e.g. when using browser and emails. And maybe we do or maybe we don't wanna activate User Account Control. A "work-around" could be to logon as a user not being member of the local administrators group, and then each time something (you starting installations or malicious attacks) requires local administrator permissions, you are automatically promted to logon temporarily as a local administrator.
If you selected that option, I can't just overwrite the default settings in the ini-files described in #3 with my extra CapaLib features, because you need to logon as a local administrator, and then I need to overwrite these ini-files, but my Installer would overwrite your local administrators ini-files in the wrong userprofile, and not the ini-files needed in your normal userprofile, if you use this "work-around" not being local administrator.
The above 5 reasons raises 4 problems for me to use my AutoIt3 compiler to create only one Installer file, that both installs version 4.5.6 (2427), and upgrades to version 4.5.7(2437) from www.pspad.com, and after that installs my extra CapaLib features, and creates only one Uninstaller file, that uninstalls all of it:
- One critical settings in www.pspad.com's installer, that can't be triggered by silent switches.
- Not able to copy my ini-files with the extra CapaLib features to the right userprofile.
- Not able to make the new builds 4.5.7(2437) folder copy to the "C:\Program Files" folder.
- Not able to remove all regkeys with my Uninstaller.
But you are able to do that manually as a local administrator, so my only options for my first version of my Installer was to ask you to do some of it, so when I start running the installer from www.pspad.com manually, the following is critical, when you use your mouse and keyboard:
Message from my first versions Installer before running my customized Installer from www.pspad.com:
Message from my first versions Installer before running my customized Installer from www.pspad.com:
Message from my first versions Installer if you have User Account Control enabled, before running my customized Installer from www.pspad.com:
Now my first version Installer starts running the installer from www.pspad.com, and this is how you can disable the Babylon toolbar:
Enable Custom Installation (advanced), and disable the 3 Babylon options:
Don't enable "Install as single user / portable application:
While the PsPad Editor is running for the 2 next issues you must solve, I present the following "splash" screen for you (comming and going), and it doesn't stop before you terminate the PsPad Editor.
How to enable Real Tabs:
How to set Help for language to F1 (don't type F1, just press F1):
Answer Yes to overwrite ecContextHelp
When www.pspad.com's installer is finished, you need to enable the Build update, so if you isn't using Windows XP, I ask you to do the following :
And please remember to let me know, if you change any of my settings.
And please select Files/Import C:\ITD\TrywareDk\Bin\Uninstall.reg
According to the above screendumps, when using the descibed options, the first version of my Installer would do the following in the shown order:
- If C:\ <Program Fles> \PsPad Editor exists, a backup of your current version of all the feature files I install below, is automatically executed silent using:
- If %Programfiles%\CapaInstaller doesn't exist, you get an option to continue install, but are recommended to install from www.PsPad.com, because my extra CapaLib features won't work.
But you can continue, if you want to study how my extra CapaLib features works (without being able to compile them without errors, or to run the scripts).
- If your PsPad Edition is a never version from www.pspad.com, than the version you are about to install with my Installer, my Installer will automatically terminate, but with an option to view my website, about when I'm ready with a new Installer for the new version.
- You are asked to input your own valid informations for my CTRL+ALT+D and CTRL+AL+O shortcuts
- If you have User Account Control activated, a message from me is shown to you, that you need to allow an Unknown vendor to install. My message is only shown, if you have one or both of these regkeys:
- As shown above, I decided to show you 3 messages from me about:
* Option to disable the Babylon toolbar for your browser.
* Important option to disable "Install as single user/portable application"
* Please answer NO to reboot your computer
- www.pspad.com's setup starts manually install of version 4.5.6(2427), and waits for your answers.
When writing unpack below, it means that nothing is installed, it's only files being copied to your computer:
- With a little help from you, my installer unpacks and updates the PsPad Editor to version 4.5.7(2437)
- Unpacks all files needed for my extra CapaLib features, and creates copy of www.pspad.com's and my default ini-settings in C:\ITD\TrywareDk\PsPadEditor\Backup\@IniFiles
- Unpacks the freeware program Peid.exe, that only finds the name of the installer, and not the silent install switches.
- Unpacks my W7-SilentSwitchFinder.exe that finds the silent switches after using Peid.exe
- Unpacks the freeware commandline version of 7z, needed for my C:\ITD\TrywareDk\Bin\W7-PsPadEditor-Backup.exe
- Unpacks the freeware program du.exe, used by my C:\ITD\TrywareDk\Bin\W7-PsPadEditor-Backup.exe
- And unpack 2 dozends of other of my extra CapaLib features files, as described in my feature list.
So I examined the market for monitoring installers, but they were too expensive, and after testing about 10 of their demo-versions, only the most expensive could perform what I needed, and the cheapest one I could find from EMCO Software couldn't perform what I needed.
Then I examined the market for other installers, that didn't use a monitoring feature, and after testing about 30 of the freeware versions, I found out that my only option was to purchase a professional version, and after searching for about 50 of these, I could only find them from $200 to $1.500, but then at last, with luck, I found the DeployMaster Builder, so I decided to use it, even though my extra CapaLib features is 100% freeware, and I purchased DeployMaster for €69,95, which is about $92,13
And the DeployMaster Builder does an excellent job, specially about the problems about installing the PsPad Editor 4.5.6(2427), and upgrade it to build 4.5.7(2437), and a few other things. So DeployMaster can only do about 60% of what I needed, so I made the second version of my Installer and Uninstaller with Autoit3, that as part of them starts my Installer build by DeployMaster.
And while creating it, I needed 5 questions to DeployMaster's supportforum, and all 5 answers was emailed by Jan Goyvaerts himself within a few hours the same day, and all answers was excellent and very detailed about how to fix the issues. So that's what excellent support is about ;O)
But "thank you" Microsoft, for making our work so easy :O(
So as you can see - after using 3 weeks of intense programming of the first version and second version of my Installer and Uninstaller, I managed to do all the 14 steps above only using one Installer file, and only showing you the following, when you use the second version of my Installer:
You might see this, but only if you haven't installed CapaLib:
And I'm only showing you the following, when you use my Uninstaller, that's included as part of my one Installer file:
But at the end, I can't delete the last file, and the empty C:\ITD folder, so:
If you install PsPad Editor on your private home computer, you will experience a long delay when using CTRL+O or CTRL+S, because you don't have access to CapaLibs gsPackageRoot. You can solve this issue, using menu "Settings/Program Settings/Files and Dirs", and change "Designate Directory" to e.g. C:\ITD
I programmed the features about silent switches for installer programs in %\ProgramFiles%\PsPad Editor\Online.ini creating section [vbScript] in the top of the file.
I created the different html-files using the decades of my IT-experience and some "googling".
I programmed the C:\ITD\Help\W7-SilentSwitchFinder.exe cf. Setup #5-#6.
I decided to sort these SubMenus moving the builtin [Batch] and [HTML] sections just after my section [vbScript] with before and after.