News: Need training? HyperSizer Training Videos are available now! Learn more here: https://hypersizer.com/trainingevents/e-learning/

Author Topic: Silent Uninstall for older versions of HyperSizer (Versions 5.3 - 5.7)  (Read 33988 times)

Phil

  • Administrator
  • *****
  • Posts: 218
    • HyperSizer Structural Sizing Software
    •  
This process is verified to work with HyperSizer Versions 5.3 through 5.7.  The process is easier with Version 5.8+ which uses the Microsoft Installation service.

---------------------
Doing a silent uninstall is not that clear-cut a process from the old installshield installer.  It can be done however.

Unfortunately, it really depends on the exact version of HyperSizer that was originally installed on the machine.  Not the update version, but the original installer.  Its not too hard to figure out though.

On a test machine with the older version of HyperSizer installed, open up the registry editor and go to the string

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall

Under that location, there will be multiple uninstall keys. One of them will be the uninstaller for HyperSizer.  Which one it is will depend on the version that was originally installed.  For an install of Version 5.3.26, the string will be "{E287675B-A483-4B6F-A436-C66E4B6E20C1}".  If that one is not there, open several of them to find the one that contains HyperSizer.

Inside that key, you should find a string value called "UninstallString"

Open up that value by double-clicking it... you should see a string that looks something like this:

"C:\Program Files\InstallShield Installation Information\{E287675B-A483-4B6F-A436-C66E4B6E20C1}\setup.exe" -runfromtemp -l0x0009 -removeonly

Copy that string.  That is the command to uninstall HyperSizer.  You can script using that command.

One problem with scripting that command is that it will prompt you to verify that you want to uninstall.   To get around this, you have to create a response file.  To do that, open a Command Prompt and enter that string and at the end, type "-r -f1C:\Temp\setup.iss".  The -r flag tells the process to record and the -f1 flag tells it what file to record to.  I am assuming you have a C:\Temp folder, but if not, just use any existing folder.  If you use a folder with spaces, you must put quotes around the entire string.  So the command will look like this (note that these commands are intended to be all on one line):

"C:\Program Files\InstallShield Installation Information\{E287675B-A483-4B6F-A436-C66E4B6E20C1}\setup.exe" -runfromtemp -l0x0009 -removeonly -r /f1c:\Temp\setup.iss

Go ahead and answer the questions to uninstall the software.

then look in the folder C:\Temp.  There will be a file there called setup.iss.  That is the response file that you can use to make the uninstall process silent.  So the next time you uninstall, you call up the response file like this (note the -s flag rather than -r):

"C:\Program Files\InstallShield Installation Information\{E287675B-A483-4B6F-A436-C66E4B6E20C1}\setup.exe" -runfromtemp -l0x0009 -removeonly -s /f1c:\Temp\setup.iss

This time, the install should be truly silent and should ask no questions.

The only tricky part that I see is figuring out which of the entries in the uninstall folder belong to HyperSizer.  If someone knows how to find that out programatically, please feel free to respond.

Please let me know if you have any problems or questions.

Luckily, the new installer (for Version 5.8+) uses the Microsoft Installer service and it is much easier to do a silent install/uninstall so you should not need to go through this process again.