Upgrade a Windows Service without Uninstalling

I’ve done this with WiX, which generates .MSI files using the ServiceInstall & SeviceControl commands: <Component Id=’c_WSService’ Guid=’*’> <File Id=’f_WSService’ Name=”WSService.exe” Vital=”yes” Source=”..\wssvr\release\wsservice.exe” KeyPath=”yes” /> <ServiceInstall Id=’WSService.exe’ Name=”WSService” DisplayName=”[product name]” Type=”ownProcess” Interactive=”no” Start=”auto” Vital=”yes” ErrorControl=”normal” Description=’Provides local and remote access to [product name] search facilities.’ /> <ServiceControl Id=’WSService.exe’ Name=”WSService” Start=”install” Stop=’both’ Remove=”uninstall” Wait=”yes” /> </Component> … Read more

Make WiX installation set upgrade to the same folder

There’s an example in the WiX tutorial: https://www.firegiant.com/wix/tutorial/getting-started/where-to-install/ <Property Id=”INSTALLDIR”> <RegistrySearch Id=’AcmeFoobarRegistry’ Type=”raw” Root=”HKLM” Key=’Software\Acme\Foobar 1.0′ Name=”InstallDir” /> </Property> Of course, you’ve got to set the registry key as part of the install too. Stick this inside a component that’s part of the original install: <RegistryKey Key=”Software\Software\Acme\Foobar 1.0″ Root=”HKLM”> <RegistryValue Id=”FoobarRegInstallDir” Type=”string” Name=”InstallDir” Value=”[INSTALLDIR]” /> … Read more

I screwed up, how can I uninstall my program?

Update, Stein Åsmul: Injecting this newer list of cleanup approaches. Find your package in C:\Windows\Installer, where Windows keeps copies of installed MSI packages. The names are generated randomly, so you’ll have to look at the creation dates of the files. Open the MSI file with Orca. (Unfortunately there is no simple download for the orca … Read more

Is it feasible/sensible to wrap an Inno Setup installer inside an MSI for easier distribution via AD?

No, there’s no way to do that while still keeping the functionality your customers are ‘implicitly’ asking for. The only ‘wrapping’ in MSI you can do is to extract it on installation and start your InnoSetup installer from the temporary location where you extracted to. MSI is a fundamentally different way of working: InnoSetup (& … Read more

How to associate application with existing file types using WiX installer?

Here’s a full, complete example with a bit more detail and cleaner code than in the linked question and should provide a better answer. Quite timely as I’ve recently finished porting the code posted previously, to use proper ProgId elements so this is fresh in my mind 😉 In regards to the ‘what here’, you … Read more

Visual Studio 2010 setup project: How to set company name used in default install location?

Open the Properties Window (NOT the right-click on the set-up project) Use the toolbar View -> Properties Window VS 2013/2017 on windows 7: Keyboard shortcut F4 VS 2010 on windows 7: Keyboard shortcut sequence Ctrl + W and then Ctrl + P Now select your set-up project in the Solution Explorer window, the Properties window … Read more

Windows installer deletes versioned file during product upgrade, instead of downgrading it

We also encountered this problem where lower-versioned DLLs were not getting reinstalled on a major upgrade. I thought it was strange that the installer would decide which files to install based on the versioning of existing files, then completely uninstall everything, but still only install what what files had been determined to install before uninstalling … Read more