Currently I have made custom UI botstrapper and have embedded three exes into it.
when i cancel installation after successfully installing one exe , the bootstrapper is not rolling back.Instead it will stop the process and user machine is installed with some components of bundle packages.
Can anyone suggest to roll back whole process so that user machine will be in default stage ie without any components of bundle package when i cancel installation.
Related
I have a GUI "master installer" program that starts several processes that each install an MSI. I would like to implement a cancel button, that when clicked, kills the currently running process/msi.
What happens when you kill a process that's installing an msi? Do the registry entries and files that have been created get left behind?
I'm new to WiX and inherited several WiX projects from a previous employee. There is a 'Full' installer that bundles several .msi packages for installation. The Full installer consists of a project with a Bundle.wxs file and another project with a .xaml UI screen and a bootstrapper class. The UI simply lets the user performing the install choose which components to install.
I'm seeing a really odd issue where if I kick off one of the components and then cancel out of the .msi installation process for that component previous versions of the .xaml UI screen display. I end up having to close out several of these UI screens before I get back to the one I kicked off for my install. The behavior differs on our different test servers and it seems like there are old installers cached on the servers or something. The .xaml UI screens that pop up after trying to cancel include fields that are not part of my current .xaml UI.
When closing my application it prompts users to save any unsaved information. When installing a new version of my application while it is running the following occurs:
Start application.
Install new version from WIX MSI.
Application prompts to save unsaved information.
WIX MSI ignores the fact the application is not closed and continues uninstalling the old version and installing the new version.
The still running application crashes badly.
How can I get WIX to abandon the installation if the application does not close?
As per my understanding, you want to stop the installation and inform customer to close the application if your application is running.
You can do this using custom action. Check your application is running or not using Process and create a property based on that in custom action.
Schedule the custom action after AppSearch or before Launch Condition in both InstallUI and InstallExecute (for silent installation) sequences. Check that property using condition element.
<Condition Message="Please close XXXX application to continue the installation." >APPLICATION_RUNNING</Condition>
I've created an installer using WiX and if the user tries to uninstall my application whilst it is still open, they should get the dialog which gives them the option to have the uninstaller close the application automatically or leave it running but a restart will be required.
It seems though that with User Account Control on, I need to elevate by running the package with msiexec from an elevated command prompt before this will happen. If the user is not elevated, the uninstaller will run, they click the Remove icon (which prompts for elevation), but the setup then simply says:
"The setup must update files or services that cannot be updated while the system is running. If you choose to continue, a reboot will be required to complete the setup."
I'd like them to have the option to close the app even when just uninstalling without having to manually elevate first
My best guess is that your MSI does not have a FilesInUse dialog box nor a MsiRMFilesInUse dialog box. Those are "well-known" dialog boxes that the Windows Installer will populate with information when it detects files in use. The WiX toolset should give you those dialogs automatically if you use one of the standard UIs. Alternatively, you can create your own dialogs.
I have created a WiX installer and would like to launch a custom action dialog on uninstall. From this dialog I would like to gather information on why the user is uninstalling my application (well, this means just launching the web-browser).
I have seen some people using the On="uninstall" property, but I am not sure if this is the one to use, and how to use it, for the above action.
Windows doesn't show UI when a product is uninstalled from Add/Remove Programs or Programs and Features.
JakobJ: I wouldn't mess with this uninstall sequence. Any modal dialog that pops up when the installation is run in silent mode (which it is from add/remove) could cause your entire product to be axed in a corporate environment. If your uninstall is invoked from a management system such as SCCM and the uninstall on a lot of machines fails because the uninstall gets stuck on a dialog, this will not soon be forgotten. Trust me.