﻿<?xml version="1.0" encoding="utf-8"?>
<Package
  xmlns="http://schemas.microsoft.com/developer/2004/01/bootstrapper"
  Name="DisplayName"
  Culture="Culture"
  LicenseAgreement="eula.rtf">

  <PackageFiles CopyAllPackageFiles="false">
    <PackageFile Name="SQLEXPR32_x86_RUS.EXE" HomeSite="SqlExpr32Exe" PublicKey="0"/>
    <PackageFile Name="SQLEXPR_x64_RUS.EXE" HomeSite="SqlExpr64Exe" PublicKey="0"/>
    <PackageFile Name="eula.rtf"/>
  </PackageFiles>

  <InstallChecks>
    <ExternalCheck Property="SQLExpressChk" PackageFile="SqlExpressChk.exe" Arguments="11.0.2100 1049"/>
  </InstallChecks>

  <Commands Reboot="Defer">

    <!-- Defines a new installation (x86) -->
    <Command PackageFile="SQLEXPR32_x86_RUS.EXE"
         Arguments='/q /hideconsole /action=Install /features=SQL /instancename=SQLEXPRESS /enableranu=1 /AddCurrentUserAsSqlAdmin /IAcceptSqlServerLicenseTerms /skiprules=RebootRequiredCheck'
         EstimatedInstalledBytes="225000000"
         EstimatedInstallSeconds="420">
      <InstallConditions>
        <FailIf Property="VersionNT" Compare="ValueNotExists" String="InvalidPlatformOS"/>
        <FailIf Property="VersionNT" Compare="VersionLessThan" Value="6.0.0" String="InvalidPlatformOS"/>
        <FailIf Property="VersionNT" Compare="VersionLessThan" Value="6.0.2" String="InvalidPlatformOSServicePack"/>
        <FailIf Property="VersionNT" Compare="VersionEqualTo" Value="6.1.0" String="InvalidPlatformOSServicePack"/>
        <FailIf Property="AdminUser" Compare="ValueEqualTo" Value="false" String="AdminRequired"/>
        <FailIf Property="SQLExpressChk" Compare="ValueEqualTo" Value="-1" String="InvalidUpgradeNotExpress"/>
        <FailIf Property="SQLExpressChk" Compare="ValueEqualTo" Value="-2" String="InvalidUpgradeNotExpressCore"/>
        <FailIf Property="SQLExpressChk" Compare="ValueEqualTo" Value="-3" String="InvalidUpgradeLanguage"/>
        <FailIf Property="SQLExpressChk" Compare="ValueEqualTo" Value="-4" String="InvalidUpgradeWoW"/>
        <FailIf Property="SQLExpressChk" Compare="ValueLessThan" Value="-4" String="GeneralFailure"/>
        <BypassIf Property="ProcessorArchitecture" Compare="ValueNotEqualTo" Value="Intel"/>
        <BypassIf Property="SQLExpressChk" Compare="ValueNotEqualTo" Value="1"/>
      </InstallConditions>
      <ExitCodes>
        <ExitCode Value="0" Result="Success"/>
        <ExitCode Value="1641" Result="SuccessReboot"/>
        <ExitCode Value="3010" Result="SuccessReboot"/>
        <!-- 0x84BE0BC2 (1214,3010) -->
        <ExitCode Value="-2067919934" Result="FailReboot"/>
        <!-- 0x84C10BC2 (1217,3010) -->
        <ExitCode Value="-2067723326" Result="FailReboot"/>
        <!-- 0x84BE0007 (1214,7) -->
        <ExitCode Value="-2067922937" Result="Fail" String="AdminRequired"/>
        <!-- 0x84C4001F (1220,31) -->
        <ExitCode Value="-2067529697" Result="Fail" String="AdminRequired"/>
        <!-- 0x84BE0001 (1214,1)-->
        <ExitCode Value="-2067922943" Result="Fail" String="InvalidPlatformOSServicePack"/>
        <!-- 0x84C4000E (1220,14) -->
        <ExitCode Value="-2067529714" Result="Fail" String="InvalidPlatformOSLanguage"/>
        <!-- 0x84C4000B (1220,11) -->
        <ExitCode Value="-2067529717" Result="Fail" String="AnotherInstanceRunning"/>
        <!-- 0x84BE01F8 (1214,504) -->
        <ExitCode Value="-2067922440" Result="Fail" String="BetaComponentsFailure"/>
        <!-- 0x84BE01FA (1214,506) -->
        <ExitCode Value="-2067922438" Result="Fail" String="BetaComponentsFailure"/>
        <!-- 0x84BE0202 (1214,514) -->
        <ExitCode Value="-2067922430" Result="Fail" String="InvalidPlatformArchitecture"/>
        <!-- 0x84BE0203 (1214,515) -->
        <ExitCode Value="-2067922429" Result="Fail" String="InvalidPlatformArchitecture"/>
        <ExitCode Value="216" Result="Fail" String="InvalidPlatformArchitecture"/>
        <DefaultExitCode Result="Fail" FormatMessageFromSystem="true" String="GeneralFailure" />
      </ExitCodes>
    </Command>

    <!-- Defines an upgrade installation (x86) -->
    <Command PackageFile="SQLEXPR32_x86_RUS.EXE"
         Arguments="/q /hideconsole /action=Upgrade /instancename=SQLEXPRESS /IAcceptSqlServerLicenseTerms /skiprules=RebootRequiredCheck"
         EstimatedInstalledBytes="225000000"
         EstimatedInstallSeconds="420">
      <InstallConditions>
        <BypassIf Property="ProcessorArchitecture" Compare="ValueNotEqualTo" Value="Intel"/>
        <BypassIf Property="SQLExpressChk" Compare="ValueNotEqualTo" Value="2"/>
      </InstallConditions>
      <ExitCodes>
        <ExitCode Value="0" Result="Success"/>
        <ExitCode Value="1641" Result="SuccessReboot"/>
        <ExitCode Value="3010" Result="SuccessReboot"/>
        <!-- 0x84BE0BC2 (1214,3010) -->
        <ExitCode Value="-2067919934" Result="FailReboot"/>
        <!-- 0x84C10BC2 (1217,3010) -->
        <ExitCode Value="-2067723326" Result="FailReboot"/>
        <!-- 0x84BE0007 (1214,7) -->
        <ExitCode Value="-2067922937" Result="Fail" String="AdminRequired"/>
        <!-- 0x84C4001F (1220,31) -->
        <ExitCode Value="-2067529697" Result="Fail" String="AdminRequired"/>
        <!-- 0x84BE0001 (1214,1)-->
        <ExitCode Value="-2067922943" Result="Fail" String="InvalidPlatformOSServicePack"/>
        <!-- 0x84C4000E (1220,14) -->
        <ExitCode Value="-2067529714" Result="Fail" String="InvalidPlatformOSLanguage"/>
        <!-- 0x84C4000B (1220,11) -->
        <ExitCode Value="-2067529717" Result="Fail" String="AnotherInstanceRunning"/>
        <!-- 0x84BE01F8 (1214,504) -->
        <ExitCode Value="-2067922440" Result="Fail" String="BetaComponentsFailure"/>
        <!-- 0x84BE01FA (1214,506) -->
        <ExitCode Value="-2067922438" Result="Fail" String="BetaComponentsFailure"/>
        <!-- 0x84BE0202 (1214,514) -->
        <ExitCode Value="-2067922430" Result="Fail" String="InvalidPlatformArchitecture"/>
        <!-- 0x84BE0203 (1214,515) -->
        <ExitCode Value="-2067922429" Result="Fail" String="InvalidPlatformArchitecture"/>
        <ExitCode Value="216" Result="Fail" String="InvalidPlatformArchitecture"/>
        <DefaultExitCode Result="Fail" FormatMessageFromSystem="true" String="GeneralFailure" />
      </ExitCodes>
    </Command>

    <!-- Defines a new installation (amd64) -->
    <Command PackageFile="SQLEXPR_x64_RUS.EXE"
         Arguments='/q /hideconsole /action=Install /features=SQL /instancename=SQLEXPRESS /enableranu=1 /AddCurrentUserAsSqlAdmin /IAcceptSqlServerLicenseTerms /skiprules=RebootRequiredCheck'
         EstimatedInstalledBytes="225000000"
         EstimatedInstallSeconds="420">
      <InstallConditions>
        <BypassIf Property="ProcessorArchitecture" Compare="ValueNotEqualTo" Value="amd64"/>
        <BypassIf Property="SQLExpressChk" Compare="ValueNotEqualTo" Value="1"/>
      </InstallConditions>
      <ExitCodes>
        <ExitCode Value="0" Result="Success"/>
        <ExitCode Value="1641" Result="SuccessReboot"/>
        <ExitCode Value="3010" Result="SuccessReboot"/>
        <!-- 0x84BE0BC2 (1214,3010) -->
        <ExitCode Value="-2067919934" Result="FailReboot"/>
        <!-- 0x84C10BC2 (1217,3010) -->
        <ExitCode Value="-2067723326" Result="FailReboot"/>
        <!-- 0x84BE0007 (1214,7) -->
        <ExitCode Value="-2067922937" Result="Fail" String="AdminRequired"/>
        <!-- 0x84C4001F (1220,31) -->
        <ExitCode Value="-2067529697" Result="Fail" String="AdminRequired"/>
        <!-- 0x84BE0001 (1214,1)-->
        <ExitCode Value="-2067922943" Result="Fail" String="InvalidPlatformOSServicePack"/>
        <!-- 0x84C4000E (1220,14) -->
        <ExitCode Value="-2067529714" Result="Fail" String="InvalidPlatformOSLanguage"/>
        <!-- 0x84C4000B (1220,11) -->
        <ExitCode Value="-2067529717" Result="Fail" String="AnotherInstanceRunning"/>
        <!-- 0x84BE01F8 (1214,504) -->
        <ExitCode Value="-2067922440" Result="Fail" String="BetaComponentsFailure"/>
        <!-- 0x84BE01FA (1214,506) -->
        <ExitCode Value="-2067922438" Result="Fail" String="BetaComponentsFailure"/>
        <!-- 0x84BE0202 (1214,514) -->
        <ExitCode Value="-2067922430" Result="Fail" String="InvalidPlatformArchitecture"/>
        <!-- 0x84BE0203 (1214,515) -->
        <ExitCode Value="-2067922429" Result="Fail" String="InvalidPlatformArchitecture"/>
        <ExitCode Value="216" Result="Fail" String="InvalidPlatformArchitecture"/>
        <DefaultExitCode Result="Fail" FormatMessageFromSystem="true" String="GeneralFailure" />
      </ExitCodes>
    </Command>

    <!-- Defines an upgrade installation (amd64) -->
    <Command PackageFile="SQLEXPR_x64_RUS.EXE"
         Arguments="/q /hideconsole /action=Upgrade /instancename=SQLEXPRESS /IAcceptSqlServerLicenseTerms /skiprules=RebootRequiredCheck"
         EstimatedInstalledBytes="225000000"
         EstimatedInstallSeconds="420">
      <InstallConditions>
        <BypassIf Property="ProcessorArchitecture" Compare="ValueNotEqualTo" Value="amd64"/>
        <BypassIf Property="SQLExpressChk" Compare="ValueNotEqualTo" Value="2"/>
      </InstallConditions>
      <ExitCodes>
        <ExitCode Value="0" Result="Success"/>
        <ExitCode Value="1641" Result="SuccessReboot"/>
        <ExitCode Value="3010" Result="SuccessReboot"/>
        <!-- 0x84BE0BC2 (1214,3010) -->
        <ExitCode Value="-2067919934" Result="FailReboot"/>
        <!-- 0x84C10BC2 (1217,3010) -->
        <ExitCode Value="-2067723326" Result="FailReboot"/>
        <!-- 0x84BE0007 (1214,7) -->
        <ExitCode Value="-2067922937" Result="Fail" String="AdminRequired"/>
        <!-- 0x84C4001F (1220,31) -->
        <ExitCode Value="-2067529697" Result="Fail" String="AdminRequired"/>
        <!-- 0x84BE0001 (1214,1)-->
        <ExitCode Value="-2067922943" Result="Fail" String="InvalidPlatformOSServicePack"/>
        <!-- 0x84C4000E (1220,14) -->
        <ExitCode Value="-2067529714" Result="Fail" String="InvalidPlatformOSLanguage"/>
        <!-- 0x84C4000B (1220,11) -->
        <ExitCode Value="-2067529717" Result="Fail" String="AnotherInstanceRunning"/>
        <!-- 0x84BE01F8 (1214,504) -->
        <ExitCode Value="-2067922440" Result="Fail" String="BetaComponentsFailure"/>
        <!-- 0x84BE01FA (1214,506) -->
        <ExitCode Value="-2067922438" Result="Fail" String="BetaComponentsFailure"/>
        <!-- 0x84BE0202 (1214,514) -->
        <ExitCode Value="-2067922430" Result="Fail" String="InvalidPlatformArchitecture"/>
        <!-- 0x84BE0203 (1214,515) -->
        <ExitCode Value="-2067922429" Result="Fail" String="InvalidPlatformArchitecture"/>
        <ExitCode Value="216" Result="Fail" String="InvalidPlatformArchitecture"/>
        <DefaultExitCode Result="Fail" FormatMessageFromSystem="true" String="GeneralFailure" />
      </ExitCodes>
    </Command>

  </Commands>

  <Strings>
    <String Name="DisplayName">SQL Server 2012 Express</String>
    <String Name="Culture">ru</String>
    <String Name="SqlExpr32Exe">https://go.microsoft.com/fwlink/?LinkID=230852&amp;clcid=0x419</String>
    <String Name="SqlExpr64Exe">https://go.microsoft.com/fwlink/?LinkID=230853&amp;clcid=0x419</String>
    <String Name="AdminRequired">Недостаточно разрешений для установки SQL Server 2012 Express. Обратитесь к администратору.</String>
    <String Name="GeneralFailure">При попытке установки SQL Server 2012 Express произошла ошибка.</String>
    <String Name="InvalidPlatformOS">SQL Server 2012 Express не поддерживается в данной версии операционной системы.</String>
    <String Name="InvalidPlatformOSServicePack">Текущая операционная система не отвечает требованиям версии пакета обновления, необходимого для выпуска SQL Server 2012 Express. Перед продолжением установки установите последнюю версию пакета обновления из Центра загрузки Microsoft по адресу https://www.microsoft.com/downloads.</String>
    <String Name="InvalidPlatformOSLanguage">Английскую версию SQL Server 2012 Express можно установить только в операционной системе Windows на том же языке.</String>
    <String Name="AnotherInstanceRunning">Другой экземпляр программы установки уже запущен. Перед тем, как начать новую установку, необходимо завершить предыдущую.</String>
    <String Name="BetaComponentsFailure">На этом компьютере обнаружена бета-версия .NET Framework или SQL Server. Перед продолжением следует удалить все предыдущие бета-версии компонентов SQL Server 2012, файлов поддержки SQL Server или .NET Framework.</String>
    <String Name="InvalidPlatformArchitecture">Эта версия SQL Server 2012 Express не поддерживается текущей архитектурой процессора.</String>
    <String Name="InvalidUpgradeNotExpress">Этот экземпляр SQL Server с именем 'SQLEXPRESS' не является экземпляром SQL Server Express. Нельзя обновить до SQL Server 2012 Express.</String>
    <String Name="InvalidUpgradeNotExpressCore">Этот экземпляр SQL Server Express с именем 'SQLEXPRESS' содержит компоненты не включенные в SQL Server 2012 Express. Программе SQL Server 2012 Express не удалось обновить этот экземпляр. Вместо этого используйте SQL Server 2012 Express with Advanced Services.</String>
    <String Name="InvalidUpgradeLanguage">Этот экземпляр SQL Server Express с именем 'SQLEXPRESS' является версией на другом языке, чем SQL Server 2012 Express. Программе SQL Server 2012 Express не удалось обновить этот экземпляр.</String>
    <String Name="InvalidUpgradeWoW">Программе SQL Server 2012 Express (x64) не удалось обновить этот существующий экземпляр SQL Server Express (x64 WoW) с именем 'SQLEXPRESS'. Следует удалить этот экземпляр SQL Server Express, а затем повторить установку SQL Server 2012 Express (x64).</String>
  </Strings>
</Package>