Suppress the reboot prompt for the .NET 3.5 SP1 redist - installation

I have an InstallShield 2009 Basic MSI project that I've modified to load the 3.5 SP1 redistributable for the .NET framework. It loads fine but as soon as it finishes it displays a prompt saying the system has to reboot, and you can either say yes and it will reboot, or no and it will stop the install.
I then went in and edited the .NET Framework 3.5 Service Pack 1 (Web Download) redistributable using InstallShield's prerequisite editor. I changed the behavior if it needs a reboot to 'Note it, fail to resume if the machine is rebooted, and reboot after the installation'. I interpreted that as meaning the reboot prompt would not be shown until the end of the install, but it still showed up in the same place.
Is there a way to suppress the prompt until the end of the install? Do I need to pick a different option from that drop-down in the pre-req editor?
Bonus question: if I need to run my install unattended, is there a way to automatically have it reboot after the entire install is finished if one is needed?
EDIT:
The command switches mentioned below would probably work, but in the case of running the install unattended it will be launched from another program, and I really don't want to modify that app just for this one case. Here's a better question: is a reboot really required after installing .NET 3.5 SP1, or is it one of those things where a reboot would be good but is not absolutely needed for programs to start using the 3.5 framework?

If you type msiexec /? in the Start -> Run box, you'll get a screen with command line options for the MSI runtime, including the following:
Restart Options
/norestart
Do not restart after the installation is complete
/promptrestart
Prompts the user for restart if necessary
/forcerestart
Always restart the computer after installation

You can suppress the reboot prompt entirely by adding the following to the MSI's setup command line:
REBOOT=ReallySuppress
But then it won't prompt at the end of your complete install, as it sounds like you were hoping for; you're just stopping the prompting altogether.
As for your additional question, you can force a reboot with the following switch:
REBOOT=Force REBOOTPROMPT=Supress
Here you're telling the Windows Installer to prompt for a reboot always, and then suppressing the prompt so it just happens.

Related

My silent installation restarts the machine after Prerequisite installation but doesnot complete installation of the application

I am trying to upgrade the application with command C:\Windows\TEMP\MyApplication_64_7.4.10.8016.exe /s /v"/qn ADDLOCAL=ALL"
It is installing the .net 4.7.2 framework Prerequisite, reboots the system but doesn't complete the installation.
However, when I run the exe from double click, it restarts and completes the installation, which is the expected behavior
You'll probably want to set the REBOOT property to Supress or ReallySupress in your installer.
The approach(mentioned in above comment) of creating a scheduled task before starting of installation worked for me, in that scheduled task, I re-launched the installer

Flexera Installshield 2015 Uninstall Custom Action before System Changes

I'm running into an issue using installshield as installerproject for my windows service.
I have an exe which I can run with -I
which installs my project as windows service.
This executes fine as I can set the param in the last dialog where "Show Launch Program" is set true.
But now when I'm uninstalling the whole program it should run the command
/Program Files(x86)/company/app/main.exe
command with -U parameter.
But I can only specify custom action to run after the main.exe has already been deleted.
Does anyone knows a way to run my custom action before the uninstallation process deletes my files?
The problem was with the installed version of installshield.
With the Limited Edition (LE) you are just able to create custom actions in some dedicated steps and not everywhere while installing.
I've written now an own command line file which I'm providing together with the SETUP.exe.

Why does this command line restart Windows 7?

I'm writing an automated, deplorable script that uninstalls Windows 10 related updates and files from Windows 7, 8, and 8.1. However, when I run the following command line in Windows 7, It initiates a system reboot within a minute, leaving the rest of the script to be interrupted in the process.
wusa /uninstall /kb:******* /quiet
What exactly is going on? Windows 8.1 handles it fine, but Windows 7 always seems to shutdown mid-script. As a side note, the update will in fact be uninstalled once the system preps back up. When running the command without /quiet at the end, there is an uninstall confirmation box, and then one after that which asks to reboot now or later. Could it be that the /quiet command is selecting "Restart Now"? If so, how can I select "Restart Later" without having a prompt appear?
As described in KB934307, an unattended installation (or uninstallation) will by default reboot automatically if one is needed to complete the operation.
Use the /norestart option to prevent that from happening.
If you do use /norestart, make sure you check the return value. This will be 3010 if a restart is needed or 0 if no restart is needed; any other value indicates that the operation failed. At the end of the script, if any of the changes returned 3010 you should reboot the machine or advise the user to do so.

how to make an existing msi package unattended install

Sorry for the newbie-ish question, but for all my years, I've never dealt with windows installation except as a user and I'm not sure how to start this.
I have two 3rd party packages to install. One I know is msi based but the other I have not found out yet. It comes with a setup.exe and a wrapper.exe - which we use to install.
Both installation prompt the user for language and a number of various options.
I need to wrap or do something to make these unattended installations.
I may be able to get some property information and I've read Silent installation of a MSI package - is that how I go about doing this? There will be a boat load of properties.
Basically, how do I go about wrapping the setup.exe and building / providing some type of response file.
thanks,
jon
Try this procedure to test if the setup is an MSI:
In the folder where your setup.exe is located, hold down shift, and right click in an empty space. Click "Open new command window here".
Type in setup.exe /a and let the setup start. This should launch an "admin install" if the setup.exe is an MSI setup at all. If you see a way to specify a path, define one and press next. This should now extract all files from within the setup.exe exposing the MSI file.
Once you have the MSI file extracted, it can in most cases be installed via a standard msiexec.exe command line like this: msiexec.exe /i setup.msi
To learn how to install an MSI file silently, check this thread:
How to interactive a silently installing msi? (Progress data and cancel it)
Just one final question: are you delivering these setups as a product, or are you trying to install to your work network or similar?
If those wrapper/setup programs don't have a silent mode then the whole process can't be silent. As far as the MSI files are concerned, the msiexec command line stuff is what you need, including specifying properties on the command line, such as TARGETDIR- if the default is wrong, and TRANSFORMS= assuming the language choice is a transform choice. If you turn on Windows Installer logging policy (or the wrappers let you create a verbose log) you'll see what command lines the wrappers use, so duplicate them except you'd add a /qn type of option to make them silent. If they require elevation to admin to install you'd have to launch them from an admin prompt because a silent install won't ask for elevation on UAC systems.

How to provide a repair option in deployment project?

If setup is installed on machine and if I try to install it again on the same machine than it exits installation with the message "Already installed". In this case, what I want is that if application is already installed then the installer will repair it.
How can we do this?
If the installation is actually broken (like a file is missing) then when you re-run the installer it should give you the repair option. Otherwise, if it thinks the installation is normal then it will say it's already installed.
I think there's always a repair option in the add/remove program entry. However, that won't work if your install files were in a temp location and are now gone.

Resources