I have a msi file that has many transforms defined in it.    

When I use the msiexec.exe to install a transform the instance installs.

Example :


Msiexec.exe /i  l:\mywixproject\Setup\Dvd\MyProj.msi MSINEWINSTANCE=1
TRANSFORMS=:MyProject1 INSTALLFOLDER=”c:\myProject”  INSTALLLEVEL="20"
ARPSYSTEMCOMPONENT=1 /L*v c:\temp\logfile.txt

However: On Uninstall the system fails to uninstall.

Msiexec.exe /x  l:\mywixproject\Setup\Dvd\MyProj.msi  MSINEWINSTANCE=1
TRANSFORMS=:MyProject1 INSTALLFOLDER=”c:\myProject”  INSTALLLEVEL="20"
ARPSYSTEMCOMPONENT=1 /L*v c:\temp\logfile.txt

If I remove MSINEWINSTANCE=1 from the command line then it will succeed in
uninstalling the transform.

The question is how to do this in Wix bootstrapper  that has the
multi-instance msi  being referenced.  I am getting the same uninstall
problem.

I have a Fragment that defines the PackageGroup like this:

<?xml version="1.0" encoding="UTF-8"?>
<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi";>
  <Fragment>
    <PackageGroup Id="MyWixInstall">
      <MsiPackage Id=" MyWixInstall" Cache="yes" DisplayInternalUI="no"
Name=" MyWixInstall" SourceFile=" l:\mywixproject\Setup\Dvd\MyProj.msi  "
Vital="yes">
        <MsiProperty Name="MSINEWINSTANCE" Value="1"/>
        <MsiProperty Name="TRANSFORMS" Value=":MyProject1"/>
        <MsiProperty Name="INSTALLFOLDER" Value="c:\myProject"/>
        <MsiProperty Name="ARPSYSTEMCOMPONENT" Value="1"/>
        <MsiProperty Name="INSTALLLEVEL" Value="20"/>
      </MsiPackage>
    </PackageGroup>
  </Fragment>
</Wix>


This PackageGroup is referenced in Chain via PackageGroupRef.

(In another wxs file)

…
      <Chain>

            

          <PackageGroupRef Id=" MyWixInstall"  />

            …

       </Chain>

Running the bootstrapper the installation works.  However, uninstall fails
and the Items installed are still on the machine plus setup still sees that
the transform is still installed on the machine. (Just like the direct call
to msiexec.exe above.)

The msi I am working with has no UI for setup.   It basically installs files
and registers them in relationship to the transform passed in.

Question:   How can I code the wix bootstrapper to NOT set the
MSINEWINSTANCE if I am uninstalling the msi?   And set the MSNEWINSTANCE if
I am installing the msi?





-----
- jon
--
View this message in context: 
http://windows-installer-xml-wix-toolset.687559.n2.nabble.com/Issue-with-uninstalling-a-Multi-Transforms-Msi-with-MSNEWINSTANCE-set-tp7583210.html
Sent from the wix-users mailing list archive at Nabble.com.

------------------------------------------------------------------------------
Master Visual Studio, SharePoint, SQL, ASP.NET, C# 2012, HTML5, CSS,
MVC, Windows 8 Apps, JavaScript and much more. Keep your skills current
with LearnDevNow - 3,200 step-by-step video tutorials by Microsoft
MVPs and experts. ON SALE this month only -- learn more at:
http://p.sf.net/sfu/learnnow-d2d
_______________________________________________
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users

Reply via email to