﻿<?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_ESN.EXE" HomeSite="SqlExpr32Exe" PublicKey="0"/>
    <PackageFile Name="SQLEXPR_x64_ESN.EXE" HomeSite="SqlExpr64Exe" PublicKey="0"/>
    <PackageFile Name="eula.rtf"/>
  </PackageFiles>

  <InstallChecks>
    <ExternalCheck Property="SQLExpressChk" PackageFile="SqlExpressChk.exe" Arguments="11.0.2100 3082"/>
  </InstallChecks>

  <Commands Reboot="Defer">

    <!-- Defines a new installation (x86) -->
    <Command PackageFile="SQLEXPR32_x86_ESN.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_ESN.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_ESN.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_ESN.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">es</String>
    <String Name="SqlExpr32Exe">https://go.microsoft.com/fwlink/?LinkID=230852&amp;clcid=0xC0A</String>
    <String Name="SqlExpr64Exe">https://go.microsoft.com/fwlink/?LinkID=230853&amp;clcid=0xC0A</String>
    <String Name="AdminRequired">No tiene los permisos necesarios para instalar SQL Server 2012 Express. Póngase en contacto con el administrador.</String>
    <String Name="GeneralFailure">Error al intentar instalar SQL Server 2012 Express.</String>
    <String Name="InvalidPlatformOS">La versión del sistema operativo actual no es compatible con SQL Server 2012 Express.</String>
    <String Name="InvalidPlatformOSServicePack">El sistema operativo actual no cumple los requisitos del Service Pack para SQL Server 2012 Express. Instale el Service Pack más reciente desde el centro de descargas de Microsoft en https://www.microsoft.com/downloads antes de continuar con la instalación.</String>
    <String Name="InvalidPlatformOSLanguage">La versión en español de SQL Server 2012 Express solo se puede instalar en un sistema operativo Windows del mismo idioma.</String>
    <String Name="AnotherInstanceRunning">Ya se está ejecutando otra copia del programa de instalación. Se debe completar la copia en ejecución para poder continuar con la instalación.</String>
    <String Name="BetaComponentsFailure">Se detectó una versión beta de .NET Framework o SQL Server en el equipo. Desinstale todas las versiones beta anteriores de los componentes de SQL Server 2012, archivos de soporte de SQL Server o .NET Framework antes de continuar.</String>
    <String Name="InvalidPlatformArchitecture">Esta versión de SQL Server 2012 Express no es compatible con la arquitectura de procesador actual.</String>
    <String Name="InvalidUpgradeNotExpress">La instancia de SQL Server denominada 'SQLEXPRESS' no es una instancia de SQL Server Express. No puede actualizarse a SQL Server 2012 Express.</String>
    <String Name="InvalidUpgradeNotExpressCore">La instancia de SQL Server Express denominada 'SQLEXPRESS' contiene componentes que no están incluidos en SQL Server 2012 Express. SQL Server 2012 Express no puede actualizar esta instancia. Use SQL Server 2012 Express con Advanced Services en su lugar.</String>
    <String Name="InvalidUpgradeLanguage">La instancia de SQL Server Express denominada 'SQLEXPRESS' tiene una versión de idioma diferente de la de SQL Server 2012 Express. SQL Server 2012 Express no puede actualizar esta instancia.</String>
    <String Name="InvalidUpgradeWoW">SQL Server 2012 Express (x64) no puede actualizar la instancia existente de SQL Server Express (x64 WoW) denominada 'SQLEXPRESS'. Desinstale esta instancia de SQL Server Express y vuelva a intentar la instalación de SQL Server 2012 Express (x64).</String>
  </Strings>
</Package>