Создание MSMQ-очереди на основе условий в установщике Wix - PullRequest
0 голосов
/ 03 марта 2020

Мне нужна помощь для создания нескольких очередей без использования реестра: так что теперь мой вопрос, как поставить условие, чтобы проверить, установлена ​​ли очередь. Условие типа: если «QueueTestQueue» установлен / создан, не выполнять, если нет, тогда выполнить ComponentGroupRef Id = «QueueTestQueue» />. Пример кода:

<?xml version="1.0" encoding="UTF-8"?>
<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi"
     xmlns:msmq="http://schemas.microsoft.com/wix/MsmqExtension"
     xmlns:util="http://schemas.microsoft.com/wix/UtilExtension">
  <?include ..\..\Definitions.wxi ?>
  <?define CurrentFeatureName = "TestQueue" ?>
  <?define Queue = "Install" ?>

    <Product Id           ="{33DFACFF-6B24-4037-8CC8-C22AABCF0B40}"
           Name         ="TestQueue"
           Language     ="$(var.Language)"
           Version      ="$(var.ProductVersion)"
           Manufacturer ="$(var.Manufacturer)"
           UpgradeCode  ="{5BAEA9F6-6D14-42BE-9390-767DB55B5F2C}">
    <Package InstallerVersion ="$(var.InstallerVersion)"
             Compressed       ="yes"
             InstallScope     ="perMachine" />

 <!--<Property to accept User Input from commandline>-->
    <Property Id="TEST" Value="abc">
    </Property>

<!--<User input and condition>-->
    <Feature Id="TestQueue" Title="$(var.CurrentFeatureName)" Level="0">
      <ComponentGroupRef Id="Account"/>
      <Condition Level ="1">
        <![CDATA[TEST ="1"]]>
      </Condition>
      <ComponentGroupRef Id="Queueconverter"/>
      <ComponentGroupRef Id="ProductComponents" />
  </Feature>

<!--<User input and condition>-->    
     <Feature Id="TestQueue1" Title="$(var.CurrentFeatureName)" Level="0">
     <Condition Level ="1">
        <![CDATA[TEST ="2"]]>
      </Condition>
      <ComponentGroupRef Id="QueueTestQueue"  />
  </Feature>
<!--<User input and condition>-->    
    <Feature Id="TestQueue2" Title="$(var.CurrentFeatureName)" Level="0">
     <Condition Level ="1">
        <![CDATA[TEST ="3"]]>
      </Condition>
      <ComponentGroupRef Id="QueueTestQueue"  />
      <ComponentGroupRef Id="Queueconverter"/>
  </Feature>
  </Fragment>
</Wix>
      ```
...