Элемент WiX ComboBox недопустим в схеме XML

1

Я пытаюсь добавить диалог для настроек IIS. Я хотел иметь ComboBox с Identities, чтобы пользователи могли выбирать либо из идентификаторов по умолчанию, либо вводить собственные настройки учетной записи службы.

<?xml version="1.0" encoding="UTF-8"?>
<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi">
    <Fragment>
    <UI>
      <Dialog Id="IISDialog" Width="370" Height="270">
        <Control Type="Edit" Id="IISDomain" Width="329" Height="15" X="22" Y="135" Property="WEB_APP_POOL_IDENTITY_DOMAIN"/>
        <Control Type="Text" Id="IISDomainLabel" Width="152" Height="10" X="22" Y="120">
          <Text>Account Domain:</Text>
        </Control>
        <Control Type="GroupBox" Id="CustomCredentials" Width="352" Height="128" X="10" Y="102">
          <Text>Custom Credentials</Text>
        </Control>
        <Control Type="Edit" Id="IISUser" Width="329" Height="15" X="22" Y="169" Property="WEB_APP_POOL_IDENTITY_USER">
          <Condition Action="enable">
            <![CDATA[IsUseCustomAccount]]>
          </Condition>
          <Condition Action="disable">
            <![CDATA[IsUseCustomAccount]]>
          </Condition>
        </Control>
        <Control Type="Text" Id="IISUserLabel" Width="323" Height="13" X="22" Y="154">
          <Text>User:</Text>
        </Control>
        <Control Type="MaskedEdit" Id="IISPWD" Width="328" Height="15" X="22" Y="206" Property="WEB_APP_POOL_IDENTITY_PASSWORD">
        </Control>
        <Control Type="Text" Id="IISPWDLabel" Width="50" Height="10" X="22" Y="191">
          <Text>Password:</Text>
        </Control>
        <Control Type="ComboBox" Property="DefaultAccount_Prop" Id="DefaultAccount" Width="104" Height="16" X="11" Y="49">
          <Condition Action="enable">
            <![CDATA[IsUseCustomAccount]]>
          </Condition>
          <Condition Action="disable">
            <![CDATA[IsUseCustomAccount]]>
          </Condition>
          <ComboBox Property="DefaultAccount_Prop">
            <ListItem Text="1" Value="1"/>
            <ListItem Text="2" Value="2"/>
          </ComboBox>
        </Control>
        <Control Type="CheckBox" Id="IsCustomAccount" Width="346" Height="17" X="11" Y="75" Property="IsUseCustomAccount" CheckBoxValue="1">
          <Text>Use Custom Account</Text>
        </Control>
        <Control Type="Text" Id="DefaultAccLabel" Width="105" Height="12" X="11" Y="30">
          <Text>System accounts:</Text>
        </Control>
        <Control Type="PushButton" Id="OK" Width="56" Height="17" X="304" Y="244">
          <Text>Next</Text>
        </Control>
        <Control Type="PushButton" Id="Back" Width="56" Height="17" X="244" Y="244">
          <Text>Back</Text>
        </Control>
      </Dialog>
    </UI>
    </Fragment>
</Wix>

Но когда я пытаюсь скомпилировать, я получаю следующую ошибку:

ошибка CNDL0107: Ошибка проверки схемы со следующей ошибкой в строке 1, столбец 2731: элемент "Контроль" в пространстве имен " http://schemas.microsoft.com/wix/2006/wi " имеет недопустимый дочерний элемент "ComboBox" в пространстве имен ' http://schemas.microsoft.com/wix/2006/wi. Список ожидаемых элементов: "Условие Опубликовать подписку". []

Любая идея, почему это может произойти? Кстати, когда я пытаюсь получить предложение от Intellisense, он также не распознает элемент combobox. Версия WiX Im использует 3,9

Теги:
wix
combobox

1 ответ

1
Лучший ответ

Переместите ComboBox до элементов Condition. Схема определяет порядок, поддерживающий любое количество условий, публикаций и подписчиков. Вероятно, это должна быть ошибка WiX - пожалуйста, не стесняйтесь писать ее по адресу http://wixtoolset.org/issues/.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню