Taking the simple ones:

ICE33 warns if you're not advertising your COM objects. Generally advertised
COM objects are not now recommended because they can cause installer dialogs
to apparently appear randomly (as far as the user is concerned). This
warning is generally ignored by most people, and light v3 suppresses ICE33
by default.

ICE66 says that MsiFileHash was new in Windows Installer 2.0 (there is
actually no version 1.5) but you've declared that your package works from
v1.0 upwards. MsiFileHash is automatically generated by light as it can
prevent unnecessary cabinet references which might be useful in web download
or administrative image scenarios - it's basically used to prevent
unnecessarily overwriting an unchanged existing file. You can ignore this
warning - it does no harm, Windows Installer before 2.0 simply ignores the
table and overwrites the file anyway - but you can prevent it by setting
Package/@InstallerVersion to 150 or higher.

ICE74 - UpgradeCode is used by the Upgrade feature (for major upgrades) to
detect the presence of different versions of the same product, so that the
RemoveExistingProducts action can do its job. You should always set an
UpgradeCode for any package you intend to later upgrade with a major
upgrade, which in effect means you should do it for all packages. Set
Product/@UpgradeCode to a GUID, then keep the same upgrade code for all
future versions of the product.

ICE82 - You've probably specified some action as occurring before
ProgressDlg. Consider changing it to occur before ResumeDlg instead.
Alternatively, set it to occur after CostFinalize, if it is not itself a
dialog. Once the first modal dialog has been shown, dialogs proceed in the
order specified by NewDialog events, not in the UI sequence. Only when the
last modal dialog has been shown does it proceed to the next action in the
UI sequence. Generally you only run one chain of modal dialogs (packages
typically have three chains, one for starting an installation, one for
resuming a suspended installation, and one for maintenance).

The more debatable, and difficult to resolve, ones are ICE57 and ICE90. It's
recommended that components only install files to either per-machine areas
(e.g. ProgramFilesFolder, HKLM) or to per-user areas. It's important to
understand that the key path for a component is the only thing checked to
decide whether to install the component. Once the decision has been taken to
install the component, all the resources described in the component are
installed. The SDK says "Mixing per-user and per-machine data in the same
component could result in only partial installation of the component for
some users in a multi-user environment." You should place the per-machine
resources into a separate component from the per-user resources.

ICE90 says that "[a] shortcut specified by a public property may not work if
the value of the ALLUSERS property changes." It's recommended that the
directory that shortcuts are placed into is not a configurable directory.

-- 
Mike Dimmick

-----Original Message-----
From: [EMAIL PROTECTED]
[mailto:[EMAIL PROTECTED] On Behalf Of Brian
Elmegaard
Sent: 19 July 2007 14:40
To: wix-users@lists.sourceforge.net
Subject: [WiX-users] Got the msi I wanted working

Hi,

finally I have been able to take the time and read this list, the
tuorial and the help file carefully. I seem to have everything working
as intended. I only have a few warnings when running msival2.

I am not sure if I should be bothered because of warnings.
The warnings I have are as shown below. If anyone would care to
comment I would appreciate it:
ICE33        WARNING   Reg key reg7EF074BB025A80CBFE2087521879C64E is used
in an unsupported way. ProgId should be registered via the ProgId table.
This entry may overwrite a value created through that table.
ICE57        WARNING   Component 'component15' has both per-user and
per-machine data with an HKCU Registry KeyPath.
ICE66        WARNING   Complete functionality of the MsiFileHash table is
only available with Windows Installer version 1.5. Your schema is 100
ICE74        WARNING   The UpgradeCode property is not authored in the
Property table. It is strongly recommended that authors of installation
packages specify an UpgradeCode for their application.
ICE82        WARNING   This action ResumeDlg has duplicate sequence number
1298 in the table InstallUISequence
ICE90        WARNING   The shortcut 'dnamanushortcut' has a directory that
is a public property (ALL CAPS) and is under user profile directory. This
results in a problem if the value of the ALLUSERS property changes in the UI
sequence.

tia,
-- 
Brian (remove the sport for mail)
http://www.et.web.mek.dtu.dk/Staff/be/be.html
http://www.rugbyklubben-speed.dk


-------------------------------------------------------------------------
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


-------------------------------------------------------------------------
This SF.net email is sponsored by: Microsoft
Defy all challenges. Microsoft(R) Visual Studio 2005.
http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/
_______________________________________________
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users

Reply via email to