windows-installer

What are the benefits of a MSI installer over a standard setup.exe?

If you need to install a 100% .NET product, should you prefer MSI installers? Why? Thanks. ...

Python: Executing an application to install a program

I am using a python script to execute an application to install a program. Using os.system('dir\\application.exe') works. However the installer has 2 installation parts and after completing the first one, it will hang there. The second one will only execute when I exit the python script. How can I get the whole installation process to c...

WiX: Disable the Next Button Until Edit Control Contains a Valid GUID

Using WiX, what's the simplest way to disable the Next button on a page until the user has entered a well-formed GUID in an Edit (textbox) control? I expect the answer to be Condition elements within the Next button control, but I can't figure out what the conditions would be. Do conditions support regular expression matching? ...

MSI Interop using MSIEnumRelatedProducts and MSIGetProductInfo

Hi, Whilst working with the MSI Interop API I have come across some unusual behaviour which is causing my application to crash. It is simple enough to 'handle' the problem but I would like to know more about 'why' this is happening. My first call to MSIEnumRelatedProducts returns an value of 0 and correctly sets my string buffer to a ...

Correct way to implement Wix companion files?

We're currently in the process of upgrading our build scripts from 3.0 to 3.5, and fixing a bunch of old ICE errors along the way. I've read through a number of articles, but I'm slightly confused as to what is usually the best approach to using companion files. Now, assuming File A.manifest is a companion file to A.exe... Originally: ...

Running copied files in wix using custom action

Hello, I'm creating an MSI installer using WiX and I have, say, a *.bat file that I'm copying to SomeFolder2 under %temp% (something like the code snippet below...) ... <Directory Id='TARGETDIR' Name='SourceDir'> <Directory Id='ProgramFilesFolder' Name='PFiles'> <Directory Id='MyDir' Name='SomeFolder'> ...

VS created MSI installer uninstall issue

I created my msi installer by using VS2008. I have some temp files need to be deleted and want to avoid the auto-repair nightmare. I got two options from experts here and other forum. One of them is set the temp file's ComponentId to null (No other changes). It works but causes another issue. The issue is the uninstall process will not d...

How do I install different versions of a file based on a condition from an msi built in Visual Studio?

I've been tasked with building an msi installer for our custom project in Visual Studio 2005. In addition to installing the dlls we build from our code, it has to install a bunch of extra files (configuration, templates, scripts, stuff like that) that are stored in our version control system. In a couple of cases the exact file version w...

Prerequisites validation and installation C#

Hello everyone. I developed a custom installer application because the Visual Studio Setup Projects is not sufficient customizable to fit my needs. I developed a validator and an Installer for Prerequisites like .NET framework, SQL Server, but I'm unable to start some executables like the one from .NET framework using Process.Start. I ...

Why is my Uninstall method not being called?

My VS 2008 created installer doesn't call the override Uninstall method in my installer class. why? The Install method was called. My installer class looks like this: [RunInstaller(true)] public partial class InstallerClass : Installer { public InstallerClass() { InitializeComponent(); } ...

Windows installer - prevent overriding a dll.

I’m creating a setup project (Windows installer) in vs2010. When the user install it for the 1st time – everything is working just fine, but when the user try to upgrade the old application that’s running prevent of coping the new dlls to the installed folder. How to show a user a dialog box that force him to shut down an application tha...

How to remove a single registry VALUE at uninstall of an MSI?

There is a particular registry value that my application sometimes creates during execution, i.e. NOT at installation. This value is within a registry key that I don't want to delete; I just want to delete the value that I created. Because it's not created at install it's not automatically deleted at uninstall by windows installer. What ...