Hi,
I am having a strange problem with my installer.
Basically i have an installer for a c# com office addin. It uses a custom UI 
that has a combo box on it.

The combobox sets a public property loglevel which has a default value of 1:
<Property Id="LOGLEVEL" Value="1" />

my custom UI code is as follows:
 <UIRef Id="WixUI_Common" />
    <UIRef Id="WixUI_ErrorProgressText" />
    <UI>
      <Property Id="DefaultUIFont" Value="WixUI_Font_Normal" />
      <TextStyle Id="WixUI_Font_Normal" FaceName="Tahoma" Size="8" />
      <TextStyle Id="WixUI_Font_Bigger" FaceName="Tahoma" Size="12" />
      <TextStyle Id="WixUI_Font_Title" FaceName="Tahoma" Size="9" Bold="yes" />

      <Property Id="WIXUI_INSTALLDIR" Value="TARGETDIR" />
      <Property Id="ARPNOMODIFY" Value="1" />

      <DialogRef Id="BrowseDlg" />
      <DialogRef Id="DiskCostDlg" />
      <DialogRef Id="ErrorDlg" />
      <DialogRef Id="FatalError" />
      <DialogRef Id="FilesInUse" />
      <DialogRef Id="MsiRMFilesInUse" />
      <DialogRef Id="PrepareDlg" />
      <DialogRef Id="ProgressDlg" />
      <DialogRef Id="ResumeDlg" />
      <DialogRef Id="UserExit" />

      <Publish Dialog="ExitDialog" Control="Finish" Event="EndDialog" 
Value="Return" Order="999">1</Publish>
      <Publish Dialog="WelcomeDlg" Control="Next" Event="NewDialog" 
Value="UserInputDlg">1</Publish>
      
      <Publish Dialog="UserInputDlg" Control="Back" Event="NewDialog" 
Value="WelcomeDlg">1</Publish>
      <Publish Dialog="UserInputDlg" Control="Next" Event="NewDialog" 
Value="VerifyReadyDlg" Order="2">1</Publish>

      <Publish Dialog="VerifyReadyDlg" Control="Back" Event="NewDialog" 
Value="UserInputDlg" Order="1">NOT Installed</Publish>
      <Publish Dialog="VerifyReadyDlg" Control="Back" Event="NewDialog" 
Value="MaintenanceTypeDlg" Order="2">Installed</Publish>

      <Publish Dialog="MaintenanceWelcomeDlg" Control="Next" Event="NewDialog" 
Value="MaintenanceTypeDlg">1</Publish>
      <Publish Dialog="MaintenanceTypeDlg" Control="RepairButton" 
Event="NewDialog" Value="VerifyReadyDlg">1</Publish>
      <Publish Dialog="MaintenanceTypeDlg" Control="RemoveButton" 
Event="NewDialog" Value="VerifyReadyDlg">1</Publish>
      <Publish Dialog="MaintenanceTypeDlg" Control="Back" Event="NewDialog" 
Value="MaintenanceWelcomeDlg">1</Publish>

      <Dialog Id="UserInputDlg" Width="370" Height="270" Title="[ProductName] 
Setup">
        <Control Id="Title" Type="Text" X="15" Y="6" Width="200" Height="15" 
Transparent="yes" NoPrefix="yes" Text="{\WixUI_Font_Title}Installation 
Configuration" />
        <Control Id="Description" Type="Text" X="25" Y="23" Width="280" 
Height="15" Transparent="yes" NoPrefix="yes" Text="Enter the following 
information to configure your installation" />
        <Control Id="BannerBitmap" Type="Bitmap" X="0" Y="0" Width="370" 
Height="44" TabSkip="no" Text="!(loc.InstallDirDlgBannerBitmap)" />
        <Control Id="BannerLine" Type="Line" X="0" Y="44" Width="370" 
Height="0" />

        <Control Id="LogLevelLabel" Type="Text" X="30" Y="62" Width="90" 
Height="13" Text="Logging Level:" />
        <Control Id="LogLevelText" Type="ComboBox" X="130" Y="60" Width="70" 
Height="15" Property="LOGLEVEL" TabSkip="no" ComboList="yes" Sorted="yes" >
          <ComboBox Property="LOGLEVEL">
            <ListItem Text="Error" Value="0" />
            <ListItem Text="Info" Value="1" />
            <ListItem Text="Debug" Value="2" />
          </ComboBox>
        </Control>
        <!--
        <Control Id="IsTestingLabel" Type="Text" X="30" Y="95" Width="90" 
Height="13" Text="Testing Mode:" />
        <Control Id="IsTestingText" Type="ComboBox" X="130" Y="93" Width="70" 
Height="18" Property="ISTESTING" TabSkip="no" ComboList="yes" Sorted="yes" >
          <ComboBox Property="ISTESTING">
            <ListItem Text="Yes" Value="1" />
            <ListItem Text="No" Value="0" />
          </ComboBox>
        </Control>
        -->
        <!--
        <Control Id="DocsUrlLabel" Type="Text" X="30" Y="128" Width="90" 
Height="13" Text="Document Upload URL:" />
        <Control Id="DocsUrlText" Type="Edit" X="130" Y="126" Width="170" 
Height="18" Property="DOCSURL" Text="47" />
        -->        
      <Control Id="BottomLine" Type="Line" X="0" Y="234" Width="370" Height="0" 
/>
        <Control Id="Next" Type="PushButton" X="236" Y="243" Width="56" 
Height="17" Default="yes" Text="Next" />
        <Control Id="Back" Type="PushButton" X="180" Y="243" Width="56" 
Height="17" Text="Back" />
        <Control Id="Cancel" Type="PushButton" X="304" Y="243" Width="56" 
Height="17" Cancel="yes" Text="Cancel">
          <Publish Event="SpawnDialog" Value="CancelDlg">1</Publish>
        </Control>
      </Dialog>
    </UI>

This works fine when i build the msi and run it. My combobox works as you would 
expect and the public propery is set correctly based on user choice.  click 
here for screenshot 

The problem is that when I add a bootstrapper to the installation the combobox 
becomes locked. I click on the setup.exe. My bootstrapped components get 
installed and then the installer runs. When it get to my custom combobox screen 
only the default value appears and when you click to expand the combobox 
nothing happens. click here for screenshot 

I added the bootstrapper by inserting the follolowing code into the wixproj 
file as I have done for previous installers:
<ItemGroup>
    <BootstrapperFile Include=" Microsoft.Windows.Installer.3.1">
      <ProductName>Windows Installer 3.1</ProductName>
    </BootstrapperFile>
    <BootstrapperFile Include="Microsoft.Net.Framework.2.0">
      <ProductName>.NET Framework 2.0</ProductName>
    </BootstrapperFile>
    <BootstrapperFile Include="Microsoft.Office.PIA.XP">
      <ProductName>Office XP Interop Assemblies</ProductName>
    </BootstrapperFile>
  </ItemGroup>
  <Target Name="Bootstrapper" Inputs="$(OutDir)$(TargetFileName)" 
Outputs="$(OutDir)\Setup.exe" Condition=" '$(OutputType)'=='package' ">
    <GenerateBootstrapper ApplicationName="Case Study Prerequisites" 
ApplicationFile="$(TargetFileName)" BootstrapperItems="@(BootstrapperFile)" 
ComponentsLocation="Relative" OutputPath="$(OutputPath)" Culture="en-US" />
  </Target>
  <Import Project="$(WixTargetsPath)" />
  <PropertyGroup>
    <BuildDependsOn>$(BuildDependsOn);Bootstrapper</BuildDependsOn>
  </PropertyGroup>

The only difference i could see with this was that in the wixproj file there 
was no "builddependson" line
<BuildDependsOn>$(BuildDependsOn);Bootstrapper</BuildDependsOn> 
the last time i added a bootstrapper i replaced thias line. In my wixprojfile 
for theis installer this line was missing so I just inserted the bootstrapper 
code.


If anyone copuld point me in the right direction i would be very grateful as i 
have lost a lot of time trying to track down this problem

Kind Regards,
Barry











-- 
View this message in context: 
http://n2.nabble.com/adding-a-bootstrapper-breaks-comboboxes-on-custom-UI%21-tp2631805p2631805.html
Sent from the wix-users mailing list archive at Nabble.com.


------------------------------------------------------------------------------
This SF.net email is sponsored by:
High Quality Requirements in a Collaborative Environment.
Download a free trial of Rational Requirements Composer Now!
http://p.sf.net/sfu/www-ibm-com
_______________________________________________
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users

Reply via email to