WIX: how do conditions for Show Dialog work with properties of type VS2010_IDE_VCSHARP_PROJECTSYSTEM_INSTALLED?

I need to show a warning message to the user (not a status message) based on the value of the property VS2010_IDE_VWD_PROJECTSYSTEM_INSTALLED. Here is a simple example:

{some files added}
...
<PropertyRef Id="VS2010_IDE_VWD_PROJECTSYSTEM_INSTALLED" />
<Property Id="WIXUI_INSTALLDIR" Value="INSTALLDIR" />
<UIRef Id="WixUI_InstallDir" />

<UI Id="CheckStudio">
  <Dialog Id="StudioDlg" Width="260" Height="75" Title="Hello" NoMinimize="yes" >

    <Control Id="Message" Type="Text" X="10" Y="10" Width="240" Height="40" Text="There is a problem." />

    <Control Id="Return" Type="PushButton" X="110" Y="52" Width="50" Height="17" Default="yes" Cancel="yes" Text="&amp;OK">
      <Publish Event="EndDialog" Value="Return">1</Publish>
    </Control>

  </Dialog>

  <InstallUISequence>
    <Show Dialog="StudioDlg" Sequence="1" >
      <![CDATA[Installed OR VS2010_IDE_VWD_PROJECTSYSTEM_INSTALLED]]>
    </Show>
  </InstallUISequence>

</UI>

I tried the following conditions:

VS2010_IDE_VWD_PROJECTSYSTEM_INSTALLED<>""
VS2010_IDE_VWD_PROJECTSYSTEM_INSTALLED<>"0"
VS2010_IDE_VWD_PROJECTSYSTEM_INSTALLED<>"{value}"

But nothing helps. On my both machines (one is installed VS, the other is clean), the dialog appears at the same time (but should only be on the first). I made a log and it shows that only on the first machine does this property matter. Ho, should these properties (indicating something) be used in such conditions? Maybe there is another way?

+5
source share
2 answers

WIX 3.6:

<InstallUISequence>
   <Show Dialog="FrameworkDlg" After="CostFinalize" >
     <![CDATA[NOT (Installed OR VS2010_IDE_VWD_PROJECTSYSTEM_INSTALLED OR VS2012_IDE_VWD_PROJECTSYSTEM_INSTALLED)]]>
   </Show>
</InstallUISequence>

, Visual Studio 2010 2012 .

+1

. "0" "1". ? , . :

  <InstallUISequence>
    <Show Dialog="StudioDlg" Before="WelcomeDlg" >
      <![CDATA[Installed OR VS2010_IDE_VWD_PROJECTSYSTEM_INSTALLED]]>
    </Show>
  </InstallUISequence>

( WelcomeDlg). . , = 1.

0

All Articles