FYI - the current guidance is that you should make shortcuts right off all 
programs (single shortcut), or in a folder off all programs (e.g. Microsoft 
Office) if you have several shortcuts.  Many users struggle navigating so many 
submenus.

You should add registry keypaths, and the RemoveFolder entry.  
http://blogs.msdn.com/jamesfi/archive/2007/05/02/making-an-msi-that-doesn-t-need-a-uac-lua-prompt.aspx
 has an example that needed these as well (installing to the user profile does 
that).

Changing the value of ALLUSERS doesn't change anything about the validation (- 
which makes sense since it can be changed from the command-line).

HTH,
James

From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Spaz Monaught
Sent: Wednesday, September 12, 2007 7:53 PM
To: wix-users@lists.sourceforge.net
Subject: [WiX-users] Problem with Start menu shortcuts in Wix 3.0

I have seen several discussions of this issue but have tried everything there 
with no luck, so I'll start at the beginning.

I want to have a very simple WiX created msi that installs a few basic 
components to the standard Program Files folder and adds a shortcut of the type 
All Programs\Company Name\Product\Shortcut to the Start Menu.

As suggested in Mike Dimmick's March post 
(http://www.nabble.com/forum/ViewPost.jtp?post=9521945&framed=y ), I have 
downloaded the sample from the tutorial at http://www.tramontana.co.hu/wix.

I then use wixcop to upgrade the samplefirst.wxs to 3.0, create a new wix 
solution in Visual Studio 2005 and copy in the upgraded samplefirst.wxs and 
supporting files, delete the default wxs file and add the upgraded 
samplefirst.wxs to the new solution.

Build (from the VS2005 IDE) gives me:

Error 2 The Directory/@Name<mailto:Directory/@Name> attribute's value, 
'Programs', cannot be specified with attribute ShortName present. 
C:\Development\Prototypes\SampleFirst\SampleFirst.wxs 37 1 SampleFirst

Ok that seems simple - I removed the Shortname attribute from both of the 
Directory tags for the Program Menu.

Build again:

Error 3 ICE43: Component MainExecutable has non-advertised shortcuts. It should 
use a registry key under HKCU as its KeyPath, not a file. 
C:\Development\Prototypes\SampleFirst\SampleFirst.wxs 15 1 SampleFirst
Error 4 ICE43: Component Manual has non-advertised shortcuts. It should use a 
registry key under HKCU as its KeyPath, not a file. 
C:\Development\Prototypes\SampleFirst\SampleFirst.wxs 27 1 SampleFirst
Error 5 ICE57: Component 'MainExecutable' has both per-user and per-machine 
data with a per-machine KeyPath. 
C:\Development\Prototypes\SampleFirst\SampleFirst.wxs 15 1 SampleFirst
Error 6 ICE57: Component 'Manual' has both per-user and per-machine data with a 
per-machine KeyPath. C:\Development\Prototypes\SampleFirst\SampleFirst.wxs 27 1 
SampleFirst
Error 7 ICE64: The directory ProgramMenuDir is in the user profile but is not 
listed in the RemoveFile table. 
C:\Development\Prototypes\SampleFirst\SampleFirst.wxs 38 1 SampleFirst

I tried to add <Property Id="ALLUSERS" Value="1" /> as has been suggested in 
the lists. That gives: (no change)

Error 3 ICE43: Component MainExecutable has non-advertised shortcuts. It should 
use a registry key under HKCU as its KeyPath, not a file. 
C:\Development\Prototypes\SampleFirst\SampleFirst.wxs 16 1 SampleFirst
Error 4 ICE43: Component Manual has non-advertised shortcuts. It should use a 
registry key under HKCU as its KeyPath, not a file. 
C:\Development\Prototypes\SampleFirst\SampleFirst.wxs 28 1 SampleFirst
Error 5 ICE57: Component 'MainExecutable' has both per-user and per-machine 
data with a per-machine KeyPath. 
C:\Development\Prototypes\SampleFirst\SampleFirst.wxs 16 1 SampleFirst
Error 6 ICE57: Component 'Manual' has both per-user and per-machine data with a 
per-machine KeyPath. C:\Development\Prototypes\SampleFirst\SampleFirst.wxs 28 1 
SampleFirst
Error 7 ICE64: The directory ProgramMenuDir is in the user profile but is not 
listed in the RemoveFile table. 
C:\Development\Prototypes\SampleFirst\SampleFirst.wxs 39 1 SampleFirst

Just for fun I tried <Property Id="ALLUSERS" Value="2" /> and get: (still no 
change)

Error 3 ICE43: Component MainExecutable has non-advertised shortcuts. It should 
use a registry key under HKCU as its KeyPath, not a file. 
C:\Development\Prototypes\SampleFirst\SampleFirst.wxs 16 1 SampleFirst
Error 4 ICE43: Component Manual has non-advertised shortcuts. It should use a 
registry key under HKCU as its KeyPath, not a file. 
C:\Development\Prototypes\SampleFirst\SampleFirst.wxs 28 1 SampleFirst
Error 5 ICE57: Component 'MainExecutable' has both per-user and per-machine 
data with a per-machine KeyPath. 
C:\Development\Prototypes\SampleFirst\SampleFirst.wxs 16 1 SampleFirst
Error 6 ICE57: Component 'Manual' has both per-user and per-machine data with a 
per-machine KeyPath. C:\Development\Prototypes\SampleFirst\SampleFirst.wxs 28 1 
SampleFirst
Error 7 ICE64: The directory ProgramMenuDir is in the user profile but is not 
listed in the RemoveFile table. 
C:\Development\Prototypes\SampleFirst\SampleFirst.wxs 39 1 SampleFirst

I have tried many other suggestions from the lists but that might be enough for 
this first post. Please help. I am looking forward to trying any suggestions 
posted.

Thanks for your help,
R
-------------------------------------------------------------------------
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