Ok, let's try again.
I have the following code in my test installer.
<Property Id='ALLUSERS' Value='1' />
<Directory Id='TARGETDIR' Name='SourceDir'>
<Directory Id='DesktopFolder' Name='Desktop'>
<Component Id='desktop_folder'
Guid='{E88B9843-688B-40FA-8BD3-E137EAA1D18D}'>
<RemoveFolder Id='rmdir_desktop' On='uninstall'/>
<Shortcut Id='desktop_folder' Directory='DesktopFolder'
Name='TEST' WorkingDirectory='TARGETDIR'
Target='[INSTALLDIR]\Makefile' />
</Component>
</Directory>
<Directory Id='ProgramMenuFolder' Name='Programs'>
<Directory Id='ProgramMenuDir' Name='WASY'>
<Component Id='program_menu'
Guid='{E88B9843-688B-40FA-8BD3-E137EAA1D18C}'>
<RemoveFolder Id='rmdir_program_menu' On='uninstall'/>
<Shortcut Id='program_menu' Directory='ProgramMenuDir'
Name='TEST' WorkingDirectory='TARGETDIR'
Target='[INSTALLDIR]\Makefile' />
</Component>
</Directory>
</Directory>
<Component Id='association' Guid='507A4173-39CB-C844-DAAA-4BE7DBA44305'>
<ProgId Id='testfemfile' Description='WASY TEST Problem File'>
<Extension Id='fem' ContentType='application/test_fem'>
<Verb Id='open' Command='Open' TargetFile='Makefile'
Argument='"%1"'/>
</Extension>
</ProgId>
</Component>
<Directory Id='$(var.ProgramFilesFolder)' Name='PFiles'>
<Directory Id='Wasy' Name='WASY'>
<Directory Id='INSTALLDIR' Name='TEST $(var.VersionNumberEE)'
FileSource='.'>
<Component Id='data' Guid='*'>
<File Id='Makefile' Name='Makefile'/>
</Component>
</Directory> <!-- TEST -->
</Directory> <!-- WASY -->
</Directory> <!-- ProgramFilesFolder -->
</Directory> <!-- TargetDir -->
<Feature Id='TEST'
Title='TEST'
Level='1'
Description='You can select or unselect individual TEST components in
the tree.'
AllowAdvertise='no'>
<ComponentRef Id='data'/>
<ComponentRef Id='program_menu'/>
<ComponentRef Id='desktop_folder'/>
<ComponentRef Id='association'/>
</Feature>
The installer 'works just fine'. I.e. it installs the file,
a program menu entry, a desktop entry, and a file association.
However, it also fails validation:
u:\src\fesetup\test\setup.wxs(79) : error LGHT0204 : ICE38: Component
desktop_folder installs to user profile. It must use a registry key under HKCU
as its KeyPath, not a file.
u:\src\fesetup\test\setup.wxs(89) : error LGHT0204 : ICE38: Component
program_menu installs to user profile. It must use a registry key under HKCU as
its KeyPath, not a file.
u:\src\fesetup\test\setup.wxs(79) : error LGHT0204 : ICE43: Component
desktop_folder has non-advertised shortcuts. It should use a registry key under
HKCU as its KeyPath, not a file.
u:\src\fesetup\test\setup.wxs(89) : error LGHT0204 : ICE43: Component
program_menu has non-advertised shortcuts. It should use a registry key under
HKCU as its KeyPath, not a file.
u:\src\fesetup\test\setup.wxs(101) : warning LGHT1076 : ICE69: Mismatched
component reference. Entry 'reg312CD77B1D0E10687395CB75D9609CD7' of the
Registry table belongs to component 'association'. However, the formatted
string in column 'Value' references file 'Makefile' which belongs to component
'data'. Components are in the same feature.
make: *** [Test/1.1-2-x86/Test.msi] Error 204
So I wonder how does a minimal example of Wix code look like
that has above mentioned functionality _and_ passes validation.
Andre'
-------------------------------------------------------------------------
Take Surveys. Earn Cash. Influence the Future of IT
Join SourceForge.net's Techsay panel and you'll get the chance to share your
opinions on IT & business topics through brief surveys - and earn cash
http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV
_______________________________________________
WiX-users mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/wix-users