Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Элемент Commands реализует тесты, описанные элементами под InstallChecks элементом, и объявляет пакет начального загрузчика ClickOnce, если тест завершается ошибкой.
Синтаксис
<Commands
Reboot
>
<Command
PackageFile
Arguments
EstimatedInstallSeconds
EstimatedDiskBytes
EstimatedTempBytes
Log
>
<InstallConditions>
<BypassIf
Property
Compare
Value
Schedule
/>
<FailIf
Property
Compare
Value
String
Schedule
/>
</InstallConditions>
<ExitCodes>
<ExitCode
Value
Result
String
/>
</ExitCodes>
</Command>
</Commands>
Элементы и атрибуты
Элемент Commands является обязательным. Элемент имеет перечисленные ниже атрибуты.
| Атрибут | Description |
|---|---|
Reboot |
Необязательно. Определяет, должна ли система перезапуститься, если любой из пакетов возвращает код выхода перезапуска. В следующем списке показаны допустимые значения:Defer. Перезапуск откладывается до некоторого будущего времени.Immediate. Вызывает немедленный перезапуск, если один из пакетов вернул код выхода перезапуска.None. Вызывает пропускать все запросы перезапуска.Значение по умолчанию — Immediate. |
Команда
Элемент Command является дочерним для элемента Commands. Элемент Commands может содержать один или несколько Command элементов. Элемент имеет перечисленные ниже атрибуты.
| Атрибут | Description |
|---|---|
PackageFile |
Обязательное. Имя устанавливаемого пакета должно иметь одно или несколько условий, указанных InstallConditions значением false. Пакет должен быть определен в том же файле с помощью PackageFile элемента. |
Arguments |
Необязательно. Набор аргументов командной строки для передачи в файл пакета. |
EstimatedInstallSeconds |
Необязательно. Предполагаемое время( в секундах) потребуется для установки пакета. Это значение определяет размер панели хода выполнения, отображаемой загрузчику пользователю. Значение по умолчанию равно 0, в этом случае оценка времени не указана. |
EstimatedDiskBytes |
Необязательно. Предполагаемый объем дискового пространства в байтах, который будет занимать пакет после завершения установки. Это значение используется в требованиях к жесткому диску, которые загрузчик отображает пользователю. Значение по умолчанию равно 0. В этом случае загрузчик не отображает требования к жесткому дисковому пространству. |
EstimatedTempBytes |
Необязательно. Предполагаемое количество временного места на диске в байтах, которое потребуется пакету. |
Log |
Необязательно. Путь к файлу журнала, который создает пакет, относительно корневого каталога пакета. |
InstallConditions
Элемент InstallConditions является дочерним элементом Command элемента. Каждый Command элемент может иметь не более одного InstallConditions элемента. Если элемент не InstallConditions существует, пакет, указанный Condition всегда будет выполняться.
Обход
Элемент BypassIf является дочерним InstallConditions элементом элемента и описывает положительное условие, при котором команда не должна выполняться. Каждый InstallConditions элемент может содержать ноль или больше BypassIf элементов.
BypassIf имеет следующие атрибуты.
| Атрибут | Description |
|---|---|
Property |
Обязательное. Имя проверяемого свойства. Свойство должно быть определено дочерним InstallChecks элементом элемента. Дополнительные сведения см. в разделе <"Элемент InstallChecks>". |
Compare |
Обязательно. Тип выполняемого сравнения. В следующем списке показаны допустимые значения:ValueEqualTo, ValueNotEqualToValueGreaterThanValueGreaterThanOrEqualToValueLessThanValueLessThanOrEqualToVersionEqualToVersionNotEqualToVersionGreaterThanVersionGreaterThanOrEqualToVersionLessThanVersionLessThanOrEqualToValueExistsValueNotExists |
Value |
Обязательно. Значение для сравнения со свойством. |
Schedule |
Необязательно. Имя тега Schedule , определяющего, когда должно оцениваться это правило. |
FailIf
Элемент FailIf является дочерним InstallConditions элементом элемента и описывает положительное условие, в котором должна остановиться установка. Каждый InstallConditions элемент может содержать ноль или больше FailIf элементов.
FailIf имеет следующие атрибуты.
| Атрибут | Description |
|---|---|
Property |
Обязательное. Имя проверяемого свойства. Свойство должно быть определено дочерним InstallChecks элементом элемента. Дополнительные сведения см. в разделе <"Элемент InstallChecks>". |
Compare |
Обязательно. Тип выполняемого сравнения. В следующем списке показаны допустимые значения:ValueEqualTo, ValueNotEqualToValueGreaterThanValueGreaterThanOrEqualToValueLessThanValueLessThanOrEqualToVersionEqualToVersionNotEqualToVersionGreaterThanVersionGreaterThanOrEqualToVersionLessThanVersionLessThanOrEqualToValueExistsValueNotExists |
Value |
Обязательно. Значение для сравнения со свойством. |
String |
Необязательно. Текст, отображаемый пользователю после сбоя. |
Schedule |
Необязательно. Имя тега Schedule , определяющего, когда должно оцениваться это правило. |
ExitCodes
Элемент ExitCodes является дочерним элементом Command элемента. Элемент ExitCodes содержит один или несколько ExitCode элементов, определяющих, что должно делать установка в ответ на код выхода из пакета. Под элементом Command может быть один необязательный ExitCode элемент. ExitCodes не имеет атрибутов.
ExitCode
Элемент ExitCode является дочерним элементом ExitCodes элемента. Элемент ExitCode определяет, что должно делать установка в ответ на код выхода из пакета. ExitCode не содержит дочерних элементов и имеет следующие атрибуты.
| Атрибут | Description |
|---|---|
Value |
Обязательное. Значение кода выхода, к которому применяется этот ExitCode элемент. |
Result |
Обязательно. Как установка должна реагировать на этот код выхода. В следующем списке показаны допустимые значения:Success. Помечает пакет как успешно установленный.SuccessReboot. Помечает пакет как успешно установленный и указывает системе перезапустить.Fail. Помечает пакет как сбой.FailReboot. Помечает пакет как сбой и указывает системе перезапустить. |
String |
Необязательно. Значение, отображаемое пользователю в ответ на этот код выхода. |
FormatMessageFromSystem |
Необязательно. Определяет, следует ли использовать сообщение об ошибке, предоставленное системой, соответствующее коду выхода, или использовать указанное в Stringней значение. Допустимые значения: trueэто означает, что используется ошибка, предоставляемая системой, и falseэто означает, что для использования строки, Stringпредоставленной системой. Значение по умолчанию — false. Если это свойство задано false, но String не задано, будет использоваться ошибка, предоставляемая системой. |
Пример
В следующем примере кода определяются команды для установки платформа .NET Framework 2.0.
<Commands Reboot="Immediate">
<Command PackageFile="instmsia.exe"
Arguments= ' /q /c:"msiinst /delayrebootq"'
EstimatedInstallSeconds="20" >
<InstallConditions>
<BypassIf Property="VersionNT" Compare="ValueExists"/>
BypassIf Property="VersionMsi" Compare="VersionGreaterThanOrEqualTo" Value="2.0"/>
</InstallConditions>
<ExitCodes>
<ExitCode Value="0" Result="SuccessReboot"/>
<ExitCode Value="1641" Result="SuccessReboot"/>
<ExitCode Value="3010" Result="SuccessReboot"/>
<DefaultExitCode Result="Fail" FormatMessageFromSystem="true" String="GeneralFailure" />
</ExitCodes>
</Command>
<Command PackageFile="WindowsInstaller-KB884016-v2-x86.exe"
Arguments= '/quiet /norestart'
EstimatedInstallSeconds="20" >
<InstallConditions>
<BypassIf Property="Version9x" Compare="ValueExists"/>
<BypassIf Property="VersionNT" Compare="VersionLessThan" Value="5.0.3"/>
<BypassIf Property="VersionMsi" Compare="VersionGreaterThanOrEqualTo" Value="3.0"/>
<FailIf Property="AdminUser" Compare="ValueEqualTo" Value="false" String="AdminRequired"/>
</InstallConditions>
<ExitCodes>
<ExitCode Value="0" Result="Success"/>
<ExitCode Value="1641" Result="SuccessReboot"/>
<ExitCode Value="3010" Result="SuccessReboot"/>
<DefaultExitCode Result="Fail" FormatMessageFromSystem="true" String="GeneralFailure" />
</ExitCodes>
</Command>
<Command PackageFile="dotnetfx.exe"
Arguments=' /q:a /c:"install /q /l"'
EstimatedInstalledBytes="21000000"
EstimatedInstallSeconds="300">
<!-- These checks determine whether the package is to be installed -->
<InstallConditions>
<!-- Either of these properties indicates the .NET Framework is already installed -->
<BypassIf Property="DotNetInstalled" Compare="ValueNotEqualTo" Value="0"/>
<!-- Block install if user does not have adminpermissions -->
<FailIf Property="AdminUser" Compare="ValueEqualTo" Value="false" String="AdminRequired"/>
<!-- Block install on Windows 95 -->
<FailIf Property="Version9X" Compare="VersionLessThan" Value="4.10" String="InvalidPlatformWin9x"/>
<!-- Block install on Windows 8 or less -->
<FailIf Property="VersionNT" Compare="VersionLessThan" Value="6.2" String="InvalidPlatformWinNT"/>
<!-- Block install if Internet Explorer 5.01 or later is not present -->
<FailIf Property="IEVersion" Compare="ValueNotExists" String="InvalidPlatformIE" />
<FailIf Property="IEVersion" Compare="VersionLessThan" Value="5.01" String="InvalidPlatformIE" />
<!-- Block install if the operating system does not support x86 -->
<FailIf Property="ProcessorArchitecture" Compare="ValueNotEqualTo" Value="Intel" String="InvalidPlatformArchitecture" />
</InstallConditions>
<ExitCodes>
<ExitCode Value="0" Result="Success"/>
<ExitCode Value="3010" Result="SuccessReboot"/>
<ExitCode Value="4097" Result="Fail" String="AdminRequired"/>
<ExitCode Value="4098" Result="Fail" String="WindowsInstallerComponentFailure"/>
<ExitCode Value="4099" Result="Fail" String="WindowsInstallerImproperInstall"/>
<ExitCode Value="4101" Result="Fail" String="AnotherInstanceRunning"/>
<ExitCode Value="4102" Result="Fail" String="OpenDatabaseFailure"/>
<ExitCode Value="4113" Result="Fail" String="BetaNDPFailure"/>
<DefaultExitCode Result="Fail" FormatMessageFromSystem="true" String="GeneralFailure" />
</ExitCodes>
</Command>
</Commands>