System.Data.SQLite
Hex Artifact Content
Not logged in

Artifact 94286534eb2b7ea5620429d785bc09bccea9476b:


0000: 40 45 43 48 4f 20 4f 46 46 0d 0a 0d 0a 3a 3a 0d  @ECHO OFF....::.
0010: 0a 3a 3a 20 72 65 6c 65 61 73 65 2e 62 61 74 20  .:: release.bat 
0020: 2d 2d 0d 0a 3a 3a 0d 0a 3a 3a 20 42 69 6e 61 72  --..::..:: Binar
0030: 79 20 52 65 6c 65 61 73 65 20 54 6f 6f 6c 0d 0a  y Release Tool..
0040: 3a 3a 0d 0a 3a 3a 20 57 72 69 74 74 65 6e 20 62  ::..:: Written b
0050: 79 20 4a 6f 65 20 4d 69 73 74 61 63 68 6b 69 6e  y Joe Mistachkin
0060: 2e 0d 0a 3a 3a 20 52 65 6c 65 61 73 65 64 20 74  ...:: Released t
0070: 6f 20 74 68 65 20 70 75 62 6c 69 63 20 64 6f 6d  o the public dom
0080: 61 69 6e 2c 20 75 73 65 20 61 74 20 79 6f 75 72  ain, use at your
0090: 20 6f 77 6e 20 72 69 73 6b 21 0d 0a 3a 3a 0d 0a   own risk!..::..
00a0: 0d 0a 53 45 54 4c 4f 43 41 4c 0d 0a 0d 0a 52 45  ..SETLOCAL....RE
00b0: 4d 20 53 45 54 20 5f 5f 45 43 48 4f 3d 45 43 48  M SET __ECHO=ECH
00c0: 4f 0d 0a 52 45 4d 20 53 45 54 20 5f 5f 45 43 48  O..REM SET __ECH
00d0: 4f 32 3d 45 43 48 4f 0d 0a 52 45 4d 20 53 45 54  O2=ECHO..REM SET
00e0: 20 5f 5f 45 43 48 4f 33 3d 45 43 48 4f 0d 0a 49   __ECHO3=ECHO..I
00f0: 46 20 4e 4f 54 20 44 45 46 49 4e 45 44 20 5f 41  F NOT DEFINED _A
0100: 45 43 48 4f 20 28 53 45 54 20 5f 41 45 43 48 4f  ECHO (SET _AECHO
0110: 3d 52 45 4d 29 0d 0a 49 46 20 4e 4f 54 20 44 45  =REM)..IF NOT DE
0120: 46 49 4e 45 44 20 5f 43 45 43 48 4f 20 28 53 45  FINED _CECHO (SE
0130: 54 20 5f 43 45 43 48 4f 3d 52 45 4d 29 0d 0a 49  T _CECHO=REM)..I
0140: 46 20 4e 4f 54 20 44 45 46 49 4e 45 44 20 5f 56  F NOT DEFINED _V
0150: 45 43 48 4f 20 28 53 45 54 20 5f 56 45 43 48 4f  ECHO (SET _VECHO
0160: 3d 52 45 4d 29 0d 0a 0d 0a 25 5f 41 45 43 48 4f  =REM)....%_AECHO
0170: 25 20 52 75 6e 6e 69 6e 67 20 25 30 20 25 2a 0d  % Running %0 %*.
0180: 0a 0d 0a 53 45 54 20 44 55 4d 4d 59 32 3d 25 34  ...SET DUMMY2=%4
0190: 0d 0a 0d 0a 49 46 20 44 45 46 49 4e 45 44 20 44  ....IF DEFINED D
01a0: 55 4d 4d 59 32 20 28 0d 0a 20 20 47 4f 54 4f 20  UMMY2 (..  GOTO 
01b0: 75 73 61 67 65 0d 0a 29 0d 0a 0d 0a 53 45 54 20  usage..)....SET 
01c0: 54 4f 4f 4c 53 3d 25 7e 64 70 30 0d 0a 53 45 54  TOOLS=%~dp0..SET
01d0: 20 54 4f 4f 4c 53 3d 25 54 4f 4f 4c 53 3a 7e 30   TOOLS=%TOOLS:~0
01e0: 2c 2d 31 25 0d 0a 0d 0a 25 5f 56 45 43 48 4f 25  ,-1%....%_VECHO%
01f0: 20 54 6f 6f 6c 73 20 3d 20 27 25 54 4f 4f 4c 53   Tools = '%TOOLS
0200: 25 27 0d 0a 0d 0a 53 45 54 20 43 4f 4e 46 49 47  %'....SET CONFIG
0210: 55 52 41 54 49 4f 4e 3d 25 31 0d 0a 0d 0a 49 46  URATION=%1....IF
0220: 20 44 45 46 49 4e 45 44 20 43 4f 4e 46 49 47 55   DEFINED CONFIGU
0230: 52 41 54 49 4f 4e 20 28 0d 0a 20 20 43 41 4c 4c  RATION (..  CALL
0240: 20 3a 66 6e 5f 55 6e 71 75 6f 74 65 56 61 72 69   :fn_UnquoteVari
0250: 61 62 6c 65 20 43 4f 4e 46 49 47 55 52 41 54 49  able CONFIGURATI
0260: 4f 4e 0d 0a 29 20 45 4c 53 45 20 28 0d 0a 20 20  ON..) ELSE (..  
0270: 25 5f 41 45 43 48 4f 25 20 4e 6f 20 63 6f 6e 66  %_AECHO% No conf
0280: 69 67 75 72 61 74 69 6f 6e 20 73 70 65 63 69 66  iguration specif
0290: 69 65 64 2c 20 75 73 69 6e 67 20 64 65 66 61 75  ied, using defau
02a0: 6c 74 2e 2e 2e 0d 0a 20 20 53 45 54 20 43 4f 4e  lt.....  SET CON
02b0: 46 49 47 55 52 41 54 49 4f 4e 3d 52 65 6c 65 61  FIGURATION=Relea
02c0: 73 65 0d 0a 29 0d 0a 0d 0a 25 5f 56 45 43 48 4f  se..)....%_VECHO
02d0: 25 20 43 6f 6e 66 69 67 75 72 61 74 69 6f 6e 20  % Configuration 
02e0: 3d 20 27 25 43 4f 4e 46 49 47 55 52 41 54 49 4f  = '%CONFIGURATIO
02f0: 4e 25 27 0d 0a 25 5f 56 45 43 48 4f 25 20 43 6f  N%'..%_VECHO% Co
0300: 6e 66 69 67 75 72 61 74 69 6f 6e 53 75 66 66 69  nfigurationSuffi
0310: 78 20 3d 20 27 25 43 4f 4e 46 49 47 55 52 41 54  x = '%CONFIGURAT
0320: 49 4f 4e 53 55 46 46 49 58 25 27 0d 0a 0d 0a 53  IONSUFFIX%'....S
0330: 45 54 20 50 4c 41 54 46 4f 52 4d 3d 25 32 0d 0a  ET PLATFORM=%2..
0340: 0d 0a 49 46 20 44 45 46 49 4e 45 44 20 50 4c 41  ..IF DEFINED PLA
0350: 54 46 4f 52 4d 20 28 0d 0a 20 20 43 41 4c 4c 20  TFORM (..  CALL 
0360: 3a 66 6e 5f 55 6e 71 75 6f 74 65 56 61 72 69 61  :fn_UnquoteVaria
0370: 62 6c 65 20 50 4c 41 54 46 4f 52 4d 0d 0a 29 20  ble PLATFORM..) 
0380: 45 4c 53 45 20 28 0d 0a 20 20 25 5f 41 45 43 48  ELSE (..  %_AECH
0390: 4f 25 20 4e 6f 20 70 6c 61 74 66 6f 72 6d 20 73  O% No platform s
03a0: 70 65 63 69 66 69 65 64 2c 20 75 73 69 6e 67 20  pecified, using 
03b0: 64 65 66 61 75 6c 74 2e 2e 2e 0d 0a 20 20 53 45  default.....  SE
03c0: 54 20 50 4c 41 54 46 4f 52 4d 3d 57 69 6e 33 32  T PLATFORM=Win32
03d0: 0d 0a 29 0d 0a 0d 0a 25 5f 56 45 43 48 4f 25 20  ..)....%_VECHO% 
03e0: 50 6c 61 74 66 6f 72 6d 20 3d 20 27 25 50 4c 41  Platform = '%PLA
03f0: 54 46 4f 52 4d 25 27 0d 0a 0d 0a 53 45 54 20 59  TFORM%'....SET Y
0400: 45 41 52 3d 25 33 0d 0a 0d 0a 49 46 20 44 45 46  EAR=%3....IF DEF
0410: 49 4e 45 44 20 59 45 41 52 20 28 0d 0a 20 20 43  INED YEAR (..  C
0420: 41 4c 4c 20 3a 66 6e 5f 55 6e 71 75 6f 74 65 56  ALL :fn_UnquoteV
0430: 61 72 69 61 62 6c 65 20 59 45 41 52 0d 0a 29 20  ariable YEAR..) 
0440: 45 4c 53 45 20 28 0d 0a 20 20 25 5f 41 45 43 48  ELSE (..  %_AECH
0450: 4f 25 20 4e 6f 20 79 65 61 72 20 73 70 65 63 69  O% No year speci
0460: 66 69 65 64 2c 20 75 73 69 6e 67 20 64 65 66 61  fied, using defa
0470: 75 6c 74 2e 2e 2e 0d 0a 20 20 53 45 54 20 59 45  ult.....  SET YE
0480: 41 52 3d 32 30 30 38 0d 0a 29 0d 0a 0d 0a 25 5f  AR=2008..)....%_
0490: 56 45 43 48 4f 25 20 59 65 61 72 20 3d 20 27 25  VECHO% Year = '%
04a0: 59 45 41 52 25 27 0d 0a 0d 0a 53 45 54 20 42 41  YEAR%'....SET BA
04b0: 53 45 5f 43 4f 4e 46 49 47 55 52 41 54 49 4f 4e  SE_CONFIGURATION
04c0: 3d 25 43 4f 4e 46 49 47 55 52 41 54 49 4f 4e 25  =%CONFIGURATION%
04d0: 0d 0a 53 45 54 20 42 41 53 45 5f 43 4f 4e 46 49  ..SET BASE_CONFI
04e0: 47 55 52 41 54 49 4f 4e 3d 25 42 41 53 45 5f 43  GURATION=%BASE_C
04f0: 4f 4e 46 49 47 55 52 41 54 49 4f 4e 3a 4d 61 6e  ONFIGURATION:Man
0500: 61 67 65 64 4f 6e 6c 79 3d 25 0d 0a 53 45 54 20  agedOnly=%..SET 
0510: 42 41 53 45 5f 43 4f 4e 46 49 47 55 52 41 54 49  BASE_CONFIGURATI
0520: 4f 4e 3d 25 42 41 53 45 5f 43 4f 4e 46 49 47 55  ON=%BASE_CONFIGU
0530: 52 41 54 49 4f 4e 3a 4e 61 74 69 76 65 4f 6e 6c  RATION:NativeOnl
0540: 79 3d 25 0d 0a 53 45 54 20 42 41 53 45 5f 43 4f  y=%..SET BASE_CO
0550: 4e 46 49 47 55 52 41 54 49 4f 4e 3d 25 42 41 53  NFIGURATION=%BAS
0560: 45 5f 43 4f 4e 46 49 47 55 52 41 54 49 4f 4e 3a  E_CONFIGURATION:
0570: 53 74 61 74 69 63 3d 25 0d 0a 0d 0a 25 5f 56 45  Static=%....%_VE
0580: 43 48 4f 25 20 42 61 73 65 43 6f 6e 66 69 67 75  CHO% BaseConfigu
0590: 72 61 74 69 6f 6e 20 3d 20 27 25 42 41 53 45 5f  ration = '%BASE_
05a0: 43 4f 4e 46 49 47 55 52 41 54 49 4f 4e 25 27 0d  CONFIGURATION%'.
05b0: 0a 25 5f 56 45 43 48 4f 25 20 42 61 73 65 43 6f  .%_VECHO% BaseCo
05c0: 6e 66 69 67 75 72 61 74 69 6f 6e 53 75 66 66 69  nfigurationSuffi
05d0: 78 20 3d 20 27 25 42 41 53 45 5f 43 4f 4e 46 49  x = '%BASE_CONFI
05e0: 47 55 52 41 54 49 4f 4e 53 55 46 46 49 58 25 27  GURATIONSUFFIX%'
05f0: 0d 0a 0d 0a 49 46 20 4e 4f 54 20 44 45 46 49 4e  ....IF NOT DEFIN
0600: 45 44 20 42 41 53 45 5f 50 4c 41 54 46 4f 52 4d  ED BASE_PLATFORM
0610: 20 28 0d 0a 20 20 43 41 4c 4c 20 3a 66 6e 5f 53   (..  CALL :fn_S
0620: 65 74 56 61 72 69 61 62 6c 65 20 42 41 53 45 5f  etVariable BASE_
0630: 50 4c 41 54 46 4f 52 4d 20 50 4c 41 54 46 4f 52  PLATFORM PLATFOR
0640: 4d 0d 0a 29 0d 0a 0d 0a 25 5f 56 45 43 48 4f 25  M..)....%_VECHO%
0650: 20 42 61 73 65 50 6c 61 74 66 6f 72 6d 20 3d 20   BasePlatform = 
0660: 27 25 42 41 53 45 5f 50 4c 41 54 46 4f 52 4d 25  '%BASE_PLATFORM%
0670: 27 0d 0a 25 5f 56 45 43 48 4f 25 20 45 78 74 72  '..%_VECHO% Extr
0680: 61 50 6c 61 74 66 6f 72 6d 20 3d 20 27 25 45 58  aPlatform = '%EX
0690: 54 52 41 5f 50 4c 41 54 46 4f 52 4d 25 27 0d 0a  TRA_PLATFORM%'..
06a0: 0d 0a 49 46 20 4e 4f 54 20 44 45 46 49 4e 45 44  ..IF NOT DEFINED
06b0: 20 54 59 50 45 20 28 0d 0a 20 20 49 46 20 4e 4f   TYPE (..  IF NO
06c0: 54 20 44 45 46 49 4e 45 44 20 4e 4f 42 55 4e 44  T DEFINED NOBUND
06d0: 4c 45 20 28 0d 0a 20 20 20 20 49 46 20 2f 49 20  LE (..    IF /I 
06e0: 22 25 43 4f 4e 46 49 47 55 52 41 54 49 4f 4e 25  "%CONFIGURATION%
06f0: 22 20 3d 3d 20 22 25 42 41 53 45 5f 43 4f 4e 46  " == "%BASE_CONF
0700: 49 47 55 52 41 54 49 4f 4e 25 22 20 28 0d 0a 20  IGURATION%" (.. 
0710: 20 20 20 20 20 49 46 20 2f 49 20 22 25 42 41 53       IF /I "%BAS
0720: 45 5f 43 4f 4e 46 49 47 55 52 41 54 49 4f 4e 25  E_CONFIGURATION%
0730: 22 20 3d 3d 20 22 44 65 62 75 67 22 20 28 0d 0a  " == "Debug" (..
0740: 20 20 20 20 20 20 20 20 53 45 54 20 54 59 50 45          SET TYPE
0750: 3d 25 54 59 50 45 5f 50 52 45 46 49 58 25 62 69  =%TYPE_PREFIX%bi
0760: 6e 61 72 79 2d 64 65 62 75 67 2d 62 75 6e 64 6c  nary-debug-bundl
0770: 65 0d 0a 20 20 20 20 20 20 29 20 45 4c 53 45 20  e..      ) ELSE 
0780: 28 0d 0a 20 20 20 20 20 20 20 20 53 45 54 20 54  (..        SET T
0790: 59 50 45 3d 25 54 59 50 45 5f 50 52 45 46 49 58  YPE=%TYPE_PREFIX
07a0: 25 62 69 6e 61 72 79 2d 62 75 6e 64 6c 65 0d 0a  %binary-bundle..
07b0: 20 20 20 20 20 20 29 0d 0a 20 20 20 20 29 20 45        )..    ) E
07c0: 4c 53 45 20 28 0d 0a 20 20 20 20 20 20 49 46 20  LSE (..      IF 
07d0: 2f 49 20 22 25 42 41 53 45 5f 43 4f 4e 46 49 47  /I "%BASE_CONFIG
07e0: 55 52 41 54 49 4f 4e 25 22 20 3d 3d 20 22 44 65  URATION%" == "De
07f0: 62 75 67 22 20 28 0d 0a 20 20 20 20 20 20 20 20  bug" (..        
0800: 53 45 54 20 54 59 50 45 3d 25 54 59 50 45 5f 50  SET TYPE=%TYPE_P
0810: 52 45 46 49 58 25 62 69 6e 61 72 79 2d 64 65 62  REFIX%binary-deb
0820: 75 67 0d 0a 20 20 20 20 20 20 29 20 45 4c 53 45  ug..      ) ELSE
0830: 20 28 0d 0a 20 20 20 20 20 20 20 20 53 45 54 20   (..        SET 
0840: 54 59 50 45 3d 25 54 59 50 45 5f 50 52 45 46 49  TYPE=%TYPE_PREFI
0850: 58 25 62 69 6e 61 72 79 0d 0a 20 20 20 20 20 20  X%binary..      
0860: 29 0d 0a 20 20 20 20 29 0d 0a 20 20 29 20 45 4c  )..    )..  ) EL
0870: 53 45 20 28 0d 0a 20 20 20 20 49 46 20 2f 49 20  SE (..    IF /I 
0880: 22 25 42 41 53 45 5f 43 4f 4e 46 49 47 55 52 41  "%BASE_CONFIGURA
0890: 54 49 4f 4e 25 22 20 3d 3d 20 22 44 65 62 75 67  TION%" == "Debug
08a0: 22 20 28 0d 0a 20 20 20 20 20 20 53 45 54 20 54  " (..      SET T
08b0: 59 50 45 3d 25 54 59 50 45 5f 50 52 45 46 49 58  YPE=%TYPE_PREFIX
08c0: 25 62 69 6e 61 72 79 2d 64 65 62 75 67 0d 0a 20  %binary-debug.. 
08d0: 20 20 20 29 20 45 4c 53 45 20 28 0d 0a 20 20 20     ) ELSE (..   
08e0: 20 20 20 53 45 54 20 54 59 50 45 3d 25 54 59 50     SET TYPE=%TYP
08f0: 45 5f 50 52 45 46 49 58 25 62 69 6e 61 72 79 0d  E_PREFIX%binary.
0900: 0a 20 20 20 20 29 0d 0a 20 20 29 0d 0a 29 0d 0a  .    )..  )..)..
0910: 0d 0a 25 5f 56 45 43 48 4f 25 20 54 79 70 65 20  ..%_VECHO% Type 
0920: 3d 20 27 25 54 59 50 45 25 27 0d 0a 0d 0a 43 41  = '%TYPE%'....CA
0930: 4c 4c 20 3a 66 6e 5f 52 65 73 65 74 45 72 72 6f  LL :fn_ResetErro
0940: 72 4c 65 76 65 6c 0d 0a 0d 0a 25 5f 5f 45 43 48  rLevel....%__ECH
0950: 4f 33 25 20 43 41 4c 4c 20 22 25 54 4f 4f 4c 53  O3% CALL "%TOOLS
0960: 25 5c 73 65 74 5f 63 6f 6d 6d 6f 6e 2e 62 61 74  %\set_common.bat
0970: 22 0d 0a 0d 0a 49 46 20 45 52 52 4f 52 4c 45 56  "....IF ERRORLEV
0980: 45 4c 20 31 20 28 0d 0a 20 20 45 43 48 4f 20 43  EL 1 (..  ECHO C
0990: 6f 75 6c 64 20 6e 6f 74 20 73 65 74 20 63 6f 6d  ould not set com
09a0: 6d 6f 6e 20 76 61 72 69 61 62 6c 65 73 2e 0d 0a  mon variables...
09b0: 20 20 47 4f 54 4f 20 65 72 72 6f 72 73 0d 0a 29    GOTO errors..)
09c0: 0d 0a 0d 0a 49 46 20 4e 4f 54 20 44 45 46 49 4e  ....IF NOT DEFIN
09d0: 45 44 20 46 52 41 4d 45 57 4f 52 4b 20 28 0d 0a  ED FRAMEWORK (..
09e0: 20 20 49 46 20 44 45 46 49 4e 45 44 20 59 45 41    IF DEFINED YEA
09f0: 52 20 28 0d 0a 20 20 20 20 43 41 4c 4c 20 3a 66  R (..    CALL :f
0a00: 6e 5f 53 65 74 56 61 72 69 61 62 6c 65 20 46 52  n_SetVariable FR
0a10: 41 4d 45 57 4f 52 4b 20 46 52 41 4d 45 57 4f 52  AMEWORK FRAMEWOR
0a20: 4b 25 59 45 41 52 25 0d 0a 20 20 29 20 45 4c 53  K%YEAR%..  ) ELS
0a30: 45 20 28 0d 0a 20 20 20 20 53 45 54 20 46 52 41  E (..    SET FRA
0a40: 4d 45 57 4f 52 4b 3d 6e 65 74 46 78 32 30 0d 0a  MEWORK=netFx20..
0a50: 20 20 29 0d 0a 29 0d 0a 0d 0a 25 5f 56 45 43 48    )..)....%_VECH
0a60: 4f 25 20 46 72 61 6d 65 77 6f 72 6b 20 3d 20 27  O% Framework = '
0a70: 25 46 52 41 4d 45 57 4f 52 4b 25 27 0d 0a 0d 0a  %FRAMEWORK%'....
0a80: 53 45 54 20 52 4f 4f 54 3d 25 7e 64 70 30 5c 2e  SET ROOT=%~dp0\.
0a90: 2e 0d 0a 53 45 54 20 52 4f 4f 54 3d 25 52 4f 4f  ...SET ROOT=%ROO
0aa0: 54 3a 5c 5c 3d 5c 25 0d 0a 0d 0a 53 45 54 20 54  T:\\=\%....SET T
0ab0: 4f 4f 4c 53 3d 25 7e 64 70 30 0d 0a 53 45 54 20  OOLS=%~dp0..SET 
0ac0: 54 4f 4f 4c 53 3d 25 54 4f 4f 4c 53 3a 7e 30 2c  TOOLS=%TOOLS:~0,
0ad0: 2d 31 25 0d 0a 0d 0a 25 5f 56 45 43 48 4f 25 20  -1%....%_VECHO% 
0ae0: 52 6f 6f 74 20 3d 20 27 25 52 4f 4f 54 25 27 0d  Root = '%ROOT%'.
0af0: 0a 25 5f 56 45 43 48 4f 25 20 54 6f 6f 6c 73 20  .%_VECHO% Tools 
0b00: 3d 20 27 25 54 4f 4f 4c 53 25 27 0d 0a 0d 0a 43  = '%TOOLS%'....C
0b10: 41 4c 4c 20 3a 66 6e 5f 52 65 73 65 74 45 72 72  ALL :fn_ResetErr
0b20: 6f 72 4c 65 76 65 6c 0d 0a 0d 0a 25 5f 5f 45 43  orLevel....%__EC
0b30: 48 4f 32 25 20 50 55 53 48 44 20 22 25 52 4f 4f  HO2% PUSHD "%ROO
0b40: 54 25 22 0d 0a 0d 0a 49 46 20 45 52 52 4f 52 4c  T%"....IF ERRORL
0b50: 45 56 45 4c 20 31 20 28 0d 0a 20 20 45 43 48 4f  EVEL 1 (..  ECHO
0b60: 20 43 6f 75 6c 64 20 6e 6f 74 20 63 68 61 6e 67   Could not chang
0b70: 65 20 64 69 72 65 63 74 6f 72 79 20 74 6f 20 22  e directory to "
0b80: 25 52 4f 4f 54 25 22 2e 0d 0a 20 20 47 4f 54 4f  %ROOT%"...  GOTO
0b90: 20 65 72 72 6f 72 73 0d 0a 29 0d 0a 0d 0a 46 4f   errors..)....FO
0ba0: 52 20 2f 46 20 22 64 65 6c 69 6d 73 3d 22 20 25  R /F "delims=" %
0bb0: 25 56 20 49 4e 20 28 27 54 59 50 45 20 53 79 73  %V IN ('TYPE Sys
0bc0: 74 65 6d 2e 44 61 74 61 2e 53 51 4c 69 74 65 5c  tem.Data.SQLite\
0bd0: 41 73 73 65 6d 62 6c 79 49 6e 66 6f 2e 63 73 20  AssemblyInfo.cs 
0be0: 5e 7c 20 66 69 6e 64 2e 65 78 65 20 22 41 73 73  ^| find.exe "Ass
0bf0: 65 6d 62 6c 79 56 65 72 73 69 6f 6e 22 27 29 20  emblyVersion"') 
0c00: 44 4f 20 28 0d 0a 20 20 53 45 54 20 56 45 52 53  DO (..  SET VERS
0c10: 49 4f 4e 3d 25 25 56 0d 0a 29 0d 0a 0d 0a 49 46  ION=%%V..)....IF
0c20: 20 4e 4f 54 20 44 45 46 49 4e 45 44 20 56 45 52   NOT DEFINED VER
0c30: 53 49 4f 4e 20 28 0d 0a 20 20 53 45 54 20 56 45  SION (..  SET VE
0c40: 52 53 49 4f 4e 3d 31 2e 30 2e 30 2e 30 0d 0a 20  RSION=1.0.0.0.. 
0c50: 20 47 4f 54 4f 20 73 6b 69 70 5f 6d 75 6e 67 65   GOTO skip_munge
0c60: 56 65 72 73 69 6f 6e 0d 0a 29 0d 0a 0d 0a 52 45  Version..)....RE
0c70: 4d 0d 0a 52 45 4d 20 4e 4f 54 45 3a 20 53 74 72  M..REM NOTE: Str
0c80: 69 70 20 6f 66 66 20 61 6c 6c 20 74 68 65 20 65  ip off all the e
0c90: 78 74 72 61 20 73 74 75 66 66 20 66 72 6f 6d 20  xtra stuff from 
0ca0: 74 68 65 20 41 73 73 65 6d 62 6c 79 56 65 72 73  the AssemblyVers
0cb0: 69 6f 6e 20 6c 69 6e 65 20 77 65 20 66 6f 75 6e  ion line we foun
0cc0: 64 0d 0a 52 45 4d 20 20 20 20 20 20 20 69 6e 20  d..REM       in 
0cd0: 74 68 65 20 41 73 73 65 6d 62 6c 79 49 6e 66 6f  the AssemblyInfo
0ce0: 2e 63 73 20 66 69 6c 65 20 74 68 61 74 20 77 65  .cs file that we
0cf0: 20 64 6f 20 6e 6f 74 20 6e 65 65 64 20 28 69 2e   do not need (i.
0d00: 65 2e 20 65 76 65 72 79 74 68 69 6e 67 0d 0a 52  e. everything..R
0d10: 45 4d 20 20 20 20 20 20 20 65 78 63 65 70 74 20  EM       except 
0d20: 74 68 65 20 72 61 77 20 76 65 72 73 69 6f 6e 20  the raw version 
0d30: 6e 75 6d 62 65 72 20 69 74 73 65 6c 66 29 2e 0d  number itself)..
0d40: 0a 52 45 4d 0d 0a 53 45 54 20 56 45 52 53 49 4f  .REM..SET VERSIO
0d50: 4e 3d 25 56 45 52 53 49 4f 4e 3a 28 3d 25 0d 0a  N=%VERSION:(=%..
0d60: 53 45 54 20 56 45 52 53 49 4f 4e 3d 25 56 45 52  SET VERSION=%VER
0d70: 53 49 4f 4e 3a 29 3d 25 0d 0a 53 45 54 20 56 45  SION:)=%..SET VE
0d80: 52 53 49 4f 4e 3d 25 56 45 52 53 49 4f 4e 3a 5b  RSION=%VERSION:[
0d90: 3d 25 0d 0a 53 45 54 20 56 45 52 53 49 4f 4e 3d  =%..SET VERSION=
0da0: 25 56 45 52 53 49 4f 4e 3a 5d 3d 25 0d 0a 53 45  %VERSION:]=%..SE
0db0: 54 20 56 45 52 53 49 4f 4e 3d 25 56 45 52 53 49  T VERSION=%VERSI
0dc0: 4f 4e 3a 20 3d 25 0d 0a 53 45 54 20 56 45 52 53  ON: =%..SET VERS
0dd0: 49 4f 4e 3d 25 56 45 52 53 49 4f 4e 3a 61 73 73  ION=%VERSION:ass
0de0: 65 6d 62 6c 79 3a 3d 25 0d 0a 53 45 54 20 56 45  embly:=%..SET VE
0df0: 52 53 49 4f 4e 3d 25 56 45 52 53 49 4f 4e 3a 41  RSION=%VERSION:A
0e00: 73 73 65 6d 62 6c 79 56 65 72 73 69 6f 6e 3d 25  ssemblyVersion=%
0e10: 0d 0a 53 45 54 20 56 45 52 53 49 4f 4e 3d 25 56  ..SET VERSION=%V
0e20: 45 52 53 49 4f 4e 3a 22 3d 25 0d 0a 52 45 4d 20  ERSION:"=%..REM 
0e30: 22 0d 0a 0d 0a 3a 73 6b 69 70 5f 6d 75 6e 67 65  "....:skip_munge
0e40: 56 65 72 73 69 6f 6e 0d 0a 0d 0a 25 5f 56 45 43  Version....%_VEC
0e50: 48 4f 25 20 56 65 72 73 69 6f 6e 20 3d 20 27 25  HO% Version = '%
0e60: 56 45 52 53 49 4f 4e 25 27 0d 0a 0d 0a 43 41 4c  VERSION%'....CAL
0e70: 4c 20 3a 66 6e 5f 52 65 73 65 74 45 72 72 6f 72  L :fn_ResetError
0e80: 4c 65 76 65 6c 0d 0a 0d 0a 49 46 20 4e 4f 54 20  Level....IF NOT 
0e90: 45 58 49 53 54 20 53 65 74 75 70 5c 4f 75 74 70  EXIST Setup\Outp
0ea0: 75 74 20 28 0d 0a 20 20 25 5f 5f 45 43 48 4f 25  ut (..  %__ECHO%
0eb0: 20 4d 4b 44 49 52 20 53 65 74 75 70 5c 4f 75 74   MKDIR Setup\Out
0ec0: 70 75 74 0d 0a 0d 0a 20 20 49 46 20 45 52 52 4f  put....  IF ERRO
0ed0: 52 4c 45 56 45 4c 20 31 20 28 0d 0a 20 20 20 20  RLEVEL 1 (..    
0ee0: 45 43 48 4f 20 43 6f 75 6c 64 20 6e 6f 74 20 63  ECHO Could not c
0ef0: 72 65 61 74 65 20 64 69 72 65 63 74 6f 72 79 20  reate directory 
0f00: 22 53 65 74 75 70 5c 4f 75 74 70 75 74 22 2e 0d  "Setup\Output"..
0f10: 0a 20 20 20 20 47 4f 54 4f 20 65 72 72 6f 72 73  .    GOTO errors
0f20: 0d 0a 20 20 29 0d 0a 29 0d 0a 0d 0a 53 45 54 20  ..  )..)....SET 
0f30: 45 58 43 4c 55 44 45 5f 42 49 4e 3d 40 64 61 74  EXCLUDE_BIN=@dat
0f40: 61 5c 65 78 63 6c 75 64 65 5f 62 69 6e 2e 74 78  a\exclude_bin.tx
0f50: 74 0d 0a 53 45 54 20 50 52 45 46 49 58 3d 73 71  t..SET PREFIX=sq
0f60: 6c 69 74 65 0d 0a 0d 0a 25 5f 56 45 43 48 4f 25  lite....%_VECHO%
0f70: 20 45 78 63 6c 75 64 65 42 69 6e 20 3d 20 27 25   ExcludeBin = '%
0f80: 45 58 43 4c 55 44 45 5f 42 49 4e 25 27 0d 0a 25  EXCLUDE_BIN%'..%
0f90: 5f 56 45 43 48 4f 25 20 50 72 65 66 69 78 20 3d  _VECHO% Prefix =
0fa0: 20 27 25 50 52 45 46 49 58 25 27 0d 0a 0d 0a 49   '%PREFIX%'....I
0fb0: 46 20 44 45 46 49 4e 45 44 20 4e 4f 5f 52 45 4c  F DEFINED NO_REL
0fc0: 45 41 53 45 5f 59 45 41 52 20 28 0d 0a 20 20 49  EASE_YEAR (..  I
0fd0: 46 20 44 45 46 49 4e 45 44 20 4e 4f 5f 52 45 4c  F DEFINED NO_REL
0fe0: 45 41 53 45 5f 50 4c 41 54 46 4f 52 4d 20 28 0d  EASE_PLATFORM (.
0ff0: 0a 20 20 20 20 53 45 54 20 52 45 4c 45 41 53 45  .    SET RELEASE
1000: 5f 4f 55 54 50 55 54 5f 46 49 4c 45 3d 53 65 74  _OUTPUT_FILE=Set
1010: 75 70 5c 4f 75 74 70 75 74 5c 25 50 52 45 46 49  up\Output\%PREFI
1020: 58 25 2d 25 46 52 41 4d 45 57 4f 52 4b 25 2d 25  X%-%FRAMEWORK%-%
1030: 54 59 50 45 25 2d 25 56 45 52 53 49 4f 4e 25 2e  TYPE%-%VERSION%.
1040: 7a 69 70 0d 0a 20 20 29 20 45 4c 53 45 20 28 0d  zip..  ) ELSE (.
1050: 0a 20 20 20 20 53 45 54 20 52 45 4c 45 41 53 45  .    SET RELEASE
1060: 5f 4f 55 54 50 55 54 5f 46 49 4c 45 3d 53 65 74  _OUTPUT_FILE=Set
1070: 75 70 5c 4f 75 74 70 75 74 5c 25 50 52 45 46 49  up\Output\%PREFI
1080: 58 25 2d 25 46 52 41 4d 45 57 4f 52 4b 25 2d 25  X%-%FRAMEWORK%-%
1090: 54 59 50 45 25 2d 25 42 41 53 45 5f 50 4c 41 54  TYPE%-%BASE_PLAT
10a0: 46 4f 52 4d 25 25 45 58 54 52 41 5f 50 4c 41 54  FORM%%EXTRA_PLAT
10b0: 46 4f 52 4d 25 2d 25 56 45 52 53 49 4f 4e 25 2e  FORM%-%VERSION%.
10c0: 7a 69 70 0d 0a 20 20 29 0d 0a 29 20 45 4c 53 45  zip..  )..) ELSE
10d0: 20 28 0d 0a 20 20 49 46 20 44 45 46 49 4e 45 44   (..  IF DEFINED
10e0: 20 4e 4f 5f 52 45 4c 45 41 53 45 5f 50 4c 41 54   NO_RELEASE_PLAT
10f0: 46 4f 52 4d 20 28 0d 0a 20 20 20 20 53 45 54 20  FORM (..    SET 
1100: 52 45 4c 45 41 53 45 5f 4f 55 54 50 55 54 5f 46  RELEASE_OUTPUT_F
1110: 49 4c 45 3d 53 65 74 75 70 5c 4f 75 74 70 75 74  ILE=Setup\Output
1120: 5c 25 50 52 45 46 49 58 25 2d 25 46 52 41 4d 45  \%PREFIX%-%FRAME
1130: 57 4f 52 4b 25 2d 25 54 59 50 45 25 2d 25 59 45  WORK%-%TYPE%-%YE
1140: 41 52 25 2d 25 56 45 52 53 49 4f 4e 25 2e 7a 69  AR%-%VERSION%.zi
1150: 70 0d 0a 20 20 29 20 45 4c 53 45 20 28 0d 0a 20  p..  ) ELSE (.. 
1160: 20 20 20 53 45 54 20 52 45 4c 45 41 53 45 5f 4f     SET RELEASE_O
1170: 55 54 50 55 54 5f 46 49 4c 45 3d 53 65 74 75 70  UTPUT_FILE=Setup
1180: 5c 4f 75 74 70 75 74 5c 25 50 52 45 46 49 58 25  \Output\%PREFIX%
1190: 2d 25 46 52 41 4d 45 57 4f 52 4b 25 2d 25 54 59  -%FRAMEWORK%-%TY
11a0: 50 45 25 2d 25 42 41 53 45 5f 50 4c 41 54 46 4f  PE%-%BASE_PLATFO
11b0: 52 4d 25 25 45 58 54 52 41 5f 50 4c 41 54 46 4f  RM%%EXTRA_PLATFO
11c0: 52 4d 25 2d 25 59 45 41 52 25 2d 25 56 45 52 53  RM%-%YEAR%-%VERS
11d0: 49 4f 4e 25 2e 7a 69 70 0d 0a 20 20 29 0d 0a 29  ION%.zip..  )..)
11e0: 0d 0a 0d 0a 25 5f 56 45 43 48 4f 25 20 52 65 6c  ....%_VECHO% Rel
11f0: 65 61 73 65 4f 75 74 70 75 74 46 69 6c 65 20 3d  easeOutputFile =
1200: 20 27 25 52 45 4c 45 41 53 45 5f 4f 55 54 50 55   '%RELEASE_OUTPU
1210: 54 5f 46 49 4c 45 25 27 0d 0a 0d 0a 49 46 20 44  T_FILE%'....IF D
1220: 45 46 49 4e 45 44 20 42 41 53 45 5f 43 4f 4e 46  EFINED BASE_CONF
1230: 49 47 55 52 41 54 49 4f 4e 53 55 46 46 49 58 20  IGURATIONSUFFIX 
1240: 28 0d 0a 20 20 49 46 20 4e 4f 54 20 44 45 46 49  (..  IF NOT DEFI
1250: 4e 45 44 20 4e 4f 5f 52 45 4c 45 41 53 45 5f 52  NED NO_RELEASE_R
1260: 4d 44 49 52 20 28 0d 0a 20 20 20 20 46 4f 52 20  MDIR (..    FOR 
1270: 2f 46 20 22 64 65 6c 69 6d 73 3d 22 20 25 25 46  /F "delims=" %%F
1280: 20 49 4e 20 28 27 44 49 52 20 2f 42 20 2f 53 20   IN ('DIR /B /S 
1290: 2f 41 44 20 22 62 69 6e 5c 25 59 45 41 52 25 5c  /AD "bin\%YEAR%\
12a0: 25 42 41 53 45 5f 43 4f 4e 46 49 47 55 52 41 54  %BASE_CONFIGURAT
12b0: 49 4f 4e 25 25 42 41 53 45 5f 43 4f 4e 46 49 47  ION%%BASE_CONFIG
12c0: 55 52 41 54 49 4f 4e 53 55 46 46 49 58 25 5c 62  URATIONSUFFIX%\b
12d0: 69 6e 22 20 32 5e 3e 20 4e 55 4c 27 29 20 44 4f  in" 2^> NUL') DO
12e0: 20 28 0d 0a 20 20 20 20 20 20 25 5f 5f 45 43 48   (..      %__ECH
12f0: 4f 25 20 52 4d 44 49 52 20 2f 53 20 2f 51 20 22  O% RMDIR /S /Q "
1300: 25 25 46 22 0d 0a 20 20 20 20 29 0d 0a 20 20 29  %%F"..    )..  )
1310: 0d 0a 20 20 25 5f 5f 45 43 48 4f 25 20 7a 69 70  ..  %__ECHO% zip
1320: 2e 65 78 65 20 2d 76 20 2d 6a 20 2d 72 20 22 25  .exe -v -j -r "%
1330: 52 45 4c 45 41 53 45 5f 4f 55 54 50 55 54 5f 46  RELEASE_OUTPUT_F
1340: 49 4c 45 25 22 20 22 62 69 6e 5c 25 59 45 41 52  ILE%" "bin\%YEAR
1350: 25 5c 25 42 41 53 45 5f 43 4f 4e 46 49 47 55 52  %\%BASE_CONFIGUR
1360: 41 54 49 4f 4e 25 25 42 41 53 45 5f 43 4f 4e 46  ATION%%BASE_CONF
1370: 49 47 55 52 41 54 49 4f 4e 53 55 46 46 49 58 25  IGURATIONSUFFIX%
1380: 5c 62 69 6e 22 20 2d 78 20 22 25 45 58 43 4c 55  \bin" -x "%EXCLU
1390: 44 45 5f 42 49 4e 25 22 0d 0a 29 20 45 4c 53 45  DE_BIN%"..) ELSE
13a0: 20 28 0d 0a 20 20 49 46 20 4e 4f 54 20 44 45 46   (..  IF NOT DEF
13b0: 49 4e 45 44 20 4e 4f 5f 52 45 4c 45 41 53 45 5f  INED NO_RELEASE_
13c0: 52 4d 44 49 52 20 28 0d 0a 20 20 20 20 46 4f 52  RMDIR (..    FOR
13d0: 20 2f 46 20 22 64 65 6c 69 6d 73 3d 22 20 25 25   /F "delims=" %%
13e0: 46 20 49 4e 20 28 27 44 49 52 20 2f 42 20 2f 53  F IN ('DIR /B /S
13f0: 20 2f 41 44 20 22 62 69 6e 5c 25 59 45 41 52 25   /AD "bin\%YEAR%
1400: 5c 25 42 41 53 45 5f 43 4f 4e 46 49 47 55 52 41  \%BASE_CONFIGURA
1410: 54 49 4f 4e 25 5c 62 69 6e 22 20 32 5e 3e 20 4e  TION%\bin" 2^> N
1420: 55 4c 27 29 20 44 4f 20 28 0d 0a 20 20 20 20 20  UL') DO (..     
1430: 20 25 5f 5f 45 43 48 4f 25 20 52 4d 44 49 52 20   %__ECHO% RMDIR 
1440: 2f 53 20 2f 51 20 22 25 25 46 22 0d 0a 20 20 20  /S /Q "%%F"..   
1450: 20 29 0d 0a 20 20 29 0d 0a 20 20 25 5f 5f 45 43   )..  )..  %__EC
1460: 48 4f 25 20 7a 69 70 2e 65 78 65 20 2d 76 20 2d  HO% zip.exe -v -
1470: 6a 20 2d 72 20 22 25 52 45 4c 45 41 53 45 5f 4f  j -r "%RELEASE_O
1480: 55 54 50 55 54 5f 46 49 4c 45 25 22 20 22 62 69  UTPUT_FILE%" "bi
1490: 6e 5c 25 59 45 41 52 25 5c 25 42 41 53 45 5f 43  n\%YEAR%\%BASE_C
14a0: 4f 4e 46 49 47 55 52 41 54 49 4f 4e 25 5c 62 69  ONFIGURATION%\bi
14b0: 6e 22 20 2d 78 20 22 25 45 58 43 4c 55 44 45 5f  n" -x "%EXCLUDE_
14c0: 42 49 4e 25 22 0d 0a 29 0d 0a 0d 0a 49 46 20 44  BIN%"..)....IF D
14d0: 45 46 49 4e 45 44 20 52 45 4c 45 41 53 45 5f 4d  EFINED RELEASE_M
14e0: 41 4e 41 47 45 44 4f 4e 4c 59 20 47 4f 54 4f 20  ANAGEDONLY GOTO 
14f0: 73 6b 69 70 5f 72 65 6c 65 61 73 65 49 6e 74 65  skip_releaseInte
1500: 72 6f 70 0d 0a 0d 0a 49 46 20 2f 49 20 22 25 43  rop....IF /I "%C
1510: 4f 4e 46 49 47 55 52 41 54 49 4f 4e 25 22 20 3d  ONFIGURATION%" =
1520: 3d 20 22 25 42 41 53 45 5f 43 4f 4e 46 49 47 55  = "%BASE_CONFIGU
1530: 52 41 54 49 4f 4e 25 22 20 28 0d 0a 20 20 49 46  RATION%" (..  IF
1540: 20 4e 4f 54 20 44 45 46 49 4e 45 44 20 42 41 53   NOT DEFINED BAS
1550: 45 5f 43 4f 4e 46 49 47 55 52 41 54 49 4f 4e 53  E_CONFIGURATIONS
1560: 55 46 46 49 58 20 28 0d 0a 20 20 20 20 25 5f 5f  UFFIX (..    %__
1570: 45 43 48 4f 25 20 7a 69 70 2e 65 78 65 20 2d 76  ECHO% zip.exe -v
1580: 20 2d 64 20 22 25 52 45 4c 45 41 53 45 5f 4f 55   -d "%RELEASE_OU
1590: 54 50 55 54 5f 46 49 4c 45 25 22 20 53 51 4c 69  TPUT_FILE%" SQLi
15a0: 74 65 2e 49 6e 74 65 72 6f 70 2e 2a 0d 0a 20 20  te.Interop.*..  
15b0: 29 0d 0a 29 0d 0a 0d 0a 25 5f 5f 45 43 48 4f 25  )..)....%__ECHO%
15c0: 20 7a 69 70 2e 65 78 65 20 2d 76 20 2d 6a 20 2d   zip.exe -v -j -
15d0: 72 20 22 25 52 45 4c 45 41 53 45 5f 4f 55 54 50  r "%RELEASE_OUTP
15e0: 55 54 5f 46 49 4c 45 25 22 20 22 62 69 6e 5c 25  UT_FILE%" "bin\%
15f0: 59 45 41 52 25 5c 25 50 4c 41 54 46 4f 52 4d 25  YEAR%\%PLATFORM%
1600: 5c 25 43 4f 4e 46 49 47 55 52 41 54 49 4f 4e 25  \%CONFIGURATION%
1610: 25 43 4f 4e 46 49 47 55 52 41 54 49 4f 4e 53 55  %CONFIGURATIONSU
1620: 46 46 49 58 25 22 20 2d 78 20 22 25 45 58 43 4c  FFIX%" -x "%EXCL
1630: 55 44 45 5f 42 49 4e 25 22 0d 0a 0d 0a 3a 73 6b  UDE_BIN%"....:sk
1640: 69 70 5f 72 65 6c 65 61 73 65 49 6e 74 65 72 6f  ip_releaseIntero
1650: 70 0d 0a 0d 0a 49 46 20 45 52 52 4f 52 4c 45 56  p....IF ERRORLEV
1660: 45 4c 20 31 20 28 0d 0a 20 20 45 43 48 4f 20 46  EL 1 (..  ECHO F
1670: 61 69 6c 65 64 20 74 6f 20 61 72 63 68 69 76 65  ailed to archive
1680: 20 62 69 6e 61 72 79 20 66 69 6c 65 73 2e 0d 0a   binary files...
1690: 20 20 47 4f 54 4f 20 65 72 72 6f 72 73 0d 0a 29    GOTO errors..)
16a0: 0d 0a 0d 0a 25 5f 5f 45 43 48 4f 32 25 20 50 4f  ....%__ECHO2% PO
16b0: 50 44 0d 0a 0d 0a 49 46 20 45 52 52 4f 52 4c 45  PD....IF ERRORLE
16c0: 56 45 4c 20 31 20 28 0d 0a 20 20 45 43 48 4f 20  VEL 1 (..  ECHO 
16d0: 43 6f 75 6c 64 20 6e 6f 74 20 72 65 73 74 6f 72  Could not restor
16e0: 65 20 64 69 72 65 63 74 6f 72 79 2e 0d 0a 20 20  e directory...  
16f0: 47 4f 54 4f 20 65 72 72 6f 72 73 0d 0a 29 0d 0a  GOTO errors..)..
1700: 0d 0a 47 4f 54 4f 20 6e 6f 5f 65 72 72 6f 72 73  ..GOTO no_errors
1710: 0d 0a 0d 0a 3a 66 6e 5f 53 65 74 56 61 72 69 61  ....:fn_SetVaria
1720: 62 6c 65 0d 0a 20 20 53 45 54 4c 4f 43 41 4c 0d  ble..  SETLOCAL.
1730: 0a 20 20 53 45 54 20 5f 5f 45 43 48 4f 5f 43 4d  .  SET __ECHO_CM
1740: 44 3d 45 43 48 4f 20 25 25 25 32 25 25 0d 0a 20  D=ECHO %%%2%%.. 
1750: 20 46 4f 52 20 2f 46 20 22 64 65 6c 69 6d 73 3d   FOR /F "delims=
1760: 22 20 25 25 56 20 49 4e 20 28 27 25 5f 5f 45 43  " %%V IN ('%__EC
1770: 48 4f 5f 43 4d 44 25 27 29 20 44 4f 20 28 0d 0a  HO_CMD%') DO (..
1780: 20 20 20 20 53 45 54 20 56 41 4c 55 45 3d 25 25      SET VALUE=%%
1790: 56 0d 0a 20 20 29 0d 0a 20 20 45 4e 44 4c 4f 43  V..  )..  ENDLOC
17a0: 41 4c 20 26 26 20 28 0d 0a 20 20 20 20 53 45 54  AL && (..    SET
17b0: 20 25 31 3d 25 56 41 4c 55 45 25 0d 0a 20 20 29   %1=%VALUE%..  )
17c0: 0d 0a 20 20 47 4f 54 4f 20 3a 45 4f 46 0d 0a 0d  ..  GOTO :EOF...
17d0: 0a 3a 66 6e 5f 55 6e 71 75 6f 74 65 56 61 72 69  .:fn_UnquoteVari
17e0: 61 62 6c 65 0d 0a 20 20 49 46 20 4e 4f 54 20 44  able..  IF NOT D
17f0: 45 46 49 4e 45 44 20 25 31 20 47 4f 54 4f 20 3a  EFINED %1 GOTO :
1800: 45 4f 46 0d 0a 20 20 53 45 54 4c 4f 43 41 4c 0d  EOF..  SETLOCAL.
1810: 0a 20 20 53 45 54 20 5f 5f 45 43 48 4f 5f 43 4d  .  SET __ECHO_CM
1820: 44 3d 45 43 48 4f 20 25 25 25 31 25 25 0d 0a 20  D=ECHO %%%1%%.. 
1830: 20 46 4f 52 20 2f 46 20 22 64 65 6c 69 6d 73 3d   FOR /F "delims=
1840: 22 20 25 25 56 20 49 4e 20 28 27 25 5f 5f 45 43  " %%V IN ('%__EC
1850: 48 4f 5f 43 4d 44 25 27 29 20 44 4f 20 28 0d 0a  HO_CMD%') DO (..
1860: 20 20 20 20 53 45 54 20 56 41 4c 55 45 3d 25 25      SET VALUE=%%
1870: 56 0d 0a 20 20 29 0d 0a 20 20 53 45 54 20 56 41  V..  )..  SET VA
1880: 4c 55 45 3d 25 56 41 4c 55 45 3a 22 3d 25 0d 0a  LUE=%VALUE:"=%..
1890: 20 20 52 45 4d 20 22 0d 0a 20 20 45 4e 44 4c 4f    REM "..  ENDLO
18a0: 43 41 4c 20 26 26 20 53 45 54 20 25 31 3d 25 56  CAL && SET %1=%V
18b0: 41 4c 55 45 25 0d 0a 20 20 47 4f 54 4f 20 3a 45  ALUE%..  GOTO :E
18c0: 4f 46 0d 0a 0d 0a 3a 66 6e 5f 52 65 73 65 74 45  OF....:fn_ResetE
18d0: 72 72 6f 72 4c 65 76 65 6c 0d 0a 20 20 56 45 52  rrorLevel..  VER
18e0: 49 46 59 20 3e 20 4e 55 4c 0d 0a 20 20 47 4f 54  IFY > NUL..  GOT
18f0: 4f 20 3a 45 4f 46 0d 0a 0d 0a 3a 66 6e 5f 53 65  O :EOF....:fn_Se
1900: 74 45 72 72 6f 72 4c 65 76 65 6c 0d 0a 20 20 56  tErrorLevel..  V
1910: 45 52 49 46 59 20 4d 41 59 42 45 20 32 3e 20 4e  ERIFY MAYBE 2> N
1920: 55 4c 0d 0a 20 20 47 4f 54 4f 20 3a 45 4f 46 0d  UL..  GOTO :EOF.
1930: 0a 0d 0a 3a 75 73 61 67 65 0d 0a 20 20 45 43 48  ...:usage..  ECH
1940: 4f 2e 0d 0a 20 20 45 43 48 4f 20 55 73 61 67 65  O...  ECHO Usage
1950: 3a 20 25 7e 6e 78 30 20 5b 63 6f 6e 66 69 67 75  : %~nx0 [configu
1960: 72 61 74 69 6f 6e 5d 20 5b 70 6c 61 74 66 6f 72  ration] [platfor
1970: 6d 5d 20 5b 79 65 61 72 5d 0d 0a 20 20 45 43 48  m] [year]..  ECH
1980: 4f 2e 0d 0a 20 20 47 4f 54 4f 20 65 72 72 6f 72  O...  GOTO error
1990: 73 0d 0a 0d 0a 3a 65 72 72 6f 72 73 0d 0a 20 20  s....:errors..  
19a0: 43 41 4c 4c 20 3a 66 6e 5f 53 65 74 45 72 72 6f  CALL :fn_SetErro
19b0: 72 4c 65 76 65 6c 0d 0a 20 20 45 4e 44 4c 4f 43  rLevel..  ENDLOC
19c0: 41 4c 0d 0a 20 20 45 43 48 4f 2e 0d 0a 20 20 45  AL..  ECHO...  E
19d0: 43 48 4f 20 52 65 6c 65 61 73 65 20 66 61 69 6c  CHO Release fail
19e0: 75 72 65 2c 20 65 72 72 6f 72 73 20 77 65 72 65  ure, errors were
19f0: 20 65 6e 63 6f 75 6e 74 65 72 65 64 2e 0d 0a 20   encountered... 
1a00: 20 47 4f 54 4f 20 65 6e 64 5f 6f 66 5f 66 69 6c   GOTO end_of_fil
1a10: 65 0d 0a 0d 0a 3a 6e 6f 5f 65 72 72 6f 72 73 0d  e....:no_errors.
1a20: 0a 20 20 43 41 4c 4c 20 3a 66 6e 5f 52 65 73 65  .  CALL :fn_Rese
1a30: 74 45 72 72 6f 72 4c 65 76 65 6c 0d 0a 20 20 45  tErrorLevel..  E
1a40: 4e 44 4c 4f 43 41 4c 0d 0a 20 20 45 43 48 4f 2e  NDLOCAL..  ECHO.
1a50: 0d 0a 20 20 45 43 48 4f 20 52 65 6c 65 61 73 65  ..  ECHO Release
1a60: 20 73 75 63 63 65 73 73 2c 20 6e 6f 20 65 72 72   success, no err
1a70: 6f 72 73 20 77 65 72 65 20 65 6e 63 6f 75 6e 74  ors were encount
1a80: 65 72 65 64 2e 0d 0a 20 20 47 4f 54 4f 20 65 6e  ered...  GOTO en
1a90: 64 5f 6f 66 5f 66 69 6c 65 0d 0a 0d 0a 3a 65 6e  d_of_file....:en
1aa0: 64 5f 6f 66 5f 66 69 6c 65 0d 0a 25 5f 5f 45 43  d_of_file..%__EC
1ab0: 48 4f 25 20 45 58 49 54 20 2f 42 20 25 45 52 52  HO% EXIT /B %ERR
1ac0: 4f 52 4c 45 56 45 4c 25 0d 0a                    ORLEVEL%..