Found and Solved the issue modifying WixUI_Advanced.wxs

A comment by MarcusUA in the following URL states the issue:
 http://neilsleightholm.blogspot.com/2008/08/customised-uis-for-wix.html

The 'CustomAction's in WixUI_Advanced.wxs must be renamed or else they
will result in conflicting names in the original WixUI_Advanced.wxs, so
it's some sort of scope issue with CustomAction.

I stopped having issues after making the following replacements through
out the file:
WixSetDefaultPerUserFolder  to WixSetDefaultPerUserFolder2
WixSetDefaultPerMachineFolder to WixSetDefaultPerMachineFolder2
WixSetPerUserFolder to WixSetPerUserFolder2
WixSetPerMachineFolder to WixSetPerMachineFolder2

Now I can change things around.

On Thu, 2013-08-29 at 18:50 -0700, jo...@msli.com wrote:
> I grep'ed for it and found only one UIRef in my code.
> 
> I'm trying to follow this with wix 3.7:
> http://wixtoolset.org/documentation/manual/v3/wixui/wixui_customizations.html
> Changing the UI sequence of a built-in dialog set
> 
> But just copying WixUI_Advanced.wxs to a new file name in my project and
> changing the UI Id leads to this error:
> 
>   
> E:\delivery\Dev\wix37_public\src\ext\UIExtension\wixlib\WixUI_Advanced.wxs(37)
>  : error LGHT0091 : Duplicate symbol 
> 'CustomAction:WixSetDefaultPerUserFolder' found. This typically means that an 
> Id is duplicated. Check to make sure all your identifiers of a given type 
> (File, Component, Feature) are unique.
>   
> C:\cygwin\home\build\current\EUROPA\Source\wix_project\MyProgram.WixUI_MyAdvanced.wxs(37)
>  : error LGHT0092 : Location of symbol related to previous error.
>   ...
> 
> 
> If I change my light.exe command line, by removing
>    -ext WixUIExtension
> I get Unresolved reference to symbol errors:
>   error LGHT0094 : Unresolved reference to symbol 'Dialog:BrowseDlg' 
>   ....
> but no duplicates.
> 
> If I comment out my modified WixUI_Advanced
>   <UIRef Id="WixUI_MyAdvanced" />
> I get no errors, but I don't get the dialogs.
> 
> My modified WixUI_Advanced.wxs  (named MyProgram.WixUI_MyAdvanced.wxs)
> has one change:
> from:
> <UI Id="WixUI_Advanced">
> to:
> <UI Id="WixUI_MyAdvanced">
> 
> This is myProgram.wxs:
> <?xml version="1.0" encoding="UTF-8"?>
> <?include  $(var.wxi_variables)  ?>
> <Wix xmlns="http://schemas.microsoft.com/wix/2006/wi";
>     xmlns:bal="http://schemas.microsoft.com/wix/BalExtension";
>     xmlns:util="http://schemas.microsoft.com/wix/UtilExtension";
> >
>   <Product 
>       Id="*"
>       Language="1033"
>       Manufacturer="$(var.MyCompanyName)"
>       Name="$(var.MyInstallerName)"
>       UpgradeCode="{$(var.Guid_Upgrade)}"
>       Version="$(var.Version)"
>   >
>       <!-- Main packed declaration -->
>       <Package
>         Comments="My Products - $(var.MyProductName) $(var.Version) 
> Installation"
>         Compressed="yes"
>         Description="$(var.MyDescription)"
>         InstallerVersion="301"
>       />
>       <!-- How data is packed inside the msi -->
>       <!--
>       <Media Id="1" Cabinet="contents.capab" EmbedCab="yes" />
>       -->
>       <MediaTemplate EmbedCab="yes"/>
> 
>       <!-- Directory Structure -->
>       <Directory Id="TARGETDIR" Name="SourceDir">
>         <Directory Id="ProgramFilesFolder" Name="Pfiles">
>           <Directory Id="MYPRODUCTSDIR" Name="$(var.MyCompanyNameShort)" 
> ShortName="livl8li5">
>             <Directory Id="APPLICATIONFOLDER" Name="$(var.MyProductName) 
> $(var.Version)" ShortName="rclggtos">
>             </Directory>
>           </Directory>
>         </Directory>
>       </Directory>
> 
>       <!-- Files -->
>       <Feature Id='Complete' Level='1'>
>         <!-- Pulls in fragment file created by heat.exe or Paraffin3.1 -->
>         <ComponentGroupRef Id='group_ProductFiles'/>
>         <!-- Pulls in fragment file to creat Shortcut & Program File Icons & 
> File association -->
>         <ComponentRef Id="ProgramFileShortcuts" />
>         <ComponentRef Id="DesktopShortcuts" />
>         <ComponentRef Id="FileAssociations" />
>       </Feature>
> 
>       <!-- Add Remove Programs metadata -->
>       <Property Id="ARPHELPLINK" Value="$(var.HelpUrl)" />
>       <Property Id="ARPURLINFOABOUT" Value="$(var.AboutUrl)" />
>       <Icon Id='Compass.ico' SourceFile="$(var.ProdIcon)"/>
>       <Property Id="ARPPRODUCTICON" Value='Compass.ico' />
> 
>       <!-- Icons for the installer -->
>       <WixVariable Id='WixUIBannerBmp' Value='$(var.InstallBanner)' />
>       <WixVariable Id='WixUIDialogBmp' Value='$(var.InstallDialog)' />
>       <WixVariable Id="WixUILicenseRtf" Value="$(var.EULArtf)" />
> 
>       <!-- Using the Wix UI library
>       <Property Id="WIXUI_INSTALLDIR">APPLICATIONFOLDER</Property>
>       -->
>       <!-- Allow per user or per machine -->
>         <UIRef Id="WixUI_MyAdvanced" />
>       <Property Id="ApplicationFolderName" 
> Value="$(var.MyCompanyNameShort)\$(var.MyProductName) $(var.Version)" />
>         <Property Id="WixAppFolder" Value="WixPerMachineFolder" />
>       <Property Id="WixUIBannerBMP" Value="$(var.InstallBanner)" />
>         <Property Id="WIXUI_EXITDIALOGOPTIONALTEXT" Value="Thank you for 
> installing this product." />
> 
>       <!-- Major Update -->
>       <MajorUpgrade
>         AllowDowngrades="yes"
>         Schedule="afterInstallValidate" />
> 
>       <!-- Always allow Upgrades and Downgrades -->
>       <Upgrade Id="{$(var.Guid_Upgrade)}">
>         <UpgradeVersion 
>                Minimum="$(var.Version)"
>                OnlyDetect="yes"
>                Property="NEWERVERSIONDETECTED"
>       />
>         <UpgradeVersion
>                Minimum="0.0.0"
>                Maximum="$(var.Version)"
>                IncludeMinimum="no"
>                IncludeMaximum="no"
>                Property="OLDERVERSIONBEINGUPGRADED"
>         />
>       </Upgrade>
>   </Product>
> </Wix>
> On Thu, 2013-08-29 at 16:55 -0700, Edwin Castro wrote:
> > There must be a <UIRef Id="WixUI_Advanced" /> somewhere in your project
> > OR in a wixlib you are referencing... You might try grep WixUI_Advanced
> > (or equivalent) on all the files in your project and all referenced WiX
> > projects.
> > 
> > --
> > Edwin G. Castro
> > 
> > On 8/29/13 3:34 PM, jo...@msli.com wrote:
> > > Tracking the UIRef
> > >
> > > MyProject.wxs: line 63:  <UIRef Id="Custom_Advanced" /> 
> > >
> > > Custom_Advanced.wxs: line 121: <UIRef Id="WixUI_Common" />
> > >
> > > Wix source:
> > > src/ext/UIExtension/wixlib/Common.wxs: line 20: <UI Id="WixUI_Common">
> > >
> > > So should I comment out the WixUI_Common reference?
> > >
> > > On Thu, 2013-08-29 at 22:08 +0000, John Cooper wrote:
> > >> Well, since you've got both the standard and the custom file referenced 
> > >> in your error messages, it looks like you're linking in both UI's.  Find 
> > >> the duplicate UIRef element and remove it.
> > >>
> > >> --
> > >> John Merryweather Cooper
> > >> Build & Install Engineer -- ESA
> > >> Jack Henry & Associates, Inc.(r)
> > >> Shawnee Mission, KS  66227
> > >> Office:  913-341-3434 x791011
> > >> jocoo...@jackhenry.com
> > >> www.jackhenry.com
> > >>
> > >>
> > >>
> > >>
> > >> -----Original Message-----
> > >> From: jo...@msli.com [mailto:jo...@msli.com] 
> > >> Sent: Thursday, August 29, 2013 4:47 PM
> > >> To: General discussion for Windows Installer XML toolset.
> > >> Subject: Re: [WiX-users] using WixUI_Advanced
> > >>
> > >> Has anyone had success copying WixUI_Advanced.wxs to a 
> > >> Custom_Advanced.wxs and using it in your msi installer?
> > >>
> > >> I end up with lots of errors like these:
> > >>
> > >>      [exec] 
> > >> C:\cygwin\home\build\current\EUROPA\Source\wix_project\Custom_Advanced.wxs(37)
> > >>  : error LGHT0091 : Duplicate symbol 
> > >> 'CustomAction:WixSetDefaultPerUserFolder' found. This typically means 
> > >> that an Id is duplicated. Check to make sure all your identifiers of a 
> > >> given type (File, Component, Feature) are unique.
> > >>      [exec] 
> > >> E:\delivery\Dev\wix37_public\src\ext\UIExtension\wixlib\WixUI_Advanced.wxs(37)
> > >>  : error LGHT0092 : Location of symbol related to previous error.
> > >>      [exec] 
> > >> E:\delivery\Dev\wix37_public\src\ext\UIExtension\wixlib\WixUI_Advanced.wxs(38)
> > >>  : error LGHT0091 : Duplicate symbol 
> > >> 'CustomAction:WixSetDefaultPerMachineFolder' found. This typically means 
> > >> that an Id is duplicated. Check to make sure all your identifiers of a 
> > >> given type (File, Component, Feature) are unique.
> > >>      [exec] 
> > >> C:\cygwin\home\build\current\EUROPA\Source\wix_project\Custom_Advanced.wxs(38)
> > >>  : error LGHT0092 : Location of symbol related to previous error.
> > >>      [exec] 
> > >> C:\cygwin\home\build\current\EUROPA\Source\wix_project\Custom_Advanced.wxs(37)
> > >>  : error LGHT0091 : Duplicate symbol 
> > >> 'CustomAction:WixSetDefaultPerUserFolder' found. This typically means 
> > >> that an Id is duplicated. Check to make sure all your identifiers of a 
> > >> given type (File, Component, Feature) are unique.
> > >>      [exec] 
> > >> E:\delivery\Dev\wix37_public\src\ext\UIExtension\wixlib\WixUI_Advanced.wxs(37)
> > >>  : error LGHT0092 : Location of symbol related to previous error.
> > >>
> > >> I copied WixUI_Advanced.wxs to my project directory as 
> > >> Custom_Advanced.wxs, and changed
> > >> From:
> > >> <         <UI Id="WixUI_Advanced">
> > >> To:
> > >>>         <UI Id="Custom_Advanced">
> > >> And in my Product element I added 
> > >> <UIRef Id="Custom_Advanced" />
> > >>
> > >> What Am I missing?  I'm following the Wix 3.6: A Developer's guide to
> > >> windows Installer XML.
> > >>
> > >> On Thu, 2013-08-29 at 09:31 -0700, jo...@msli.com wrote:
> > >>> In my wix msi I am giving the user a choice of per-user vs.
> > >>> system-wide.  
> > >>>
> > >>> What is the best way to indicate a nested directory structure in
> > >>> ApplicationFolderName?
> > >>>
> > >>> Examples do not show how to do a nested directory structure.  
> > >>>
> > >>> My directory structure looks like this, where the product is nested
> > >>> inside a folder named for the company, as there are many other products.
> > >>> <!-- Directory Structure -->
> > >>> <Directory Id="TARGETDIR" Name="SourceDir">
> > >>>  <Directory Id="ProgramFilesFolder" Name="Pfiles">
> > >>>   <Directory Id="MYPRODUCTSDIR" Name="$(var.MyCompanyName)" >
> > >>>    <Directory Id="INSTALLDIR" Name="$(var.MyProductName) 
> > >>> $(var.Version)" >
> > >>>    </Directory>
> > >>>   </Directory>
> > >>>  </Directory>
> > >>> </Directory>
> > >>>
> > >>> In <Project> I added
> > >>>  <UIRef Id="WixUI_Advanced" />
> > >>>
> > >>> Can ApplicationFolderName look like this, where I spell out the 
> > >>> directory nesting?
> > >>>  <property Id="ApplicationFolderName" 
> > >>> Value="$(var.MyCompanyName)\$(var.MyProductName) $(var.Version)" />
> > >>>
> > >>> Is this the right way to do it or is there something better?
> > >>>
> > >>> Additionally, the dialog does not look exactly like a drop in
> > >>> replacement for the simple radio selection bettween per-user vs
> > >>> system-wide provided in the  Visual Studio Setup Project.  Is there a
> > >>> way to get that behavior?
> > >>>
> > >>>
> > >>>
> > >>> NOTICE: This email may contain confidential information.  Please see 
> > >>> http://www.meyersound.com/confidential/ for our complete policy.
> > >>>
> > >>> ------------------------------------------------------------------------------
> > >>> Learn the latest--Visual Studio 2012, SharePoint 2013, SQL 2012, more!
> > >>> Discover the easy way to master current and previous Microsoft 
> > >>> technologies
> > >>> and advance your career. Get an incredible 1,500+ hours of step-by-step
> > >>> tutorial videos with LearnDevNow. Subscribe today and save!
> > >>> http://pubads.g.doubleclick.net/gampad/clk?id=58040911&iu=/4140/ostg.clktrk
> > >>> _______________________________________________
> > >>> WiX-users mailing list
> > >>> WiX-users@lists.sourceforge.net
> > >>> https://lists.sourceforge.net/lists/listinfo/wix-users
> > >>
> > >>
> > >> ------------------------------------------------------------------------------
> > >> Learn the latest--Visual Studio 2012, SharePoint 2013, SQL 2012, more!
> > >> Discover the easy way to master current and previous Microsoft 
> > >> technologies
> > >> and advance your career. Get an incredible 1,500+ hours of step-by-step
> > >> tutorial videos with LearnDevNow. Subscribe today and save!
> > >> http://pubads.g.doubleclick.net/gampad/clk?id=58040911&iu=/4140/ostg.clktrk
> > >> _______________________________________________
> > >> WiX-users mailing list
> > >> WiX-users@lists.sourceforge.net
> > >> https://lists.sourceforge.net/lists/listinfo/wix-users
> > >> NOTICE: This electronic mail message and any files transmitted with it 
> > >> are intended
> > >> exclusively for the individual or entity to which it is addressed. The 
> > >> message, 
> > >> together with any attachment, may contain confidential and/or privileged 
> > >> information.
> > >> Any unauthorized review, use, printing, saving, copying, disclosure or 
> > >> distribution 
> > >> is strictly prohibited. If you have received this message in error, 
> > >> please 
> > >> immediately advise the sender by reply email and delete all copies.
> > >>
> > >>
> > >> ------------------------------------------------------------------------------
> > >> Learn the latest--Visual Studio 2012, SharePoint 2013, SQL 2012, more!
> > >> Discover the easy way to master current and previous Microsoft 
> > >> technologies
> > >> and advance your career. Get an incredible 1,500+ hours of step-by-step
> > >> tutorial videos with LearnDevNow. Subscribe today and save!
> > >> http://pubads.g.doubleclick.net/gampad/clk?id=58040911&iu=/4140/ostg.clktrk
> > >> _______________________________________________
> > >> WiX-users mailing list
> > >> WiX-users@lists.sourceforge.net
> > >> https://lists.sourceforge.net/lists/listinfo/wix-users
> > >
> > >
> > > ------------------------------------------------------------------------------
> > > Learn the latest--Visual Studio 2012, SharePoint 2013, SQL 2012, more!
> > > Discover the easy way to master current and previous Microsoft 
> > > technologies
> > > and advance your career. Get an incredible 1,500+ hours of step-by-step
> > > tutorial videos with LearnDevNow. Subscribe today and save!
> > > http://pubads.g.doubleclick.net/gampad/clk?id=58040911&iu=/4140/ostg.clktrk
> > > _______________________________________________
> > > WiX-users mailing list
> > > WiX-users@lists.sourceforge.net
> > > https://lists.sourceforge.net/lists/listinfo/wix-users
> > >
> > 
> > 
> > ------------------------------------------------------------------------------
> > Learn the latest--Visual Studio 2012, SharePoint 2013, SQL 2012, more!
> > Discover the easy way to master current and previous Microsoft technologies
> > and advance your career. Get an incredible 1,500+ hours of step-by-step
> > tutorial videos with LearnDevNow. Subscribe today and save!
> > http://pubads.g.doubleclick.net/gampad/clk?id=58040911&iu=/4140/ostg.clktrk
> > _______________________________________________
> > WiX-users mailing list
> > WiX-users@lists.sourceforge.net
> > https://lists.sourceforge.net/lists/listinfo/wix-users
> 
> 
> 
> ------------------------------------------------------------------------------
> Learn the latest--Visual Studio 2012, SharePoint 2013, SQL 2012, more!
> Discover the easy way to master current and previous Microsoft technologies
> and advance your career. Get an incredible 1,500+ hours of step-by-step
> tutorial videos with LearnDevNow. Subscribe today and save!
> http://pubads.g.doubleclick.net/gampad/clk?id=58040911&iu=/4140/ostg.clktrk
> _______________________________________________
> WiX-users mailing list
> WiX-users@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/wix-users



------------------------------------------------------------------------------
Learn the latest--Visual Studio 2012, SharePoint 2013, SQL 2012, more!
Discover the easy way to master current and previous Microsoft technologies
and advance your career. Get an incredible 1,500+ hours of step-by-step
tutorial videos with LearnDevNow. Subscribe today and save!
http://pubads.g.doubleclick.net/gampad/clk?id=58040911&iu=/4140/ostg.clktrk
_______________________________________________
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users

Reply via email to