views:

757

answers:

2

Hi all,

I have changed the wix tutorial codes from here http://www.tramontana.co.hu/wix/ to make my own installer.

There is no problem when I run the installer to setup my application. But when I run the the installer again, a window jumped out said "Another version of this prodcut is already installed..."

But in the sample, there should be a Maintenance mode, "change, repair or remove installation" dialog when running the installer after the program has already been installed.

I am using the WixUI_Mondo, I think it provides the maintenance mode automatically, any idea how to launch it?

Thank you.

+1  A: 

I hope this is what you're missing:

Assuming you have an existing installer that's functional but just lacking a user interface, here are the steps you need to follow to use a WixUI stock dialog set:

  1. Add a UIRef element to your installer source code, using an Id attribute of one of the dialog sets. In your case:

    <Product ...>
    <UIRef Id="WixUI_Mondo" />
    </Product>
    

You can also customize your dialogs, so that you could create a custom 'maintenance' dialog.

-Good luck. Chris

cr0z3r
woops, forgot to add the link to customize your dialogs:http://wix.sourceforge.net/manual-wix3/WixUI_customizations.htm
Hobhouse
Thanks Chris, I have already added the UIRef Id="WixUI_Mondo" to my wix project. The UI is good though, but I still can not launch the Maintenance mode dialogs which are also included in WixUI_Mondo. Thank you.
Ray
I would suggest you 'reinstall' your library, or create your very own dialog. You could just imitate that maintenance and make it much better.
Hobhouse
Thank you crozer, and I found some info in the Wix Tutorial tooFor some strange reason, small updates and minor upgrades cannot be run simply by clicking on the .msi file—they give the error: "Another version of this product is already installed." We know, stupid... Anyway, you have to start it with the command:msiexec /i SampleUpgrade.msi REINSTALL=ALL REINSTALLMODE=vomusDon't ask me how this would fare with the average user... You'd better start it from an Autorun.inf file or devise an outer Setup.exe shell to launch it.
Ray
Haha, anyway, you got me there.Again, keep in mind what I suggested above and there's always Google: google until your fingers hurt.
Hobhouse
Lol, thanks, seems MS people haven't figure out the "strange reason". I will try to design my own UI then
Ray
+2  A: 

But when I run the the installer again, a window jumped out and said "Another version of this product is already installed..."

This is the error you get when you rebuild your installer with the exact same product ID, but different package ID and then run it again.

If you run the original MSI file it should go to maintenance mode.

If you don't have the original MSI anymore, you can still uninstall your product via add/remove programs. This is possible because Windows Installer caches MSI files with a random name under c:\windows\installer\.

Unless you need to support fine-grained upgrade scenarios (i.e. patching), I recommend you set the product ID to "*" and implement major upgrades as described in the wix help topic How to: Implement a Major Upgrade in your Installer.

Wim Coenen