Hi,
I located and opened with Orca the cached msi file under Windows\Installer. The
UpgradeCode is, of course, different compared with the one I was using
(displayed by IS UI). Now it looks like some upgrade is done (files are
replaced and on uninstall they are removed from the system).
I have two questions though related to the upgrade process:
1. When double click on my new msi, it detects there is a previous product
installed (there is a PREVFOUND property set I provided within the Upgrade
sequence of my WiX code), but there is no message saying "Another version of
..." like I get when I do an upgrade with two msi files I generated with WiX
but have different versions. It just goes like a normal install, even if some
components are upgraded. What I'd expect is getting an error when double click
("Another version..."), but when launched with REINSTALL=ALL
REINSTALLMODE=vomus it should work.
2. At the end of the installation, I have two entries within Add/Remove
Programs list: one with the previous name for the product and under it the new
name for the product. There is just the Remove button for the previous product
version (by design) and clicking on it just removes the entry from the
Add/Remove list (without an installation or whatever). What I'd expect is no
entry for the previous version in the list.
Any ideas why?
Thx,
Dacian
----- Original Message ----
From: "Wilson, Phil" <[EMAIL PROTECTED]>
To: wix-users@lists.sourceforge.net
Sent: Friday, June 8, 2007 8:36:03 PM
Subject: Re: [WiX-users] Upgrade InstallShield package
If you can locate the cached MSI file in
Windows\installer, opening it with Orca will show the UpgradeCode in the
Property table. That might help see if you're on the right track.
Versions are also another reason why a major upgrade won't detect an older one.
Phil Wilson
From: fiordean dacian
[mailto:[EMAIL PROTECTED]
Sent: Friday, June 08, 2007 10:00
AM
To: Wilson, Phil;
wix-users@lists.sourceforge.net
Subject: Re: [WiX-users] Upgrade
InstallShield package
Hi
Phil,
Looking through IS log I see ALLUSERS with a value of
1.
Running your script displays "Context 4", so there is a per-machine
install done by IS. I have ALLUSERS set to 1 in my WiX source, but there is no
detection for the product IS created.
A strange thing I saw running your
script: the product GUID displayed by your script next to the product name I'm
interested is something like
this:
{B607D95A-A73C-444B-87BA-B4E9DBAC4DEE}
while the product
code displayed by IS within its UI
is:
{F1872E85-C933-44D4-8B88-85D68DD9B103}
which makes me think
the UpgradeCode on which I base my <Upgrade> element to detect the
previous version installed out there is wrong (I take it from the same IS UI
which displays the "wrong" product code above). I don't see a property for
retrieving the UpgradeCode within the WindowsInstaller automation interface in
order to check if the UpgradeCode IS installed product
has.
Dacian
-----
Original Message ----
From: "Wilson, Phil"
<[EMAIL PROTECTED]>
To:
wix-users@lists.sourceforge.net
Sent: Tuesday, June 5, 2007 7:22:22
PM
Subject: Re: [WiX-users] Upgrade InstallShield package
InstallShield has a custom action (ISSetAllUsers) that
sets ALLUSERS, so looking in the raw MSI file won't tell you
what's going on. It's mostly used when it upgrades previous products, but
nevertheless I recommend
looking at a log to see what's actually happening to the ALLUSERS value
during the InstallShield MSI install.
This script might help. If it reports a
context of 4 if the product is installed per-machine, 2 if for a user and
unmanaged.
Option Explicit
Public installer,
fullmsg, comp, prod, a, fso, pname, ploc, pid,contxt, sid, psorce, pcache,
pvers
Set fso =
CreateObject("Scripting.FileSystemObject")
Set a =
fso.CreateTextFile("prodex.txt", True)
' Connect to Windows Installer
object
Set installer =
CreateObject("WindowsInstaller.Installer")
a.writeline ("Products")
'on
error resume next
For Each prod In installer.ProductsEx("", "",
7)
pid = prod.ProductCode
contxt =
prod.Context
sid=prod.usersid
pname =
prod.InstallProperty("InstalledProductName")
psorce=prod.InstallProperty( "InstallSource")
ploc
=prod.InstallProperty( "InstallLocation")
pcache =
prod.InstallProperty("LocalPackage")
pvers=prod.InstallProperty("VersionString")
a.writeline (pid
& " " & pname & " " & pvers & " installed at <" &
ploc & "> from " & psorce & " Context " &
contxt)
Next
Phil Wilson
From: [EMAIL PROTECTED]
[mailto:[EMAIL PROTECTED] On Behalf Of fiordean
dacian
Sent: Tuesday, June 05, 2007 9:46 AM
To:
wix-users@lists.sourceforge.net
Subject: Re: [WiX-users] Upgrade
InstallShield package
Hi
Bob,
ALLUSERS property is not set within the .msi file InstallShield
generates, which means there was a per-user installation (there is something
like ApplicationUsers property with the value ALLUSERS). My .msi uses ALLUSERS
with a value of 1 (so per-machine install). I removed ALLUSERS property from my
.msi.
Also, I switched for a major upgrade now (updated Product &
UpgradeCode GUIDs and Version), here is the Upgrade sequence:
<Upgrade
Id="C466B4D2-CFF9-4880-9910-D95248AAABEB">
<UpgradeVersion OnlyDetect="no" Property="PREVFOUND" Maximum="1.0.1"
IncludeMaximim="no"/>
</Upgrade>
<Upgrade
Id="D1EF72C4-8A32-4526-9F7F-396EC5DAC5C3">
<UpgradeVersion OnlyDetect="yes" Property="NEWERFOUND" Minimum="2.0.0"
IncludeMinimum="yes"/>
</Upgrade>
The first Upgrade refers to
previous InstallShield package out there, second is for current
version.
Well, I had no success yet.
Dacian
-----
Original Message ----
From: Bob Arnson <[EMAIL PROTECTED]>
To:
fiordean dacian <[EMAIL PROTECTED]>
Cc:
wix-users@lists.sourceforge.net
Sent: Tuesday, June 5, 2007 5:23:07
PM
Subject: Re: [WiX-users] Upgrade InstallShield package
fiordean
dacian wrote:
That
would remove my previous installation, right? I'm not sure I want that since
the user might have configured the product (registry keys, config files,
etc.)
and I don't want that to be removed. I just want an upgrade of what's out
there.
Unless you kept all your GUIDs and IDs
the same, you need to do a major upgrade to get to a "clean slate"
install.
On
top of that, it still doesn't look like the previous installation was
detected
(the PREVFOUND property doesn't have a GUID attached to it and no upgarde is
proposed, just normal install).
The most common
reason is that you're trying to mix and match values of ALLUSERS. MSI doesn't
support a per-user install upgrading a per-machine install (or vice versa).
--
sig://boB
http://joyofsetup.com/
Sick sense of humor? Visit Yahoo! TV's Comedy with an Edge to see what's on,
when.
-------------------------------------------------------------------------
This
SF.net email is sponsored by DB2 Express
Download DB2 Express C - the FREE
version of DB2 express and take
control of your XML. No limits. Just data.
Click to get it now.
http://sourceforge.net/powerbar/db2/
_______________________________________________
WiX-users mailing
list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users
Choose the right car based on your needs. Check out Yahoo!
Autos new Car Finder tool.
-------------------------------------------------------------------------
This SF.net email is sponsored by DB2 Express
Download DB2 Express C - the FREE version of DB2 express and take
control of your XML. No limits. Just data. Click to get it now.
http://sourceforge.net/powerbar/db2/
_______________________________________________
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users
___________________________________________________________________________________
You snooze, you lose. Get messages ASAP with AutoCheck
in the all-new Yahoo! Mail Beta.
http://advision.webevents.yahoo.com/mailbeta/newmail_html.html
-------------------------------------------------------------------------
This SF.net email is sponsored by DB2 Express
Download DB2 Express C - the FREE version of DB2 express and take
control of your XML. No limits. Just data. Click to get it now.
http://sourceforge.net/powerbar/db2/
_______________________________________________
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users