As pointed out, you cannot install the same product twice, as identified by
the ProductCode guid. That product is already installed, and Visual Studio's
default maintenance mode action is to Repair. So your custom actions won't
run.
--
Phil Wilson
The Definitive Guide to Windows Installer
http://www.apress.com/book/view/1590592972
"livingstone" <livingstone_anna@yahoo.com> wrote in message
news:c9093e6e-dddc-4859-9d78-55652c9dad7b@g6g2000vbr.googlegroups.com...
>I have authored MSI installer with VS9 Setup and Deployment project.
> My MSI includes Install and Uninstall custom actions. This MSI always
> gets deployed with /PASSIVE passed in.
>
> My problem is that install custom actions don't always get executed
> when running the MSI for the second time (running the MSI after it had
> already been installed). Whether install CAs get executed or not seems
> to be affected by /PASSIVE parameter passed at command line. I am
> looking at these two scenarios:
>
> Scenario #1:
> Run the MSI for the second time by double clicking the MSI. Repair/
> Remove dialog comes up. Selecting Repair (which happens to be default
> button) will result in install CAs execution, as desired.
>
> Scenario #2:
> Run the MSI for the second time but this time from the command line:
> msiexec /I Something.MSI /PASSIVE
> In this scenario my install custom actions are NOT executed. I would
> like to change this behavior.
>
> I should mention that install CAs do run OK when executing the MSI for
> the second time from the command line without /PASSIVE parameter:
> msiexec /I Something.MSI
>
> I have tried tried changing Condition for my Install CA (to force CA's
> to run no matter what) to:
>
> NOT Installed OR Installed OR
> MaintenanceMode="Repair" (Install CA still didn't run in
> scenario #2)
> NOT Installed OR Installed OR
> MaintenanceMode="Modify" (Install CA still didn't run in
> scenario #2)
> NOT Installed OR Installed OR MaintenanceMode=?Repair? (this
> causes runtime error)
> NOT Installed OR Installed OR MaintenanceMode=?Modify? (this
> causes runtime error)
>
> I should probably also mention that my MSI has these settings:
> DetectNewerInstalledVersion=True
> RemovePreviousVersions=True
>
> Any help will be greatly appreciated!