System.Data.SQLite
Hex Artifact Content
Not logged in

Artifact eefcd80df11be5d144b50113d6e52c355ed8380b:


0000: 49 6e 73 74 61 6c 6c 65 72 2e 65 78 65 3a 20 23  Installer.exe: #
0010: 5b 67 65 74 4c 69 6e 65 4e 75 6d 62 65 72 5d 3a  [getLineNumber]:
0020: 20 43 6f 6e 66 69 67 75 72 61 74 69 6f 6e 2e 50   Configuration.P
0030: 72 6f 63 65 73 73 3a 20 4e 6f 20 61 63 74 75 61  rocess: No actua
0040: 6c 20 63 68 61 6e 67 65 73 20 77 69 6c 6c 20 62  l changes will b
0050: 65 20 6d 61 64 65 20 74 6f 20 74 68 69 73 20 73  e made to this s
0060: 79 73 74 65 6d 20 62 65 63 61 75 73 65 20 22 77  ystem because "w
0070: 68 61 74 2d 69 66 22 20 6d 6f 64 65 20 69 73 20  hat-if" mode is 
0080: 65 6e 61 62 6c 65 64 2e 0d 0a 49 6e 73 74 61 6c  enabled...Instal
0090: 6c 65 72 2e 65 78 65 3a 20 23 5b 67 65 74 4c 69  ler.exe: #[getLi
00a0: 6e 65 4e 75 6d 62 65 72 5d 3a 20 43 6f 6e 66 69  neNumber]: Confi
00b0: 67 75 72 61 74 69 6f 6e 2e 49 73 53 79 73 74 65  guration.IsSyste
00c0: 6d 45 66 36 41 73 73 65 6d 62 6c 79 41 76 61 69  mEf6AssemblyAvai
00d0: 6c 61 62 6c 65 3a 20 45 6e 74 69 74 79 20 46 72  lable: Entity Fr
00e0: 61 6d 65 77 6f 72 6b 20 36 20 61 73 73 65 6d 62  amework 6 assemb
00f0: 6c 79 20 77 61 73 20 72 65 73 6f 6c 76 65 64 20  ly was resolved 
0100: 74 6f 20 22 5b 66 69 6c 65 20 6e 61 74 69 76 65  to "[file native
0110: 6e 61 6d 65 20 5b 66 69 6c 65 20 6a 6f 69 6e 20  name [file join 
0120: 5b 67 65 74 42 75 69 6c 64 44 69 72 65 63 74 6f  [getBuildDirecto
0130: 72 79 20 74 72 75 65 5d 20 45 6e 74 69 74 79 46  ry true] EntityF
0140: 72 61 6d 65 77 6f 72 6b 2e 64 6c 6c 5d 5d 22 2e  ramework.dll]]".
0150: 0d 0a 49 6e 73 74 61 6c 6c 65 72 2e 65 78 65 3a  ..Installer.exe:
0160: 20 23 5b 67 65 74 4c 69 6e 65 4e 75 6d 62 65 72   #[getLineNumber
0170: 5d 3a 20 49 6e 73 74 61 6c 6c 65 72 2e 4d 61 69  ]: Installer.Mai
0180: 6e 3a 20 47 61 63 49 6e 73 74 61 6c 6c 3a 20 61  n: GacInstall: a
0190: 73 73 65 6d 62 6c 79 50 61 74 68 20 3d 20 22 5b  ssemblyPath = "[
01a0: 66 69 6c 65 20 6e 61 74 69 76 65 6e 61 6d 65 20  file nativename 
01b0: 5b 66 69 6c 65 20 6a 6f 69 6e 20 5b 67 65 74 42  [file join [getB
01c0: 75 69 6c 64 44 69 72 65 63 74 6f 72 79 20 66 61  uildDirectory fa
01d0: 6c 73 65 5d 20 53 79 73 74 65 6d 2e 44 61 74 61  lse] System.Data
01e0: 2e 53 51 4c 69 74 65 2e 64 6c 6c 5d 5d 22 0d 0a  .SQLite.dll]]"..
01f0: 49 6e 73 74 61 6c 6c 65 72 2e 65 78 65 3a 20 23  Installer.exe: #
0200: 5b 67 65 74 4c 69 6e 65 4e 75 6d 62 65 72 5d 3a  [getLineNumber]:
0210: 20 49 6e 73 74 61 6c 6c 65 72 2e 4d 61 69 6e 3a   Installer.Main:
0220: 20 47 61 63 49 6e 73 74 61 6c 6c 3a 20 61 73 73   GacInstall: ass
0230: 65 6d 62 6c 79 50 61 74 68 20 3d 20 22 5b 66 69  emblyPath = "[fi
0240: 6c 65 20 6e 61 74 69 76 65 6e 61 6d 65 20 5b 66  le nativename [f
0250: 69 6c 65 20 6a 6f 69 6e 20 5b 67 65 74 42 75 69  ile join [getBui
0260: 6c 64 44 69 72 65 63 74 6f 72 79 20 66 61 6c 73  ldDirectory fals
0270: 65 5d 20 53 79 73 74 65 6d 2e 44 61 74 61 2e 53  e] System.Data.S
0280: 51 4c 69 74 65 2e 4c 69 6e 71 2e 64 6c 6c 5d 5d  QLite.Linq.dll]]
0290: 22 0d 0a 49 6e 73 74 61 6c 6c 65 72 2e 65 78 65  "..Installer.exe
02a0: 3a 20 23 5b 67 65 74 4c 69 6e 65 4e 75 6d 62 65  : #[getLineNumbe
02b0: 72 5d 3a 20 49 6e 73 74 61 6c 6c 65 72 2e 4d 61  r]: Installer.Ma
02c0: 69 6e 3a 20 47 61 63 49 6e 73 74 61 6c 6c 3a 20  in: GacInstall: 
02d0: 61 73 73 65 6d 62 6c 79 50 61 74 68 20 3d 20 22  assemblyPath = "
02e0: 5b 66 69 6c 65 20 6e 61 74 69 76 65 6e 61 6d 65  [file nativename
02f0: 20 5b 66 69 6c 65 20 6a 6f 69 6e 20 5b 67 65 74   [file join [get
0300: 42 75 69 6c 64 44 69 72 65 63 74 6f 72 79 20 66  BuildDirectory f
0310: 61 6c 73 65 5d 20 53 79 73 74 65 6d 2e 44 61 74  alse] System.Dat
0320: 61 2e 53 51 4c 69 74 65 2e 45 46 36 2e 64 6c 6c  a.SQLite.EF6.dll
0330: 5d 5d 22 0d 0a 49 6e 73 74 61 6c 6c 65 72 2e 65  ]]"..Installer.e
0340: 78 65 3a 20 23 5b 67 65 74 4c 69 6e 65 4e 75 6d  xe: #[getLineNum
0350: 62 65 72 5d 3a 20 49 6e 73 74 61 6c 6c 65 72 2e  ber]: Installer.
0360: 4d 61 69 6e 3a 20 47 61 63 49 6e 73 74 61 6c 6c  Main: GacInstall
0370: 3a 20 61 73 73 65 6d 62 6c 79 50 61 74 68 20 3d  : assemblyPath =
0380: 20 22 5b 66 69 6c 65 20 6e 61 74 69 76 65 6e 61   "[file nativena
0390: 6d 65 20 5b 66 69 6c 65 20 6a 6f 69 6e 20 5b 67  me [file join [g
03a0: 65 74 42 75 69 6c 64 44 69 72 65 63 74 6f 72 79  etBuildDirectory
03b0: 20 66 61 6c 73 65 5d 20 53 51 4c 69 74 65 2e 44   false] SQLite.D
03c0: 65 73 69 67 6e 65 72 2e 64 6c 6c 5d 5d 22 0d 0a  esigner.dll]]"..
03d0: 49 6e 73 74 61 6c 6c 65 72 2e 65 78 65 3a 20 23  Installer.exe: #
03e0: 5b 67 65 74 4c 69 6e 65 4e 75 6d 62 65 72 5d 3a  [getLineNumber]:
03f0: 20 52 65 67 69 73 74 72 79 48 65 6c 70 65 72 2e   RegistryHelper.
0400: 4f 70 65 6e 53 75 62 4b 65 79 3a 20 72 6f 6f 74  OpenSubKey: root
0410: 4b 65 79 20 3d 20 22 48 4b 45 59 5f 4c 4f 43 41  Key = "HKEY_LOCA
0420: 4c 5f 4d 41 43 48 49 4e 45 22 2c 20 73 75 62 4b  L_MACHINE", subK
0430: 65 79 4e 61 6d 65 20 3d 20 22 53 6f 66 74 77 61  eyName = "Softwa
0440: 72 65 24 7b 77 6f 77 36 34 7d 5c 4d 69 63 72 6f  re${wow64}\Micro
0450: 73 6f 66 74 5c 2e 4e 45 54 46 72 61 6d 65 77 6f  soft\.NETFramewo
0460: 72 6b 5c 76 34 2e 35 2e 31 22 2c 20 77 72 69 74  rk\v4.5.1", writ
0470: 61 62 6c 65 20 3d 20 46 61 6c 73 65 0d 0a 49 6e  able = False..In
0480: 73 74 61 6c 6c 65 72 2e 65 78 65 3a 20 23 5b 67  staller.exe: #[g
0490: 65 74 4c 69 6e 65 4e 75 6d 62 65 72 5d 3a 20 52  etLineNumber]: R
04a0: 65 67 69 73 74 72 79 48 65 6c 70 65 72 2e 4f 70  egistryHelper.Op
04b0: 65 6e 53 75 62 4b 65 79 3a 20 72 6f 6f 74 4b 65  enSubKey: rootKe
04c0: 79 20 3d 20 22 48 4b 45 59 5f 4c 4f 43 41 4c 5f  y = "HKEY_LOCAL_
04d0: 4d 41 43 48 49 4e 45 22 2c 20 73 75 62 4b 65 79  MACHINE", subKey
04e0: 4e 61 6d 65 20 3d 20 22 53 6f 66 74 77 61 72 65  Name = "Software
04f0: 24 7b 77 6f 77 36 34 7d 5c 4d 69 63 72 6f 73 6f  ${wow64}\Microso
0500: 66 74 5c 2e 4e 45 54 46 72 61 6d 65 77 6f 72 6b  ft\.NETFramework
0510: 5c 76 34 2e 35 2e 31 5c 41 73 73 65 6d 62 6c 79  \v4.5.1\Assembly
0520: 46 6f 6c 64 65 72 73 45 78 22 2c 20 77 72 69 74  FoldersEx", writ
0530: 61 62 6c 65 20 3d 20 54 72 75 65 0d 0a 49 6e 73  able = True..Ins
0540: 74 61 6c 6c 65 72 2e 65 78 65 3a 20 23 5b 67 65  taller.exe: #[ge
0550: 74 4c 69 6e 65 4e 75 6d 62 65 72 5d 3a 20 52 65  tLineNumber]: Re
0560: 67 69 73 74 72 79 48 65 6c 70 65 72 2e 44 65 6c  gistryHelper.Del
0570: 65 74 65 53 75 62 4b 65 79 3a 20 72 6f 6f 74 4b  eteSubKey: rootK
0580: 65 79 20 3d 20 22 48 4b 45 59 5f 4c 4f 43 41 4c  ey = "HKEY_LOCAL
0590: 5f 4d 41 43 48 49 4e 45 5c 53 6f 66 74 77 61 72  _MACHINE\Softwar
05a0: 65 24 7b 77 6f 77 36 34 7d 5c 4d 69 63 72 6f 73  e${wow64}\Micros
05b0: 6f 66 74 5c 2e 4e 45 54 46 72 61 6d 65 77 6f 72  oft\.NETFramewor
05c0: 6b 5c 76 34 2e 35 2e 31 5c 41 73 73 65 6d 62 6c  k\v4.5.1\Assembl
05d0: 79 46 6f 6c 64 65 72 73 45 78 22 2c 20 73 75 62  yFoldersEx", sub
05e0: 4b 65 79 4e 61 6d 65 20 3d 20 22 53 51 4c 69 74  KeyName = "SQLit
05f0: 65 22 0d 0a 49 6e 73 74 61 6c 6c 65 72 2e 65 78  e"..Installer.ex
0600: 65 3a 20 23 5b 67 65 74 4c 69 6e 65 4e 75 6d 62  e: #[getLineNumb
0610: 65 72 5d 3a 20 52 65 67 69 73 74 72 79 48 65 6c  er]: RegistryHel
0620: 70 65 72 2e 4f 70 65 6e 53 75 62 4b 65 79 3a 20  per.OpenSubKey: 
0630: 72 6f 6f 74 4b 65 79 20 3d 20 22 48 4b 45 59 5f  rootKey = "HKEY_
0640: 4c 4f 43 41 4c 5f 4d 41 43 48 49 4e 45 22 2c 20  LOCAL_MACHINE", 
0650: 73 75 62 4b 65 79 4e 61 6d 65 20 3d 20 22 53 6f  subKeyName = "So
0660: 66 74 77 61 72 65 24 7b 77 6f 77 36 34 7d 5c 4d  ftware${wow64}\M
0670: 69 63 72 6f 73 6f 66 74 5c 2e 4e 45 54 46 72 61  icrosoft\.NETFra
0680: 6d 65 77 6f 72 6b 5c 76 34 2e 35 2e 31 5c 41 73  mework\v4.5.1\As
0690: 73 65 6d 62 6c 79 46 6f 6c 64 65 72 73 45 78 22  semblyFoldersEx"
06a0: 2c 20 77 72 69 74 61 62 6c 65 20 3d 20 54 72 75  , writable = Tru
06b0: 65 0d 0a 49 6e 73 74 61 6c 6c 65 72 2e 65 78 65  e..Installer.exe
06c0: 3a 20 23 5b 67 65 74 4c 69 6e 65 4e 75 6d 62 65  : #[getLineNumbe
06d0: 72 5d 3a 20 52 65 67 69 73 74 72 79 48 65 6c 70  r]: RegistryHelp
06e0: 65 72 2e 43 72 65 61 74 65 53 75 62 4b 65 79 3a  er.CreateSubKey:
06f0: 20 72 6f 6f 74 4b 65 79 20 3d 20 22 48 4b 45 59   rootKey = "HKEY
0700: 5f 4c 4f 43 41 4c 5f 4d 41 43 48 49 4e 45 5c 53  _LOCAL_MACHINE\S
0710: 6f 66 74 77 61 72 65 24 7b 77 6f 77 36 34 7d 5c  oftware${wow64}\
0720: 4d 69 63 72 6f 73 6f 66 74 5c 2e 4e 45 54 46 72  Microsoft\.NETFr
0730: 61 6d 65 77 6f 72 6b 5c 76 34 2e 35 2e 31 5c 41  amework\v4.5.1\A
0740: 73 73 65 6d 62 6c 79 46 6f 6c 64 65 72 73 45 78  ssemblyFoldersEx
0750: 22 2c 20 73 75 62 4b 65 79 4e 61 6d 65 20 3d 20  ", subKeyName = 
0760: 22 53 79 73 74 65 6d 2e 44 61 74 61 2e 53 51 4c  "System.Data.SQL
0770: 69 74 65 22 0d 0a 49 6e 73 74 61 6c 6c 65 72 2e  ite"..Installer.
0780: 65 78 65 3a 20 23 5b 67 65 74 4c 69 6e 65 4e 75  exe: #[getLineNu
0790: 6d 62 65 72 5d 3a 20 52 65 67 69 73 74 72 79 48  mber]: RegistryH
07a0: 65 6c 70 65 72 2e 53 65 74 56 61 6c 75 65 3a 20  elper.SetValue: 
07b0: 6b 65 79 20 3d 20 22 48 4b 45 59 5f 4c 4f 43 41  key = "HKEY_LOCA
07c0: 4c 5f 4d 41 43 48 49 4e 45 5c 53 6f 66 74 77 61  L_MACHINE\Softwa
07d0: 72 65 24 7b 77 6f 77 36 34 7d 5c 4d 69 63 72 6f  re${wow64}\Micro
07e0: 73 6f 66 74 5c 2e 4e 45 54 46 72 61 6d 65 77 6f  soft\.NETFramewo
07f0: 72 6b 5c 76 34 2e 35 2e 31 5c 41 73 73 65 6d 62  rk\v4.5.1\Assemb
0800: 6c 79 46 6f 6c 64 65 72 73 45 78 5c 53 79 73 74  lyFoldersEx\Syst
0810: 65 6d 2e 44 61 74 61 2e 53 51 4c 69 74 65 22 2c  em.Data.SQLite",
0820: 20 6e 61 6d 65 20 3d 20 3c 6e 75 6c 6c 3e 2c 20   name = <null>, 
0830: 76 61 6c 75 65 20 3d 20 22 5b 66 69 6c 65 20 6e  value = "[file n
0840: 61 74 69 76 65 6e 61 6d 65 20 5b 67 65 74 42 75  ativename [getBu
0850: 69 6c 64 44 69 72 65 63 74 6f 72 79 20 66 61 6c  ildDirectory fal
0860: 73 65 5d 5d 22 0d 0a 49 6e 73 74 61 6c 6c 65 72  se]]"..Installer
0870: 2e 65 78 65 3a 20 23 5b 67 65 74 4c 69 6e 65 4e  .exe: #[getLineN
0880: 75 6d 62 65 72 5d 3a 20 52 65 67 69 73 74 72 79  umber]: Registry
0890: 48 65 6c 70 65 72 2e 4f 70 65 6e 53 75 62 4b 65  Helper.OpenSubKe
08a0: 79 3a 20 72 6f 6f 74 4b 65 79 20 3d 20 22 48 4b  y: rootKey = "HK
08b0: 45 59 5f 4c 4f 43 41 4c 5f 4d 41 43 48 49 4e 45  EY_LOCAL_MACHINE
08c0: 22 2c 20 73 75 62 4b 65 79 4e 61 6d 65 20 3d 20  ", subKeyName = 
08d0: 22 53 6f 66 74 77 61 72 65 24 7b 77 6f 77 36 34  "Software${wow64
08e0: 7d 5c 4d 69 63 72 6f 73 6f 66 74 5c 2e 4e 45 54  }\Microsoft\.NET
08f0: 46 72 61 6d 65 77 6f 72 6b 5c 76 34 2e 30 2e 33  Framework\v4.0.3
0900: 30 33 31 39 22 2c 20 77 72 69 74 61 62 6c 65 20  0319", writable 
0910: 3d 20 46 61 6c 73 65 0d 0a 49 6e 73 74 61 6c 6c  = False..Install
0920: 65 72 2e 65 78 65 3a 20 23 5b 67 65 74 4c 69 6e  er.exe: #[getLin
0930: 65 4e 75 6d 62 65 72 5d 3a 20 52 65 67 69 73 74  eNumber]: Regist
0940: 72 79 48 65 6c 70 65 72 2e 4f 70 65 6e 53 75 62  ryHelper.OpenSub
0950: 4b 65 79 3a 20 72 6f 6f 74 4b 65 79 20 3d 20 22  Key: rootKey = "
0960: 48 4b 45 59 5f 4c 4f 43 41 4c 5f 4d 41 43 48 49  HKEY_LOCAL_MACHI
0970: 4e 45 22 2c 20 73 75 62 4b 65 79 4e 61 6d 65 20  NE", subKeyName 
0980: 3d 20 22 53 6f 66 74 77 61 72 65 24 7b 77 6f 77  = "Software${wow
0990: 36 34 7d 5c 4d 69 63 72 6f 73 6f 66 74 5c 2e 4e  64}\Microsoft\.N
09a0: 45 54 46 72 61 6d 65 77 6f 72 6b 22 2c 20 77 72  ETFramework", wr
09b0: 69 74 61 62 6c 65 20 3d 20 46 61 6c 73 65 0d 0a  itable = False..
09c0: 49 6e 73 74 61 6c 6c 65 72 2e 65 78 65 3a 20 23  Installer.exe: #
09d0: 5b 67 65 74 4c 69 6e 65 4e 75 6d 62 65 72 5d 3a  [getLineNumber]:
09e0: 20 52 65 67 69 73 74 72 79 48 65 6c 70 65 72 2e   RegistryHelper.
09f0: 47 65 74 56 61 6c 75 65 3a 20 6b 65 79 20 3d 20  GetValue: key = 
0a00: 22 48 4b 45 59 5f 4c 4f 43 41 4c 5f 4d 41 43 48  "HKEY_LOCAL_MACH
0a10: 49 4e 45 5c 53 6f 66 74 77 61 72 65 24 7b 77 6f  INE\Software${wo
0a20: 77 36 34 7d 5c 4d 69 63 72 6f 73 6f 66 74 5c 2e  w64}\Microsoft\.
0a30: 4e 45 54 46 72 61 6d 65 77 6f 72 6b 22 2c 20 6e  NETFramework", n
0a40: 61 6d 65 20 3d 20 22 49 6e 73 74 61 6c 6c 52 6f  ame = "InstallRo
0a50: 6f 74 22 2c 20 64 65 66 61 75 6c 74 56 61 6c 75  ot", defaultValu
0a60: 65 20 3d 20 3c 6e 75 6c 6c 3e 0d 0a 49 6e 73 74  e = <null>..Inst
0a70: 61 6c 6c 65 72 2e 65 78 65 3a 20 23 5b 67 65 74  aller.exe: #[get
0a80: 4c 69 6e 65 4e 75 6d 62 65 72 5d 3a 20 49 6e 73  LineNumber]: Ins
0a90: 74 61 6c 6c 65 72 2e 52 65 6d 6f 76 65 44 62 50  taller.RemoveDbP
0aa0: 72 6f 76 69 64 65 72 46 61 63 74 6f 72 79 3a 20  roviderFactory: 
0ab0: 61 64 64 45 6c 65 6d 65 6e 74 20 3d 20 3c 6e 75  addElement = <nu
0ac0: 6c 6c 3e 2c 20 72 65 6d 6f 76 65 45 6c 65 6d 65  ll>, removeEleme
0ad0: 6e 74 20 3d 20 3c 6e 75 6c 6c 3e 0d 0a 49 6e 73  nt = <null>..Ins
0ae0: 74 61 6c 6c 65 72 2e 65 78 65 3a 20 23 5b 67 65  taller.exe: #[ge
0af0: 74 4c 69 6e 65 4e 75 6d 62 65 72 5d 3a 20 49 6e  tLineNumber]: In
0b00: 73 74 61 6c 6c 65 72 2e 41 64 64 44 62 50 72 6f  staller.AddDbPro
0b10: 76 69 64 65 72 46 61 63 74 6f 72 79 3a 20 61 64  viderFactory: ad
0b20: 64 45 6c 65 6d 65 6e 74 20 3d 20 3c 61 64 64 20  dElement = <add 
0b30: 6e 61 6d 65 3d 22 53 51 4c 69 74 65 20 44 61 74  name="SQLite Dat
0b40: 61 20 50 72 6f 76 69 64 65 72 22 20 69 6e 76 61  a Provider" inva
0b50: 72 69 61 6e 74 3d 22 53 79 73 74 65 6d 2e 44 61  riant="System.Da
0b60: 74 61 2e 53 51 4c 69 74 65 22 20 64 65 73 63 72  ta.SQLite" descr
0b70: 69 70 74 69 6f 6e 3d 22 2e 4e 45 54 20 46 72 61  iption=".NET Fra
0b80: 6d 65 77 6f 72 6b 20 44 61 74 61 20 50 72 6f 76  mework Data Prov
0b90: 69 64 65 72 20 66 6f 72 20 53 51 4c 69 74 65 22  ider for SQLite"
0ba0: 20 74 79 70 65 3d 22 53 79 73 74 65 6d 2e 44 61   type="System.Da
0bb0: 74 61 2e 53 51 4c 69 74 65 2e 53 51 4c 69 74 65  ta.SQLite.SQLite
0bc0: 46 61 63 74 6f 72 79 2c 20 53 79 73 74 65 6d 2e  Factory, System.
0bd0: 44 61 74 61 2e 53 51 4c 69 74 65 2c 20 56 65 72  Data.SQLite, Ver
0be0: 73 69 6f 6e 3d 5b 66 69 6c 65 20 76 65 72 73 69  sion=[file versi
0bf0: 6f 6e 20 24 73 79 73 74 65 6d 44 61 74 61 53 51  on $systemDataSQ
0c00: 4c 69 74 65 44 6c 6c 46 69 6c 65 5d 2c 20 43 75  LiteDllFile], Cu
0c10: 6c 74 75 72 65 3d 6e 65 75 74 72 61 6c 2c 20 50  lture=neutral, P
0c20: 75 62 6c 69 63 4b 65 79 54 6f 6b 65 6e 3d 64 62  ublicKeyToken=db
0c30: 39 33 37 62 63 32 64 34 34 66 66 31 33 39 22 20  937bc2d44ff139" 
0c40: 2f 3e 0d 0a 49 6e 73 74 61 6c 6c 65 72 2e 65 78  />..Installer.ex
0c50: 65 3a 20 23 5b 67 65 74 4c 69 6e 65 4e 75 6d 62  e: #[getLineNumb
0c60: 65 72 5d 3a 20 52 65 67 69 73 74 72 79 48 65 6c  er]: RegistryHel
0c70: 70 65 72 2e 4f 70 65 6e 53 75 62 4b 65 79 3a 20  per.OpenSubKey: 
0c80: 72 6f 6f 74 4b 65 79 20 3d 20 22 48 4b 45 59 5f  rootKey = "HKEY_
0c90: 4c 4f 43 41 4c 5f 4d 41 43 48 49 4e 45 22 2c 20  LOCAL_MACHINE", 
0ca0: 73 75 62 4b 65 79 4e 61 6d 65 20 3d 20 22 53 6f  subKeyName = "So
0cb0: 66 74 77 61 72 65 24 7b 77 6f 77 36 34 7d 5c 4d  ftware${wow64}\M
0cc0: 69 63 72 6f 73 6f 66 74 5c 56 69 73 75 61 6c 53  icrosoft\VisualS
0cd0: 74 75 64 69 6f 5c 31 32 2e 30 22 2c 20 77 72 69  tudio\12.0", wri
0ce0: 74 61 62 6c 65 20 3d 20 46 61 6c 73 65 0d 0a 49  table = False..I
0cf0: 6e 73 74 61 6c 6c 65 72 2e 65 78 65 3a 20 23 5b  nstaller.exe: #[
0d00: 67 65 74 4c 69 6e 65 4e 75 6d 62 65 72 5d 3a 20  getLineNumber]: 
0d10: 52 65 67 69 73 74 72 79 48 65 6c 70 65 72 2e 47  RegistryHelper.G
0d20: 65 74 56 61 6c 75 65 3a 20 6b 65 79 20 3d 20 22  etValue: key = "
0d30: 48 4b 45 59 5f 4c 4f 43 41 4c 5f 4d 41 43 48 49  HKEY_LOCAL_MACHI
0d40: 4e 45 5c 53 6f 66 74 77 61 72 65 24 7b 77 6f 77  NE\Software${wow
0d50: 36 34 7d 5c 4d 69 63 72 6f 73 6f 66 74 5c 56 69  64}\Microsoft\Vi
0d60: 73 75 61 6c 53 74 75 64 69 6f 5c 31 32 2e 30 22  sualStudio\12.0"
0d70: 2c 20 6e 61 6d 65 20 3d 20 22 49 6e 73 74 61 6c  , name = "Instal
0d80: 6c 44 69 72 22 2c 20 64 65 66 61 75 6c 74 56 61  lDir", defaultVa
0d90: 6c 75 65 20 3d 20 3c 6e 75 6c 6c 3e 0d 0a 49 6e  lue = <null>..In
0da0: 73 74 61 6c 6c 65 72 2e 65 78 65 3a 20 23 5b 67  staller.exe: #[g
0db0: 65 74 4c 69 6e 65 4e 75 6d 62 65 72 5d 3a 20 52  etLineNumber]: R
0dc0: 65 67 69 73 74 72 79 48 65 6c 70 65 72 2e 4f 70  egistryHelper.Op
0dd0: 65 6e 53 75 62 4b 65 79 3a 20 72 6f 6f 74 4b 65  enSubKey: rootKe
0de0: 79 20 3d 20 22 48 4b 45 59 5f 4c 4f 43 41 4c 5f  y = "HKEY_LOCAL_
0df0: 4d 41 43 48 49 4e 45 22 2c 20 73 75 62 4b 65 79  MACHINE", subKey
0e00: 4e 61 6d 65 20 3d 20 22 53 6f 66 74 77 61 72 65  Name = "Software
0e10: 24 7b 77 6f 77 36 34 7d 5c 4d 69 63 72 6f 73 6f  ${wow64}\Microso
0e20: 66 74 5c 56 69 73 75 61 6c 53 74 75 64 69 6f 5c  ft\VisualStudio\
0e30: 31 32 2e 30 22 2c 20 77 72 69 74 61 62 6c 65 20  12.0", writable 
0e40: 3d 20 46 61 6c 73 65 0d 0a 49 6e 73 74 61 6c 6c  = False..Install
0e50: 65 72 2e 65 78 65 3a 20 23 5b 67 65 74 4c 69 6e  er.exe: #[getLin
0e60: 65 4e 75 6d 62 65 72 5d 3a 20 52 65 67 69 73 74  eNumber]: Regist
0e70: 72 79 48 65 6c 70 65 72 2e 4f 70 65 6e 53 75 62  ryHelper.OpenSub
0e80: 4b 65 79 3a 20 72 6f 6f 74 4b 65 79 20 3d 20 22  Key: rootKey = "
0e90: 48 4b 45 59 5f 4c 4f 43 41 4c 5f 4d 41 43 48 49  HKEY_LOCAL_MACHI
0ea0: 4e 45 5c 53 6f 66 74 77 61 72 65 24 7b 77 6f 77  NE\Software${wow
0eb0: 36 34 7d 5c 4d 69 63 72 6f 73 6f 66 74 5c 56 69  64}\Microsoft\Vi
0ec0: 73 75 61 6c 53 74 75 64 69 6f 5c 31 32 2e 30 22  sualStudio\12.0"
0ed0: 2c 20 73 75 62 4b 65 79 4e 61 6d 65 20 3d 20 22  , subKeyName = "
0ee0: 50 61 63 6b 61 67 65 73 22 2c 20 77 72 69 74 61  Packages", writa
0ef0: 62 6c 65 20 3d 20 54 72 75 65 0d 0a 49 6e 73 74  ble = True..Inst
0f00: 61 6c 6c 65 72 2e 65 78 65 3a 20 23 5b 67 65 74  aller.exe: #[get
0f10: 4c 69 6e 65 4e 75 6d 62 65 72 5d 3a 20 52 65 67  LineNumber]: Reg
0f20: 69 73 74 72 79 48 65 6c 70 65 72 2e 43 72 65 61  istryHelper.Crea
0f30: 74 65 53 75 62 4b 65 79 3a 20 72 6f 6f 74 4b 65  teSubKey: rootKe
0f40: 79 20 3d 20 22 48 4b 45 59 5f 4c 4f 43 41 4c 5f  y = "HKEY_LOCAL_
0f50: 4d 41 43 48 49 4e 45 5c 53 6f 66 74 77 61 72 65  MACHINE\Software
0f60: 24 7b 77 6f 77 36 34 7d 5c 4d 69 63 72 6f 73 6f  ${wow64}\Microso
0f70: 66 74 5c 56 69 73 75 61 6c 53 74 75 64 69 6f 5c  ft\VisualStudio\
0f80: 31 32 2e 30 5c 50 61 63 6b 61 67 65 73 22 2c 20  12.0\Packages", 
0f90: 73 75 62 4b 65 79 4e 61 6d 65 20 3d 20 22 7b 64  subKeyName = "{d
0fa0: 63 62 65 36 63 38 64 2d 30 65 35 37 2d 34 30 39  cbe6c8d-0e57-409
0fb0: 39 2d 61 31 38 33 2d 39 38 66 66 37 34 63 36 34  9-a183-98ff74c64
0fc0: 64 39 63 7d 22 0d 0a 49 6e 73 74 61 6c 6c 65 72  d9c}"..Installer
0fd0: 2e 65 78 65 3a 20 23 5b 67 65 74 4c 69 6e 65 4e  .exe: #[getLineN
0fe0: 75 6d 62 65 72 5d 3a 20 52 65 67 69 73 74 72 79  umber]: Registry
0ff0: 48 65 6c 70 65 72 2e 53 65 74 56 61 6c 75 65 3a  Helper.SetValue:
1000: 20 6b 65 79 20 3d 20 22 48 4b 45 59 5f 4c 4f 43   key = "HKEY_LOC
1010: 41 4c 5f 4d 41 43 48 49 4e 45 5c 53 6f 66 74 77  AL_MACHINE\Softw
1020: 61 72 65 24 7b 77 6f 77 36 34 7d 5c 4d 69 63 72  are${wow64}\Micr
1030: 6f 73 6f 66 74 5c 56 69 73 75 61 6c 53 74 75 64  osoft\VisualStud
1040: 69 6f 5c 31 32 2e 30 5c 50 61 63 6b 61 67 65 73  io\12.0\Packages
1050: 5c 7b 64 63 62 65 36 63 38 64 2d 30 65 35 37 2d  \{dcbe6c8d-0e57-
1060: 34 30 39 39 2d 61 31 38 33 2d 39 38 66 66 37 34  4099-a183-98ff74
1070: 63 36 34 64 39 63 7d 22 2c 20 6e 61 6d 65 20 3d  c64d9c}", name =
1080: 20 3c 6e 75 6c 6c 3e 2c 20 76 61 6c 75 65 20 3d   <null>, value =
1090: 20 22 53 79 73 74 65 6d 2e 44 61 74 61 2e 53 51   "System.Data.SQ
10a0: 4c 69 74 65 20 44 65 73 69 67 6e 65 72 20 50 61  Lite Designer Pa
10b0: 63 6b 61 67 65 22 0d 0a 49 6e 73 74 61 6c 6c 65  ckage"..Installe
10c0: 72 2e 65 78 65 3a 20 23 5b 67 65 74 4c 69 6e 65  r.exe: #[getLine
10d0: 4e 75 6d 62 65 72 5d 3a 20 52 65 67 69 73 74 72  Number]: Registr
10e0: 79 48 65 6c 70 65 72 2e 53 65 74 56 61 6c 75 65  yHelper.SetValue
10f0: 3a 20 6b 65 79 20 3d 20 22 48 4b 45 59 5f 4c 4f  : key = "HKEY_LO
1100: 43 41 4c 5f 4d 41 43 48 49 4e 45 5c 53 6f 66 74  CAL_MACHINE\Soft
1110: 77 61 72 65 24 7b 77 6f 77 36 34 7d 5c 4d 69 63  ware${wow64}\Mic
1120: 72 6f 73 6f 66 74 5c 56 69 73 75 61 6c 53 74 75  rosoft\VisualStu
1130: 64 69 6f 5c 31 32 2e 30 5c 50 61 63 6b 61 67 65  dio\12.0\Package
1140: 73 5c 7b 64 63 62 65 36 63 38 64 2d 30 65 35 37  s\{dcbe6c8d-0e57
1150: 2d 34 30 39 39 2d 61 31 38 33 2d 39 38 66 66 37  -4099-a183-98ff7
1160: 34 63 36 34 64 39 63 7d 22 2c 20 6e 61 6d 65 20  4c64d9c}", name 
1170: 3d 20 22 43 6c 61 73 73 22 2c 20 76 61 6c 75 65  = "Class", value
1180: 20 3d 20 22 53 51 4c 69 74 65 2e 44 65 73 69 67   = "SQLite.Desig
1190: 6e 65 72 2e 53 51 4c 69 74 65 50 61 63 6b 61 67  ner.SQLitePackag
11a0: 65 22 0d 0a 49 6e 73 74 61 6c 6c 65 72 2e 65 78  e"..Installer.ex
11b0: 65 3a 20 23 5b 67 65 74 4c 69 6e 65 4e 75 6d 62  e: #[getLineNumb
11c0: 65 72 5d 3a 20 52 65 67 69 73 74 72 79 48 65 6c  er]: RegistryHel
11d0: 70 65 72 2e 53 65 74 56 61 6c 75 65 3a 20 6b 65  per.SetValue: ke
11e0: 79 20 3d 20 22 48 4b 45 59 5f 4c 4f 43 41 4c 5f  y = "HKEY_LOCAL_
11f0: 4d 41 43 48 49 4e 45 5c 53 6f 66 74 77 61 72 65  MACHINE\Software
1200: 24 7b 77 6f 77 36 34 7d 5c 4d 69 63 72 6f 73 6f  ${wow64}\Microso
1210: 66 74 5c 56 69 73 75 61 6c 53 74 75 64 69 6f 5c  ft\VisualStudio\
1220: 31 32 2e 30 5c 50 61 63 6b 61 67 65 73 5c 7b 64  12.0\Packages\{d
1230: 63 62 65 36 63 38 64 2d 30 65 35 37 2d 34 30 39  cbe6c8d-0e57-409
1240: 39 2d 61 31 38 33 2d 39 38 66 66 37 34 63 36 34  9-a183-98ff74c64
1250: 64 39 63 7d 22 2c 20 6e 61 6d 65 20 3d 20 22 43  d9c}", name = "C
1260: 6f 64 65 42 61 73 65 22 2c 20 76 61 6c 75 65 20  odeBase", value 
1270: 3d 20 22 5b 66 69 6c 65 20 6e 61 74 69 76 65 6e  = "[file nativen
1280: 61 6d 65 20 5b 66 69 6c 65 20 6a 6f 69 6e 20 5b  ame [file join [
1290: 67 65 74 42 75 69 6c 64 44 69 72 65 63 74 6f 72  getBuildDirector
12a0: 79 20 66 61 6c 73 65 5d 20 53 51 4c 69 74 65 2e  y false] SQLite.
12b0: 44 65 73 69 67 6e 65 72 2e 64 6c 6c 5d 5d 22 0d  Designer.dll]]".
12c0: 0a 49 6e 73 74 61 6c 6c 65 72 2e 65 78 65 3a 20  .Installer.exe: 
12d0: 23 5b 67 65 74 4c 69 6e 65 4e 75 6d 62 65 72 5d  #[getLineNumber]
12e0: 3a 20 52 65 67 69 73 74 72 79 48 65 6c 70 65 72  : RegistryHelper
12f0: 2e 53 65 74 56 61 6c 75 65 3a 20 6b 65 79 20 3d  .SetValue: key =
1300: 20 22 48 4b 45 59 5f 4c 4f 43 41 4c 5f 4d 41 43   "HKEY_LOCAL_MAC
1310: 48 49 4e 45 5c 53 6f 66 74 77 61 72 65 24 7b 77  HINE\Software${w
1320: 6f 77 36 34 7d 5c 4d 69 63 72 6f 73 6f 66 74 5c  ow64}\Microsoft\
1330: 56 69 73 75 61 6c 53 74 75 64 69 6f 5c 31 32 2e  VisualStudio\12.
1340: 30 5c 50 61 63 6b 61 67 65 73 5c 7b 64 63 62 65  0\Packages\{dcbe
1350: 36 63 38 64 2d 30 65 35 37 2d 34 30 39 39 2d 61  6c8d-0e57-4099-a
1360: 31 38 33 2d 39 38 66 66 37 34 63 36 34 64 39 63  183-98ff74c64d9c
1370: 7d 22 2c 20 6e 61 6d 65 20 3d 20 22 49 44 22 2c  }", name = "ID",
1380: 20 76 61 6c 75 65 20 3d 20 34 30 30 0d 0a 49 6e   value = 400..In
1390: 73 74 61 6c 6c 65 72 2e 65 78 65 3a 20 23 5b 67  staller.exe: #[g
13a0: 65 74 4c 69 6e 65 4e 75 6d 62 65 72 5d 3a 20 52  etLineNumber]: R
13b0: 65 67 69 73 74 72 79 48 65 6c 70 65 72 2e 53 65  egistryHelper.Se
13c0: 74 56 61 6c 75 65 3a 20 6b 65 79 20 3d 20 22 48  tValue: key = "H
13d0: 4b 45 59 5f 4c 4f 43 41 4c 5f 4d 41 43 48 49 4e  KEY_LOCAL_MACHIN
13e0: 45 5c 53 6f 66 74 77 61 72 65 24 7b 77 6f 77 36  E\Software${wow6
13f0: 34 7d 5c 4d 69 63 72 6f 73 6f 66 74 5c 56 69 73  4}\Microsoft\Vis
1400: 75 61 6c 53 74 75 64 69 6f 5c 31 32 2e 30 5c 50  ualStudio\12.0\P
1410: 61 63 6b 61 67 65 73 5c 7b 64 63 62 65 36 63 38  ackages\{dcbe6c8
1420: 64 2d 30 65 35 37 2d 34 30 39 39 2d 61 31 38 33  d-0e57-4099-a183
1430: 2d 39 38 66 66 37 34 63 36 34 64 39 63 7d 22 2c  -98ff74c64d9c}",
1440: 20 6e 61 6d 65 20 3d 20 22 49 6e 70 72 6f 63 53   name = "InprocS
1450: 65 72 76 65 72 33 32 22 2c 20 76 61 6c 75 65 20  erver32", value 
1460: 3d 20 22 5b 66 69 6c 65 20 6e 61 74 69 76 65 6e  = "[file nativen
1470: 61 6d 65 20 5b 66 69 6c 65 20 6a 6f 69 6e 20 24  ame [file join $
1480: 3a 3a 65 6e 76 28 77 69 6e 64 69 72 29 20 5b 65  ::env(windir) [e
1490: 78 70 72 20 7b 24 69 73 36 34 20 3f 20 22 53 79  xpr {$is64 ? "Sy
14a0: 73 57 4f 57 36 34 22 20 3a 20 22 73 79 73 74 65  sWOW64" : "syste
14b0: 6d 33 32 22 7d 5d 20 6d 73 63 6f 72 65 65 2e 64  m32"}] mscoree.d
14c0: 6c 6c 5d 5d 22 0d 0a 49 6e 73 74 61 6c 6c 65 72  ll]]"..Installer
14d0: 2e 65 78 65 3a 20 23 5b 67 65 74 4c 69 6e 65 4e  .exe: #[getLineN
14e0: 75 6d 62 65 72 5d 3a 20 52 65 67 69 73 74 72 79  umber]: Registry
14f0: 48 65 6c 70 65 72 2e 53 65 74 56 61 6c 75 65 3a  Helper.SetValue:
1500: 20 6b 65 79 20 3d 20 22 48 4b 45 59 5f 4c 4f 43   key = "HKEY_LOC
1510: 41 4c 5f 4d 41 43 48 49 4e 45 5c 53 6f 66 74 77  AL_MACHINE\Softw
1520: 61 72 65 24 7b 77 6f 77 36 34 7d 5c 4d 69 63 72  are${wow64}\Micr
1530: 6f 73 6f 66 74 5c 56 69 73 75 61 6c 53 74 75 64  osoft\VisualStud
1540: 69 6f 5c 31 32 2e 30 5c 50 61 63 6b 61 67 65 73  io\12.0\Packages
1550: 5c 7b 64 63 62 65 36 63 38 64 2d 30 65 35 37 2d  \{dcbe6c8d-0e57-
1560: 34 30 39 39 2d 61 31 38 33 2d 39 38 66 66 37 34  4099-a183-98ff74
1570: 63 36 34 64 39 63 7d 22 2c 20 6e 61 6d 65 20 3d  c64d9c}", name =
1580: 20 22 43 6f 6d 70 61 6e 79 4e 61 6d 65 22 2c 20   "CompanyName", 
1590: 76 61 6c 75 65 20 3d 20 22 68 74 74 70 73 3a 2f  value = "https:/
15a0: 2f 73 79 73 74 65 6d 2e 64 61 74 61 2e 73 71 6c  /system.data.sql
15b0: 69 74 65 2e 6f 72 67 2f 22 0d 0a 49 6e 73 74 61  ite.org/"..Insta
15c0: 6c 6c 65 72 2e 65 78 65 3a 20 23 5b 67 65 74 4c  ller.exe: #[getL
15d0: 69 6e 65 4e 75 6d 62 65 72 5d 3a 20 52 65 67 69  ineNumber]: Regi
15e0: 73 74 72 79 48 65 6c 70 65 72 2e 53 65 74 56 61  stryHelper.SetVa
15f0: 6c 75 65 3a 20 6b 65 79 20 3d 20 22 48 4b 45 59  lue: key = "HKEY
1600: 5f 4c 4f 43 41 4c 5f 4d 41 43 48 49 4e 45 5c 53  _LOCAL_MACHINE\S
1610: 6f 66 74 77 61 72 65 24 7b 77 6f 77 36 34 7d 5c  oftware${wow64}\
1620: 4d 69 63 72 6f 73 6f 66 74 5c 56 69 73 75 61 6c  Microsoft\Visual
1630: 53 74 75 64 69 6f 5c 31 32 2e 30 5c 50 61 63 6b  Studio\12.0\Pack
1640: 61 67 65 73 5c 7b 64 63 62 65 36 63 38 64 2d 30  ages\{dcbe6c8d-0
1650: 65 35 37 2d 34 30 39 39 2d 61 31 38 33 2d 39 38  e57-4099-a183-98
1660: 66 66 37 34 63 36 34 64 39 63 7d 22 2c 20 6e 61  ff74c64d9c}", na
1670: 6d 65 20 3d 20 22 4d 69 6e 45 64 69 74 69 6f 6e  me = "MinEdition
1680: 22 2c 20 76 61 6c 75 65 20 3d 20 22 73 74 61 6e  ", value = "stan
1690: 64 61 72 64 22 0d 0a 49 6e 73 74 61 6c 6c 65 72  dard"..Installer
16a0: 2e 65 78 65 3a 20 23 5b 67 65 74 4c 69 6e 65 4e  .exe: #[getLineN
16b0: 75 6d 62 65 72 5d 3a 20 52 65 67 69 73 74 72 79  umber]: Registry
16c0: 48 65 6c 70 65 72 2e 53 65 74 56 61 6c 75 65 3a  Helper.SetValue:
16d0: 20 6b 65 79 20 3d 20 22 48 4b 45 59 5f 4c 4f 43   key = "HKEY_LOC
16e0: 41 4c 5f 4d 41 43 48 49 4e 45 5c 53 6f 66 74 77  AL_MACHINE\Softw
16f0: 61 72 65 24 7b 77 6f 77 36 34 7d 5c 4d 69 63 72  are${wow64}\Micr
1700: 6f 73 6f 66 74 5c 56 69 73 75 61 6c 53 74 75 64  osoft\VisualStud
1710: 69 6f 5c 31 32 2e 30 5c 50 61 63 6b 61 67 65 73  io\12.0\Packages
1720: 5c 7b 64 63 62 65 36 63 38 64 2d 30 65 35 37 2d  \{dcbe6c8d-0e57-
1730: 34 30 39 39 2d 61 31 38 33 2d 39 38 66 66 37 34  4099-a183-98ff74
1740: 63 36 34 64 39 63 7d 22 2c 20 6e 61 6d 65 20 3d  c64d9c}", name =
1750: 20 22 50 72 6f 64 75 63 74 4e 61 6d 65 22 2c 20   "ProductName", 
1760: 76 61 6c 75 65 20 3d 20 22 53 79 73 74 65 6d 2e  value = "System.
1770: 44 61 74 61 2e 53 51 4c 69 74 65 20 44 65 73 69  Data.SQLite Desi
1780: 67 6e 65 72 20 50 61 63 6b 61 67 65 22 0d 0a 49  gner Package"..I
1790: 6e 73 74 61 6c 6c 65 72 2e 65 78 65 3a 20 23 5b  nstaller.exe: #[
17a0: 67 65 74 4c 69 6e 65 4e 75 6d 62 65 72 5d 3a 20  getLineNumber]: 
17b0: 52 65 67 69 73 74 72 79 48 65 6c 70 65 72 2e 53  RegistryHelper.S
17c0: 65 74 56 61 6c 75 65 3a 20 6b 65 79 20 3d 20 22  etValue: key = "
17d0: 48 4b 45 59 5f 4c 4f 43 41 4c 5f 4d 41 43 48 49  HKEY_LOCAL_MACHI
17e0: 4e 45 5c 53 6f 66 74 77 61 72 65 24 7b 77 6f 77  NE\Software${wow
17f0: 36 34 7d 5c 4d 69 63 72 6f 73 6f 66 74 5c 56 69  64}\Microsoft\Vi
1800: 73 75 61 6c 53 74 75 64 69 6f 5c 31 32 2e 30 5c  sualStudio\12.0\
1810: 50 61 63 6b 61 67 65 73 5c 7b 64 63 62 65 36 63  Packages\{dcbe6c
1820: 38 64 2d 30 65 35 37 2d 34 30 39 39 2d 61 31 38  8d-0e57-4099-a18
1830: 33 2d 39 38 66 66 37 34 63 36 34 64 39 63 7d 22  3-98ff74c64d9c}"
1840: 2c 20 6e 61 6d 65 20 3d 20 22 50 72 6f 64 75 63  , name = "Produc
1850: 74 56 65 72 73 69 6f 6e 22 2c 20 76 61 6c 75 65  tVersion", value
1860: 20 3d 20 22 31 2e 30 22 0d 0a 49 6e 73 74 61 6c   = "1.0"..Instal
1870: 6c 65 72 2e 65 78 65 3a 20 23 5b 67 65 74 4c 69  ler.exe: #[getLi
1880: 6e 65 4e 75 6d 62 65 72 5d 3a 20 52 65 67 69 73  neNumber]: Regis
1890: 74 72 79 48 65 6c 70 65 72 2e 43 72 65 61 74 65  tryHelper.Create
18a0: 53 75 62 4b 65 79 3a 20 72 6f 6f 74 4b 65 79 20  SubKey: rootKey 
18b0: 3d 20 22 48 4b 45 59 5f 4c 4f 43 41 4c 5f 4d 41  = "HKEY_LOCAL_MA
18c0: 43 48 49 4e 45 5c 53 6f 66 74 77 61 72 65 24 7b  CHINE\Software${
18d0: 77 6f 77 36 34 7d 5c 4d 69 63 72 6f 73 6f 66 74  wow64}\Microsoft
18e0: 5c 56 69 73 75 61 6c 53 74 75 64 69 6f 5c 31 32  \VisualStudio\12
18f0: 2e 30 5c 50 61 63 6b 61 67 65 73 5c 7b 64 63 62  .0\Packages\{dcb
1900: 65 36 63 38 64 2d 30 65 35 37 2d 34 30 39 39 2d  e6c8d-0e57-4099-
1910: 61 31 38 33 2d 39 38 66 66 37 34 63 36 34 64 39  a183-98ff74c64d9
1920: 63 7d 22 2c 20 73 75 62 4b 65 79 4e 61 6d 65 20  c}", subKeyName 
1930: 3d 20 22 54 6f 6f 6c 62 6f 78 22 0d 0a 49 6e 73  = "Toolbox"..Ins
1940: 74 61 6c 6c 65 72 2e 65 78 65 3a 20 23 5b 67 65  taller.exe: #[ge
1950: 74 4c 69 6e 65 4e 75 6d 62 65 72 5d 3a 20 52 65  tLineNumber]: Re
1960: 67 69 73 74 72 79 48 65 6c 70 65 72 2e 53 65 74  gistryHelper.Set
1970: 56 61 6c 75 65 3a 20 6b 65 79 20 3d 20 22 48 4b  Value: key = "HK
1980: 45 59 5f 4c 4f 43 41 4c 5f 4d 41 43 48 49 4e 45  EY_LOCAL_MACHINE
1990: 5c 53 6f 66 74 77 61 72 65 24 7b 77 6f 77 36 34  \Software${wow64
19a0: 7d 5c 4d 69 63 72 6f 73 6f 66 74 5c 56 69 73 75  }\Microsoft\Visu
19b0: 61 6c 53 74 75 64 69 6f 5c 31 32 2e 30 5c 50 61  alStudio\12.0\Pa
19c0: 63 6b 61 67 65 73 5c 54 6f 6f 6c 62 6f 78 22 2c  ckages\Toolbox",
19d0: 20 6e 61 6d 65 20 3d 20 22 44 65 66 61 75 6c 74   name = "Default
19e0: 20 49 74 65 6d 73 22 2c 20 76 61 6c 75 65 20 3d   Items", value =
19f0: 20 33 0d 0a 49 6e 73 74 61 6c 6c 65 72 2e 65 78   3..Installer.ex
1a00: 65 3a 20 23 5b 67 65 74 4c 69 6e 65 4e 75 6d 62  e: #[getLineNumb
1a10: 65 72 5d 3a 20 52 65 67 69 73 74 72 79 48 65 6c  er]: RegistryHel
1a20: 70 65 72 2e 4f 70 65 6e 53 75 62 4b 65 79 3a 20  per.OpenSubKey: 
1a30: 72 6f 6f 74 4b 65 79 20 3d 20 22 48 4b 45 59 5f  rootKey = "HKEY_
1a40: 4c 4f 43 41 4c 5f 4d 41 43 48 49 4e 45 5c 53 6f  LOCAL_MACHINE\So
1a50: 66 74 77 61 72 65 24 7b 77 6f 77 36 34 7d 5c 4d  ftware${wow64}\M
1a60: 69 63 72 6f 73 6f 66 74 5c 56 69 73 75 61 6c 53  icrosoft\VisualS
1a70: 74 75 64 69 6f 5c 31 32 2e 30 22 2c 20 73 75 62  tudio\12.0", sub
1a80: 4b 65 79 4e 61 6d 65 20 3d 20 22 4d 65 6e 75 73  KeyName = "Menus
1a90: 22 2c 20 77 72 69 74 61 62 6c 65 20 3d 20 54 72  ", writable = Tr
1aa0: 75 65 0d 0a 49 6e 73 74 61 6c 6c 65 72 2e 65 78  ue..Installer.ex
1ab0: 65 3a 20 23 5b 67 65 74 4c 69 6e 65 4e 75 6d 62  e: #[getLineNumb
1ac0: 65 72 5d 3a 20 52 65 67 69 73 74 72 79 48 65 6c  er]: RegistryHel
1ad0: 70 65 72 2e 53 65 74 56 61 6c 75 65 3a 20 6b 65  per.SetValue: ke
1ae0: 79 20 3d 20 22 48 4b 45 59 5f 4c 4f 43 41 4c 5f  y = "HKEY_LOCAL_
1af0: 4d 41 43 48 49 4e 45 5c 53 6f 66 74 77 61 72 65  MACHINE\Software
1b00: 24 7b 77 6f 77 36 34 7d 5c 4d 69 63 72 6f 73 6f  ${wow64}\Microso
1b10: 66 74 5c 56 69 73 75 61 6c 53 74 75 64 69 6f 5c  ft\VisualStudio\
1b20: 31 32 2e 30 5c 4d 65 6e 75 73 22 2c 20 6e 61 6d  12.0\Menus", nam
1b30: 65 20 3d 20 22 7b 64 63 62 65 36 63 38 64 2d 30  e = "{dcbe6c8d-0
1b40: 65 35 37 2d 34 30 39 39 2d 61 31 38 33 2d 39 38  e57-4099-a183-98
1b50: 66 66 37 34 63 36 34 64 39 63 7d 22 2c 20 76 61  ff74c64d9c}", va
1b60: 6c 75 65 20 3d 20 22 2c 20 31 30 30 30 2c 20 33  lue = ", 1000, 3
1b70: 22 0d 0a 49 6e 73 74 61 6c 6c 65 72 2e 65 78 65  "..Installer.exe
1b80: 3a 20 23 5b 67 65 74 4c 69 6e 65 4e 75 6d 62 65  : #[getLineNumbe
1b90: 72 5d 3a 20 52 65 67 69 73 74 72 79 48 65 6c 70  r]: RegistryHelp
1ba0: 65 72 2e 4f 70 65 6e 53 75 62 4b 65 79 3a 20 72  er.OpenSubKey: r
1bb0: 6f 6f 74 4b 65 79 20 3d 20 22 48 4b 45 59 5f 4c  ootKey = "HKEY_L
1bc0: 4f 43 41 4c 5f 4d 41 43 48 49 4e 45 5c 53 6f 66  OCAL_MACHINE\Sof
1bd0: 74 77 61 72 65 24 7b 77 6f 77 36 34 7d 5c 4d 69  tware${wow64}\Mi
1be0: 63 72 6f 73 6f 66 74 5c 56 69 73 75 61 6c 53 74  crosoft\VisualSt
1bf0: 75 64 69 6f 5c 31 32 2e 30 22 2c 20 73 75 62 4b  udio\12.0", subK
1c00: 65 79 4e 61 6d 65 20 3d 20 22 53 65 72 76 69 63  eyName = "Servic
1c10: 65 73 22 2c 20 77 72 69 74 61 62 6c 65 20 3d 20  es", writable = 
1c20: 54 72 75 65 0d 0a 49 6e 73 74 61 6c 6c 65 72 2e  True..Installer.
1c30: 65 78 65 3a 20 23 5b 67 65 74 4c 69 6e 65 4e 75  exe: #[getLineNu
1c40: 6d 62 65 72 5d 3a 20 52 65 67 69 73 74 72 79 48  mber]: RegistryH
1c50: 65 6c 70 65 72 2e 43 72 65 61 74 65 53 75 62 4b  elper.CreateSubK
1c60: 65 79 3a 20 72 6f 6f 74 4b 65 79 20 3d 20 22 48  ey: rootKey = "H
1c70: 4b 45 59 5f 4c 4f 43 41 4c 5f 4d 41 43 48 49 4e  KEY_LOCAL_MACHIN
1c80: 45 5c 53 6f 66 74 77 61 72 65 24 7b 77 6f 77 36  E\Software${wow6
1c90: 34 7d 5c 4d 69 63 72 6f 73 6f 66 74 5c 56 69 73  4}\Microsoft\Vis
1ca0: 75 61 6c 53 74 75 64 69 6f 5c 31 32 2e 30 5c 53  ualStudio\12.0\S
1cb0: 65 72 76 69 63 65 73 22 2c 20 73 75 62 4b 65 79  ervices", subKey
1cc0: 4e 61 6d 65 20 3d 20 22 7b 64 63 62 65 36 63 38  Name = "{dcbe6c8
1cd0: 64 2d 30 65 35 37 2d 34 30 39 39 2d 61 31 38 33  d-0e57-4099-a183
1ce0: 2d 39 38 66 66 37 34 63 36 34 64 39 64 7d 22 0d  -98ff74c64d9d}".
1cf0: 0a 49 6e 73 74 61 6c 6c 65 72 2e 65 78 65 3a 20  .Installer.exe: 
1d00: 23 5b 67 65 74 4c 69 6e 65 4e 75 6d 62 65 72 5d  #[getLineNumber]
1d10: 3a 20 52 65 67 69 73 74 72 79 48 65 6c 70 65 72  : RegistryHelper
1d20: 2e 53 65 74 56 61 6c 75 65 3a 20 6b 65 79 20 3d  .SetValue: key =
1d30: 20 22 48 4b 45 59 5f 4c 4f 43 41 4c 5f 4d 41 43   "HKEY_LOCAL_MAC
1d40: 48 49 4e 45 5c 53 6f 66 74 77 61 72 65 24 7b 77  HINE\Software${w
1d50: 6f 77 36 34 7d 5c 4d 69 63 72 6f 73 6f 66 74 5c  ow64}\Microsoft\
1d60: 56 69 73 75 61 6c 53 74 75 64 69 6f 5c 31 32 2e  VisualStudio\12.
1d70: 30 5c 53 65 72 76 69 63 65 73 5c 7b 64 63 62 65  0\Services\{dcbe
1d80: 36 63 38 64 2d 30 65 35 37 2d 34 30 39 39 2d 61  6c8d-0e57-4099-a
1d90: 31 38 33 2d 39 38 66 66 37 34 63 36 34 64 39 64  183-98ff74c64d9d
1da0: 7d 22 2c 20 6e 61 6d 65 20 3d 20 3c 6e 75 6c 6c  }", name = <null
1db0: 3e 2c 20 76 61 6c 75 65 20 3d 20 22 7b 64 63 62  >, value = "{dcb
1dc0: 65 36 63 38 64 2d 30 65 35 37 2d 34 30 39 39 2d  e6c8d-0e57-4099-
1dd0: 61 31 38 33 2d 39 38 66 66 37 34 63 36 34 64 39  a183-98ff74c64d9
1de0: 63 7d 22 0d 0a 49 6e 73 74 61 6c 6c 65 72 2e 65  c}"..Installer.e
1df0: 78 65 3a 20 23 5b 67 65 74 4c 69 6e 65 4e 75 6d  xe: #[getLineNum
1e00: 62 65 72 5d 3a 20 52 65 67 69 73 74 72 79 48 65  ber]: RegistryHe
1e10: 6c 70 65 72 2e 53 65 74 56 61 6c 75 65 3a 20 6b  lper.SetValue: k
1e20: 65 79 20 3d 20 22 48 4b 45 59 5f 4c 4f 43 41 4c  ey = "HKEY_LOCAL
1e30: 5f 4d 41 43 48 49 4e 45 5c 53 6f 66 74 77 61 72  _MACHINE\Softwar
1e40: 65 24 7b 77 6f 77 36 34 7d 5c 4d 69 63 72 6f 73  e${wow64}\Micros
1e50: 6f 66 74 5c 56 69 73 75 61 6c 53 74 75 64 69 6f  oft\VisualStudio
1e60: 5c 31 32 2e 30 5c 53 65 72 76 69 63 65 73 5c 7b  \12.0\Services\{
1e70: 64 63 62 65 36 63 38 64 2d 30 65 35 37 2d 34 30  dcbe6c8d-0e57-40
1e80: 39 39 2d 61 31 38 33 2d 39 38 66 66 37 34 63 36  99-a183-98ff74c6
1e90: 34 64 39 64 7d 22 2c 20 6e 61 6d 65 20 3d 20 22  4d9d}", name = "
1ea0: 4e 61 6d 65 22 2c 20 76 61 6c 75 65 20 3d 20 22  Name", value = "
1eb0: 53 79 73 74 65 6d 2e 44 61 74 61 2e 53 51 4c 69  System.Data.SQLi
1ec0: 74 65 20 44 65 73 69 67 6e 65 72 20 53 65 72 76  te Designer Serv
1ed0: 69 63 65 22 0d 0a 49 6e 73 74 61 6c 6c 65 72 2e  ice"..Installer.
1ee0: 65 78 65 3a 20 23 5b 67 65 74 4c 69 6e 65 4e 75  exe: #[getLineNu
1ef0: 6d 62 65 72 5d 3a 20 52 65 67 69 73 74 72 79 48  mber]: RegistryH
1f00: 65 6c 70 65 72 2e 4f 70 65 6e 53 75 62 4b 65 79  elper.OpenSubKey
1f10: 3a 20 72 6f 6f 74 4b 65 79 20 3d 20 22 48 4b 45  : rootKey = "HKE
1f20: 59 5f 4c 4f 43 41 4c 5f 4d 41 43 48 49 4e 45 22  Y_LOCAL_MACHINE"
1f30: 2c 20 73 75 62 4b 65 79 4e 61 6d 65 20 3d 20 22  , subKeyName = "
1f40: 53 6f 66 74 77 61 72 65 24 7b 77 6f 77 36 34 7d  Software${wow64}
1f50: 5c 4d 69 63 72 6f 73 6f 66 74 5c 56 69 73 75 61  \Microsoft\Visua
1f60: 6c 53 74 75 64 69 6f 5c 31 32 2e 30 22 2c 20 77  lStudio\12.0", w
1f70: 72 69 74 61 62 6c 65 20 3d 20 46 61 6c 73 65 0d  ritable = False.
1f80: 0a 49 6e 73 74 61 6c 6c 65 72 2e 65 78 65 3a 20  .Installer.exe: 
1f90: 23 5b 67 65 74 4c 69 6e 65 4e 75 6d 62 65 72 5d  #[getLineNumber]
1fa0: 3a 20 52 65 67 69 73 74 72 79 48 65 6c 70 65 72  : RegistryHelper
1fb0: 2e 47 65 74 56 61 6c 75 65 3a 20 6b 65 79 20 3d  .GetValue: key =
1fc0: 20 22 48 4b 45 59 5f 4c 4f 43 41 4c 5f 4d 41 43   "HKEY_LOCAL_MAC
1fd0: 48 49 4e 45 5c 53 6f 66 74 77 61 72 65 24 7b 77  HINE\Software${w
1fe0: 6f 77 36 34 7d 5c 4d 69 63 72 6f 73 6f 66 74 5c  ow64}\Microsoft\
1ff0: 56 69 73 75 61 6c 53 74 75 64 69 6f 5c 31 32 2e  VisualStudio\12.
2000: 30 22 2c 20 6e 61 6d 65 20 3d 20 22 49 6e 73 74  0", name = "Inst
2010: 61 6c 6c 44 69 72 22 2c 20 64 65 66 61 75 6c 74  allDir", default
2020: 56 61 6c 75 65 20 3d 20 3c 6e 75 6c 6c 3e 0d 0a  Value = <null>..
2030: 49 6e 73 74 61 6c 6c 65 72 2e 65 78 65 3a 20 23  Installer.exe: #
2040: 5b 67 65 74 4c 69 6e 65 4e 75 6d 62 65 72 5d 3a  [getLineNumber]:
2050: 20 52 65 67 69 73 74 72 79 48 65 6c 70 65 72 2e   RegistryHelper.
2060: 4f 70 65 6e 53 75 62 4b 65 79 3a 20 72 6f 6f 74  OpenSubKey: root
2070: 4b 65 79 20 3d 20 22 48 4b 45 59 5f 4c 4f 43 41  Key = "HKEY_LOCA
2080: 4c 5f 4d 41 43 48 49 4e 45 22 2c 20 73 75 62 4b  L_MACHINE", subK
2090: 65 79 4e 61 6d 65 20 3d 20 22 53 6f 66 74 77 61  eyName = "Softwa
20a0: 72 65 24 7b 77 6f 77 36 34 7d 5c 4d 69 63 72 6f  re${wow64}\Micro
20b0: 73 6f 66 74 5c 56 69 73 75 61 6c 53 74 75 64 69  soft\VisualStudi
20c0: 6f 5c 31 32 2e 30 22 2c 20 77 72 69 74 61 62 6c  o\12.0", writabl
20d0: 65 20 3d 20 46 61 6c 73 65 0d 0a 49 6e 73 74 61  e = False..Insta
20e0: 6c 6c 65 72 2e 65 78 65 3a 20 23 5b 67 65 74 4c  ller.exe: #[getL
20f0: 69 6e 65 4e 75 6d 62 65 72 5d 3a 20 52 65 67 69  ineNumber]: Regi
2100: 73 74 72 79 48 65 6c 70 65 72 2e 4f 70 65 6e 53  stryHelper.OpenS
2110: 75 62 4b 65 79 3a 20 72 6f 6f 74 4b 65 79 20 3d  ubKey: rootKey =
2120: 20 22 48 4b 45 59 5f 4c 4f 43 41 4c 5f 4d 41 43   "HKEY_LOCAL_MAC
2130: 48 49 4e 45 5c 53 6f 66 74 77 61 72 65 24 7b 77  HINE\Software${w
2140: 6f 77 36 34 7d 5c 4d 69 63 72 6f 73 6f 66 74 5c  ow64}\Microsoft\
2150: 56 69 73 75 61 6c 53 74 75 64 69 6f 5c 31 32 2e  VisualStudio\12.
2160: 30 22 2c 20 73 75 62 4b 65 79 4e 61 6d 65 20 3d  0", subKeyName =
2170: 20 22 44 61 74 61 53 6f 75 72 63 65 73 22 2c 20   "DataSources", 
2180: 77 72 69 74 61 62 6c 65 20 3d 20 54 72 75 65 0d  writable = True.
2190: 0a 49 6e 73 74 61 6c 6c 65 72 2e 65 78 65 3a 20  .Installer.exe: 
21a0: 23 5b 67 65 74 4c 69 6e 65 4e 75 6d 62 65 72 5d  #[getLineNumber]
21b0: 3a 20 52 65 67 69 73 74 72 79 48 65 6c 70 65 72  : RegistryHelper
21c0: 2e 43 72 65 61 74 65 53 75 62 4b 65 79 3a 20 72  .CreateSubKey: r
21d0: 6f 6f 74 4b 65 79 20 3d 20 22 48 4b 45 59 5f 4c  ootKey = "HKEY_L
21e0: 4f 43 41 4c 5f 4d 41 43 48 49 4e 45 5c 53 6f 66  OCAL_MACHINE\Sof
21f0: 74 77 61 72 65 24 7b 77 6f 77 36 34 7d 5c 4d 69  tware${wow64}\Mi
2200: 63 72 6f 73 6f 66 74 5c 56 69 73 75 61 6c 53 74  crosoft\VisualSt
2210: 75 64 69 6f 5c 31 32 2e 30 5c 44 61 74 61 53 6f  udio\12.0\DataSo
2220: 75 72 63 65 73 22 2c 20 73 75 62 4b 65 79 4e 61  urces", subKeyNa
2230: 6d 65 20 3d 20 22 7b 30 65 62 61 61 62 36 65 2d  me = "{0ebaab6e-
2240: 63 61 38 30 2d 34 62 34 61 2d 38 64 64 66 2d 63  ca80-4b4a-8ddf-c
2250: 62 65 36 62 66 30 35 38 63 37 31 7d 22 0d 0a 49  be6bf058c71}"..I
2260: 6e 73 74 61 6c 6c 65 72 2e 65 78 65 3a 20 23 5b  nstaller.exe: #[
2270: 67 65 74 4c 69 6e 65 4e 75 6d 62 65 72 5d 3a 20  getLineNumber]: 
2280: 52 65 67 69 73 74 72 79 48 65 6c 70 65 72 2e 53  RegistryHelper.S
2290: 65 74 56 61 6c 75 65 3a 20 6b 65 79 20 3d 20 22  etValue: key = "
22a0: 48 4b 45 59 5f 4c 4f 43 41 4c 5f 4d 41 43 48 49  HKEY_LOCAL_MACHI
22b0: 4e 45 5c 53 6f 66 74 77 61 72 65 24 7b 77 6f 77  NE\Software${wow
22c0: 36 34 7d 5c 4d 69 63 72 6f 73 6f 66 74 5c 56 69  64}\Microsoft\Vi
22d0: 73 75 61 6c 53 74 75 64 69 6f 5c 31 32 2e 30 5c  sualStudio\12.0\
22e0: 44 61 74 61 53 6f 75 72 63 65 73 5c 7b 30 65 62  DataSources\{0eb
22f0: 61 61 62 36 65 2d 63 61 38 30 2d 34 62 34 61 2d  aab6e-ca80-4b4a-
2300: 38 64 64 66 2d 63 62 65 36 62 66 30 35 38 63 37  8ddf-cbe6bf058c7
2310: 31 7d 22 2c 20 6e 61 6d 65 20 3d 20 3c 6e 75 6c  1}", name = <nul
2320: 6c 3e 2c 20 76 61 6c 75 65 20 3d 20 22 53 79 73  l>, value = "Sys
2330: 74 65 6d 2e 44 61 74 61 2e 53 51 4c 69 74 65 20  tem.Data.SQLite 
2340: 44 61 74 61 62 61 73 65 20 46 69 6c 65 22 0d 0a  Database File"..
2350: 49 6e 73 74 61 6c 6c 65 72 2e 65 78 65 3a 20 23  Installer.exe: #
2360: 5b 67 65 74 4c 69 6e 65 4e 75 6d 62 65 72 5d 3a  [getLineNumber]:
2370: 20 52 65 67 69 73 74 72 79 48 65 6c 70 65 72 2e   RegistryHelper.
2380: 53 65 74 56 61 6c 75 65 3a 20 6b 65 79 20 3d 20  SetValue: key = 
2390: 22 48 4b 45 59 5f 4c 4f 43 41 4c 5f 4d 41 43 48  "HKEY_LOCAL_MACH
23a0: 49 4e 45 5c 53 6f 66 74 77 61 72 65 24 7b 77 6f  INE\Software${wo
23b0: 77 36 34 7d 5c 4d 69 63 72 6f 73 6f 66 74 5c 56  w64}\Microsoft\V
23c0: 69 73 75 61 6c 53 74 75 64 69 6f 5c 31 32 2e 30  isualStudio\12.0
23d0: 5c 44 61 74 61 53 6f 75 72 63 65 73 5c 7b 30 65  \DataSources\{0e
23e0: 62 61 61 62 36 65 2d 63 61 38 30 2d 34 62 34 61  baab6e-ca80-4b4a
23f0: 2d 38 64 64 66 2d 63 62 65 36 62 66 30 35 38 63  -8ddf-cbe6bf058c
2400: 37 31 7d 22 2c 20 6e 61 6d 65 20 3d 20 22 44 65  71}", name = "De
2410: 66 61 75 6c 74 50 72 6f 76 69 64 65 72 22 2c 20  faultProvider", 
2420: 76 61 6c 75 65 20 3d 20 22 7b 30 65 62 61 61 62  value = "{0ebaab
2430: 36 65 2d 63 61 38 30 2d 34 62 34 61 2d 38 64 64  6e-ca80-4b4a-8dd
2440: 66 2d 63 62 65 36 62 66 30 35 38 63 37 30 7d 22  f-cbe6bf058c70}"
2450: 0d 0a 49 6e 73 74 61 6c 6c 65 72 2e 65 78 65 3a  ..Installer.exe:
2460: 20 23 5b 67 65 74 4c 69 6e 65 4e 75 6d 62 65 72   #[getLineNumber
2470: 5d 3a 20 52 65 67 69 73 74 72 79 48 65 6c 70 65  ]: RegistryHelpe
2480: 72 2e 43 72 65 61 74 65 53 75 62 4b 65 79 3a 20  r.CreateSubKey: 
2490: 72 6f 6f 74 4b 65 79 20 3d 20 22 48 4b 45 59 5f  rootKey = "HKEY_
24a0: 4c 4f 43 41 4c 5f 4d 41 43 48 49 4e 45 5c 53 6f  LOCAL_MACHINE\So
24b0: 66 74 77 61 72 65 24 7b 77 6f 77 36 34 7d 5c 4d  ftware${wow64}\M
24c0: 69 63 72 6f 73 6f 66 74 5c 56 69 73 75 61 6c 53  icrosoft\VisualS
24d0: 74 75 64 69 6f 5c 31 32 2e 30 5c 44 61 74 61 53  tudio\12.0\DataS
24e0: 6f 75 72 63 65 73 5c 7b 30 65 62 61 61 62 36 65  ources\{0ebaab6e
24f0: 2d 63 61 38 30 2d 34 62 34 61 2d 38 64 64 66 2d  -ca80-4b4a-8ddf-
2500: 63 62 65 36 62 66 30 35 38 63 37 31 7d 22 2c 20  cbe6bf058c71}", 
2510: 73 75 62 4b 65 79 4e 61 6d 65 20 3d 20 22 53 75  subKeyName = "Su
2520: 70 70 6f 72 74 69 6e 67 50 72 6f 76 69 64 65 72  pportingProvider
2530: 73 5c 7b 30 65 62 61 61 62 36 65 2d 63 61 38 30  s\{0ebaab6e-ca80
2540: 2d 34 62 34 61 2d 38 64 64 66 2d 63 62 65 36 62  -4b4a-8ddf-cbe6b
2550: 66 30 35 38 63 37 30 7d 22 0d 0a 49 6e 73 74 61  f058c70}"..Insta
2560: 6c 6c 65 72 2e 65 78 65 3a 20 23 5b 67 65 74 4c  ller.exe: #[getL
2570: 69 6e 65 4e 75 6d 62 65 72 5d 3a 20 52 65 67 69  ineNumber]: Regi
2580: 73 74 72 79 48 65 6c 70 65 72 2e 4f 70 65 6e 53  stryHelper.OpenS
2590: 75 62 4b 65 79 3a 20 72 6f 6f 74 4b 65 79 20 3d  ubKey: rootKey =
25a0: 20 22 48 4b 45 59 5f 4c 4f 43 41 4c 5f 4d 41 43   "HKEY_LOCAL_MAC
25b0: 48 49 4e 45 22 2c 20 73 75 62 4b 65 79 4e 61 6d  HINE", subKeyNam
25c0: 65 20 3d 20 22 53 6f 66 74 77 61 72 65 24 7b 77  e = "Software${w
25d0: 6f 77 36 34 7d 5c 4d 69 63 72 6f 73 6f 66 74 5c  ow64}\Microsoft\
25e0: 56 69 73 75 61 6c 53 74 75 64 69 6f 5c 31 32 2e  VisualStudio\12.
25f0: 30 22 2c 20 77 72 69 74 61 62 6c 65 20 3d 20 46  0", writable = F
2600: 61 6c 73 65 0d 0a 49 6e 73 74 61 6c 6c 65 72 2e  alse..Installer.
2610: 65 78 65 3a 20 23 5b 67 65 74 4c 69 6e 65 4e 75  exe: #[getLineNu
2620: 6d 62 65 72 5d 3a 20 52 65 67 69 73 74 72 79 48  mber]: RegistryH
2630: 65 6c 70 65 72 2e 47 65 74 56 61 6c 75 65 3a 20  elper.GetValue: 
2640: 6b 65 79 20 3d 20 22 48 4b 45 59 5f 4c 4f 43 41  key = "HKEY_LOCA
2650: 4c 5f 4d 41 43 48 49 4e 45 5c 53 6f 66 74 77 61  L_MACHINE\Softwa
2660: 72 65 24 7b 77 6f 77 36 34 7d 5c 4d 69 63 72 6f  re${wow64}\Micro
2670: 73 6f 66 74 5c 56 69 73 75 61 6c 53 74 75 64 69  soft\VisualStudi
2680: 6f 5c 31 32 2e 30 22 2c 20 6e 61 6d 65 20 3d 20  o\12.0", name = 
2690: 22 49 6e 73 74 61 6c 6c 44 69 72 22 2c 20 64 65  "InstallDir", de
26a0: 66 61 75 6c 74 56 61 6c 75 65 20 3d 20 3c 6e 75  faultValue = <nu
26b0: 6c 6c 3e 0d 0a 49 6e 73 74 61 6c 6c 65 72 2e 65  ll>..Installer.e
26c0: 78 65 3a 20 23 5b 67 65 74 4c 69 6e 65 4e 75 6d  xe: #[getLineNum
26d0: 62 65 72 5d 3a 20 52 65 67 69 73 74 72 79 48 65  ber]: RegistryHe
26e0: 6c 70 65 72 2e 4f 70 65 6e 53 75 62 4b 65 79 3a  lper.OpenSubKey:
26f0: 20 72 6f 6f 74 4b 65 79 20 3d 20 22 48 4b 45 59   rootKey = "HKEY
2700: 5f 4c 4f 43 41 4c 5f 4d 41 43 48 49 4e 45 22 2c  _LOCAL_MACHINE",
2710: 20 73 75 62 4b 65 79 4e 61 6d 65 20 3d 20 22 53   subKeyName = "S
2720: 6f 66 74 77 61 72 65 24 7b 77 6f 77 36 34 7d 5c  oftware${wow64}\
2730: 4d 69 63 72 6f 73 6f 66 74 5c 56 69 73 75 61 6c  Microsoft\Visual
2740: 53 74 75 64 69 6f 5c 31 32 2e 30 22 2c 20 77 72  Studio\12.0", wr
2750: 69 74 61 62 6c 65 20 3d 20 46 61 6c 73 65 0d 0a  itable = False..
2760: 49 6e 73 74 61 6c 6c 65 72 2e 65 78 65 3a 20 23  Installer.exe: #
2770: 5b 67 65 74 4c 69 6e 65 4e 75 6d 62 65 72 5d 3a  [getLineNumber]:
2780: 20 52 65 67 69 73 74 72 79 48 65 6c 70 65 72 2e   RegistryHelper.
2790: 4f 70 65 6e 53 75 62 4b 65 79 3a 20 72 6f 6f 74  OpenSubKey: root
27a0: 4b 65 79 20 3d 20 22 48 4b 45 59 5f 4c 4f 43 41  Key = "HKEY_LOCA
27b0: 4c 5f 4d 41 43 48 49 4e 45 5c 53 6f 66 74 77 61  L_MACHINE\Softwa
27c0: 72 65 24 7b 77 6f 77 36 34 7d 5c 4d 69 63 72 6f  re${wow64}\Micro
27d0: 73 6f 66 74 5c 56 69 73 75 61 6c 53 74 75 64 69  soft\VisualStudi
27e0: 6f 5c 31 32 2e 30 22 2c 20 73 75 62 4b 65 79 4e  o\12.0", subKeyN
27f0: 61 6d 65 20 3d 20 22 44 61 74 61 50 72 6f 76 69  ame = "DataProvi
2800: 64 65 72 73 22 2c 20 77 72 69 74 61 62 6c 65 20  ders", writable 
2810: 3d 20 54 72 75 65 0d 0a 49 6e 73 74 61 6c 6c 65  = True..Installe
2820: 72 2e 65 78 65 3a 20 23 5b 67 65 74 4c 69 6e 65  r.exe: #[getLine
2830: 4e 75 6d 62 65 72 5d 3a 20 52 65 67 69 73 74 72  Number]: Registr
2840: 79 48 65 6c 70 65 72 2e 43 72 65 61 74 65 53 75  yHelper.CreateSu
2850: 62 4b 65 79 3a 20 72 6f 6f 74 4b 65 79 20 3d 20  bKey: rootKey = 
2860: 22 48 4b 45 59 5f 4c 4f 43 41 4c 5f 4d 41 43 48  "HKEY_LOCAL_MACH
2870: 49 4e 45 5c 53 6f 66 74 77 61 72 65 24 7b 77 6f  INE\Software${wo
2880: 77 36 34 7d 5c 4d 69 63 72 6f 73 6f 66 74 5c 56  w64}\Microsoft\V
2890: 69 73 75 61 6c 53 74 75 64 69 6f 5c 31 32 2e 30  isualStudio\12.0
28a0: 5c 44 61 74 61 50 72 6f 76 69 64 65 72 73 22 2c  \DataProviders",
28b0: 20 73 75 62 4b 65 79 4e 61 6d 65 20 3d 20 22 7b   subKeyName = "{
28c0: 30 65 62 61 61 62 36 65 2d 63 61 38 30 2d 34 62  0ebaab6e-ca80-4b
28d0: 34 61 2d 38 64 64 66 2d 63 62 65 36 62 66 30 35  4a-8ddf-cbe6bf05
28e0: 38 63 37 30 7d 22 0d 0a 49 6e 73 74 61 6c 6c 65  8c70}"..Installe
28f0: 72 2e 65 78 65 3a 20 23 5b 67 65 74 4c 69 6e 65  r.exe: #[getLine
2900: 4e 75 6d 62 65 72 5d 3a 20 52 65 67 69 73 74 72  Number]: Registr
2910: 79 48 65 6c 70 65 72 2e 53 65 74 56 61 6c 75 65  yHelper.SetValue
2920: 3a 20 6b 65 79 20 3d 20 22 48 4b 45 59 5f 4c 4f  : key = "HKEY_LO
2930: 43 41 4c 5f 4d 41 43 48 49 4e 45 5c 53 6f 66 74  CAL_MACHINE\Soft
2940: 77 61 72 65 24 7b 77 6f 77 36 34 7d 5c 4d 69 63  ware${wow64}\Mic
2950: 72 6f 73 6f 66 74 5c 56 69 73 75 61 6c 53 74 75  rosoft\VisualStu
2960: 64 69 6f 5c 31 32 2e 30 5c 44 61 74 61 50 72 6f  dio\12.0\DataPro
2970: 76 69 64 65 72 73 5c 7b 30 65 62 61 61 62 36 65  viders\{0ebaab6e
2980: 2d 63 61 38 30 2d 34 62 34 61 2d 38 64 64 66 2d  -ca80-4b4a-8ddf-
2990: 63 62 65 36 62 66 30 35 38 63 37 30 7d 22 2c 20  cbe6bf058c70}", 
29a0: 6e 61 6d 65 20 3d 20 3c 6e 75 6c 6c 3e 2c 20 76  name = <null>, v
29b0: 61 6c 75 65 20 3d 20 22 2e 4e 45 54 20 46 72 61  alue = ".NET Fra
29c0: 6d 65 77 6f 72 6b 20 44 61 74 61 20 50 72 6f 76  mework Data Prov
29d0: 69 64 65 72 20 66 6f 72 20 53 51 4c 69 74 65 22  ider for SQLite"
29e0: 0d 0a 49 6e 73 74 61 6c 6c 65 72 2e 65 78 65 3a  ..Installer.exe:
29f0: 20 23 5b 67 65 74 4c 69 6e 65 4e 75 6d 62 65 72   #[getLineNumber
2a00: 5d 3a 20 52 65 67 69 73 74 72 79 48 65 6c 70 65  ]: RegistryHelpe
2a10: 72 2e 53 65 74 56 61 6c 75 65 3a 20 6b 65 79 20  r.SetValue: key 
2a20: 3d 20 22 48 4b 45 59 5f 4c 4f 43 41 4c 5f 4d 41  = "HKEY_LOCAL_MA
2a30: 43 48 49 4e 45 5c 53 6f 66 74 77 61 72 65 24 7b  CHINE\Software${
2a40: 77 6f 77 36 34 7d 5c 4d 69 63 72 6f 73 6f 66 74  wow64}\Microsoft
2a50: 5c 56 69 73 75 61 6c 53 74 75 64 69 6f 5c 31 32  \VisualStudio\12
2a60: 2e 30 5c 44 61 74 61 50 72 6f 76 69 64 65 72 73  .0\DataProviders
2a70: 5c 7b 30 65 62 61 61 62 36 65 2d 63 61 38 30 2d  \{0ebaab6e-ca80-
2a80: 34 62 34 61 2d 38 64 64 66 2d 63 62 65 36 62 66  4b4a-8ddf-cbe6bf
2a90: 30 35 38 63 37 30 7d 22 2c 20 6e 61 6d 65 20 3d  058c70}", name =
2aa0: 20 22 41 73 73 65 6d 62 6c 79 22 2c 20 76 61 6c   "Assembly", val
2ab0: 75 65 20 3d 20 22 53 51 4c 69 74 65 2e 44 65 73  ue = "SQLite.Des
2ac0: 69 67 6e 65 72 2c 20 56 65 72 73 69 6f 6e 3d 5b  igner, Version=[
2ad0: 66 69 6c 65 20 76 65 72 73 69 6f 6e 20 24 73 71  file version $sq
2ae0: 6c 69 74 65 44 65 73 69 67 6e 65 72 44 6c 6c 46  liteDesignerDllF
2af0: 69 6c 65 5d 2c 20 43 75 6c 74 75 72 65 3d 6e 65  ile], Culture=ne
2b00: 75 74 72 61 6c 2c 20 50 75 62 6c 69 63 4b 65 79  utral, PublicKey
2b10: 54 6f 6b 65 6e 3d 64 62 39 33 37 62 63 32 64 34  Token=db937bc2d4
2b20: 34 66 66 31 33 39 22 0d 0a 49 6e 73 74 61 6c 6c  4ff139"..Install
2b30: 65 72 2e 65 78 65 3a 20 23 5b 67 65 74 4c 69 6e  er.exe: #[getLin
2b40: 65 4e 75 6d 62 65 72 5d 3a 20 52 65 67 69 73 74  eNumber]: Regist
2b50: 72 79 48 65 6c 70 65 72 2e 53 65 74 56 61 6c 75  ryHelper.SetValu
2b60: 65 3a 20 6b 65 79 20 3d 20 22 48 4b 45 59 5f 4c  e: key = "HKEY_L
2b70: 4f 43 41 4c 5f 4d 41 43 48 49 4e 45 5c 53 6f 66  OCAL_MACHINE\Sof
2b80: 74 77 61 72 65 24 7b 77 6f 77 36 34 7d 5c 4d 69  tware${wow64}\Mi
2b90: 63 72 6f 73 6f 66 74 5c 56 69 73 75 61 6c 53 74  crosoft\VisualSt
2ba0: 75 64 69 6f 5c 31 32 2e 30 5c 44 61 74 61 50 72  udio\12.0\DataPr
2bb0: 6f 76 69 64 65 72 73 5c 7b 30 65 62 61 61 62 36  oviders\{0ebaab6
2bc0: 65 2d 63 61 38 30 2d 34 62 34 61 2d 38 64 64 66  e-ca80-4b4a-8ddf
2bd0: 2d 63 62 65 36 62 66 30 35 38 63 37 30 7d 22 2c  -cbe6bf058c70}",
2be0: 20 6e 61 6d 65 20 3d 20 22 41 73 73 6f 63 69 61   name = "Associa
2bf0: 74 65 64 53 6f 75 72 63 65 22 2c 20 76 61 6c 75  tedSource", valu
2c00: 65 20 3d 20 22 7b 30 65 62 61 61 62 36 65 2d 63  e = "{0ebaab6e-c
2c10: 61 38 30 2d 34 62 34 61 2d 38 64 64 66 2d 63 62  a80-4b4a-8ddf-cb
2c20: 65 36 62 66 30 35 38 63 37 31 7d 22 0d 0a 49 6e  e6bf058c71}"..In
2c30: 73 74 61 6c 6c 65 72 2e 65 78 65 3a 20 23 5b 67  staller.exe: #[g
2c40: 65 74 4c 69 6e 65 4e 75 6d 62 65 72 5d 3a 20 52  etLineNumber]: R
2c50: 65 67 69 73 74 72 79 48 65 6c 70 65 72 2e 53 65  egistryHelper.Se
2c60: 74 56 61 6c 75 65 3a 20 6b 65 79 20 3d 20 22 48  tValue: key = "H
2c70: 4b 45 59 5f 4c 4f 43 41 4c 5f 4d 41 43 48 49 4e  KEY_LOCAL_MACHIN
2c80: 45 5c 53 6f 66 74 77 61 72 65 24 7b 77 6f 77 36  E\Software${wow6
2c90: 34 7d 5c 4d 69 63 72 6f 73 6f 66 74 5c 56 69 73  4}\Microsoft\Vis
2ca0: 75 61 6c 53 74 75 64 69 6f 5c 31 32 2e 30 5c 44  ualStudio\12.0\D
2cb0: 61 74 61 50 72 6f 76 69 64 65 72 73 5c 7b 30 65  ataProviders\{0e
2cc0: 62 61 61 62 36 65 2d 63 61 38 30 2d 34 62 34 61  baab6e-ca80-4b4a
2cd0: 2d 38 64 64 66 2d 63 62 65 36 62 66 30 35 38 63  -8ddf-cbe6bf058c
2ce0: 37 30 7d 22 2c 20 6e 61 6d 65 20 3d 20 22 49 6e  70}", name = "In
2cf0: 76 61 72 69 61 6e 74 4e 61 6d 65 22 2c 20 76 61  variantName", va
2d00: 6c 75 65 20 3d 20 22 53 79 73 74 65 6d 2e 44 61  lue = "System.Da
2d10: 74 61 2e 53 51 4c 69 74 65 22 0d 0a 49 6e 73 74  ta.SQLite"..Inst
2d20: 61 6c 6c 65 72 2e 65 78 65 3a 20 23 5b 67 65 74  aller.exe: #[get
2d30: 4c 69 6e 65 4e 75 6d 62 65 72 5d 3a 20 52 65 67  LineNumber]: Reg
2d40: 69 73 74 72 79 48 65 6c 70 65 72 2e 53 65 74 56  istryHelper.SetV
2d50: 61 6c 75 65 3a 20 6b 65 79 20 3d 20 22 48 4b 45  alue: key = "HKE
2d60: 59 5f 4c 4f 43 41 4c 5f 4d 41 43 48 49 4e 45 5c  Y_LOCAL_MACHINE\
2d70: 53 6f 66 74 77 61 72 65 24 7b 77 6f 77 36 34 7d  Software${wow64}
2d80: 5c 4d 69 63 72 6f 73 6f 66 74 5c 56 69 73 75 61  \Microsoft\Visua
2d90: 6c 53 74 75 64 69 6f 5c 31 32 2e 30 5c 44 61 74  lStudio\12.0\Dat
2da0: 61 50 72 6f 76 69 64 65 72 73 5c 7b 30 65 62 61  aProviders\{0eba
2db0: 61 62 36 65 2d 63 61 38 30 2d 34 62 34 61 2d 38  ab6e-ca80-4b4a-8
2dc0: 64 64 66 2d 63 62 65 36 62 66 30 35 38 63 37 30  ddf-cbe6bf058c70
2dd0: 7d 22 2c 20 6e 61 6d 65 20 3d 20 22 54 65 63 68  }", name = "Tech
2de0: 6e 6f 6c 6f 67 79 22 2c 20 76 61 6c 75 65 20 3d  nology", value =
2df0: 20 22 7b 37 37 61 62 39 61 39 64 2d 37 38 62 39   "{77ab9a9d-78b9
2e00: 2d 34 62 61 37 2d 39 31 61 63 2d 38 37 33 66 35  -4ba7-91ac-873f5
2e10: 33 33 38 66 31 64 32 7d 22 0d 0a 49 6e 73 74 61  338f1d2}"..Insta
2e20: 6c 6c 65 72 2e 65 78 65 3a 20 23 5b 67 65 74 4c  ller.exe: #[getL
2e30: 69 6e 65 4e 75 6d 62 65 72 5d 3a 20 52 65 67 69  ineNumber]: Regi
2e40: 73 74 72 79 48 65 6c 70 65 72 2e 53 65 74 56 61  stryHelper.SetVa
2e50: 6c 75 65 3a 20 6b 65 79 20 3d 20 22 48 4b 45 59  lue: key = "HKEY
2e60: 5f 4c 4f 43 41 4c 5f 4d 41 43 48 49 4e 45 5c 53  _LOCAL_MACHINE\S
2e70: 6f 66 74 77 61 72 65 24 7b 77 6f 77 36 34 7d 5c  oftware${wow64}\
2e80: 4d 69 63 72 6f 73 6f 66 74 5c 56 69 73 75 61 6c  Microsoft\Visual
2e90: 53 74 75 64 69 6f 5c 31 32 2e 30 5c 44 61 74 61  Studio\12.0\Data
2ea0: 50 72 6f 76 69 64 65 72 73 5c 7b 30 65 62 61 61  Providers\{0ebaa
2eb0: 62 36 65 2d 63 61 38 30 2d 34 62 34 61 2d 38 64  b6e-ca80-4b4a-8d
2ec0: 64 66 2d 63 62 65 36 62 66 30 35 38 63 37 30 7d  df-cbe6bf058c70}
2ed0: 22 2c 20 6e 61 6d 65 20 3d 20 22 43 6f 64 65 42  ", name = "CodeB
2ee0: 61 73 65 22 2c 20 76 61 6c 75 65 20 3d 20 22 5b  ase", value = "[
2ef0: 66 69 6c 65 20 6e 61 74 69 76 65 6e 61 6d 65 20  file nativename 
2f00: 5b 66 69 6c 65 20 6a 6f 69 6e 20 5b 67 65 74 42  [file join [getB
2f10: 75 69 6c 64 44 69 72 65 63 74 6f 72 79 20 66 61  uildDirectory fa
2f20: 6c 73 65 5d 20 53 51 4c 69 74 65 2e 44 65 73 69  lse] SQLite.Desi
2f30: 67 6e 65 72 2e 64 6c 6c 5d 5d 22 0d 0a 49 6e 73  gner.dll]]"..Ins
2f40: 74 61 6c 6c 65 72 2e 65 78 65 3a 20 23 5b 67 65  taller.exe: #[ge
2f50: 74 4c 69 6e 65 4e 75 6d 62 65 72 5d 3a 20 52 65  tLineNumber]: Re
2f60: 67 69 73 74 72 79 48 65 6c 70 65 72 2e 53 65 74  gistryHelper.Set
2f70: 56 61 6c 75 65 3a 20 6b 65 79 20 3d 20 22 48 4b  Value: key = "HK
2f80: 45 59 5f 4c 4f 43 41 4c 5f 4d 41 43 48 49 4e 45  EY_LOCAL_MACHINE
2f90: 5c 53 6f 66 74 77 61 72 65 24 7b 77 6f 77 36 34  \Software${wow64
2fa0: 7d 5c 4d 69 63 72 6f 73 6f 66 74 5c 56 69 73 75  }\Microsoft\Visu
2fb0: 61 6c 53 74 75 64 69 6f 5c 31 32 2e 30 5c 44 61  alStudio\12.0\Da
2fc0: 74 61 50 72 6f 76 69 64 65 72 73 5c 7b 30 65 62  taProviders\{0eb
2fd0: 61 61 62 36 65 2d 63 61 38 30 2d 34 62 34 61 2d  aab6e-ca80-4b4a-
2fe0: 38 64 64 66 2d 63 62 65 36 62 66 30 35 38 63 37  8ddf-cbe6bf058c7
2ff0: 30 7d 22 2c 20 6e 61 6d 65 20 3d 20 22 46 61 63  0}", name = "Fac
3000: 74 6f 72 79 53 65 72 76 69 63 65 22 2c 20 76 61  toryService", va
3010: 6c 75 65 20 3d 20 22 7b 64 63 62 65 36 63 38 64  lue = "{dcbe6c8d
3020: 2d 30 65 35 37 2d 34 30 39 39 2d 61 31 38 33 2d  -0e57-4099-a183-
3030: 39 38 66 66 37 34 63 36 34 64 39 64 7d 22 0d 0a  98ff74c64d9d}"..
3040: 49 6e 73 74 61 6c 6c 65 72 2e 65 78 65 3a 20 23  Installer.exe: #
3050: 5b 67 65 74 4c 69 6e 65 4e 75 6d 62 65 72 5d 3a  [getLineNumber]:
3060: 20 52 65 67 69 73 74 72 79 48 65 6c 70 65 72 2e   RegistryHelper.
3070: 43 72 65 61 74 65 53 75 62 4b 65 79 3a 20 72 6f  CreateSubKey: ro
3080: 6f 74 4b 65 79 20 3d 20 22 48 4b 45 59 5f 4c 4f  otKey = "HKEY_LO
3090: 43 41 4c 5f 4d 41 43 48 49 4e 45 5c 53 6f 66 74  CAL_MACHINE\Soft
30a0: 77 61 72 65 24 7b 77 6f 77 36 34 7d 5c 4d 69 63  ware${wow64}\Mic
30b0: 72 6f 73 6f 66 74 5c 56 69 73 75 61 6c 53 74 75  rosoft\VisualStu
30c0: 64 69 6f 5c 31 32 2e 30 5c 44 61 74 61 50 72 6f  dio\12.0\DataPro
30d0: 76 69 64 65 72 73 5c 7b 30 65 62 61 61 62 36 65  viders\{0ebaab6e
30e0: 2d 63 61 38 30 2d 34 62 34 61 2d 38 64 64 66 2d  -ca80-4b4a-8ddf-
30f0: 63 62 65 36 62 66 30 35 38 63 37 30 7d 22 2c 20  cbe6bf058c70}", 
3100: 73 75 62 4b 65 79 4e 61 6d 65 20 3d 20 22 53 75  subKeyName = "Su
3110: 70 70 6f 72 74 65 64 4f 62 6a 65 63 74 73 5c 44  pportedObjects\D
3120: 61 74 61 43 6f 6e 6e 65 63 74 69 6f 6e 55 49 43  ataConnectionUIC
3130: 6f 6e 74 72 6f 6c 22 0d 0a 49 6e 73 74 61 6c 6c  ontrol"..Install
3140: 65 72 2e 65 78 65 3a 20 23 5b 67 65 74 4c 69 6e  er.exe: #[getLin
3150: 65 4e 75 6d 62 65 72 5d 3a 20 52 65 67 69 73 74  eNumber]: Regist
3160: 72 79 48 65 6c 70 65 72 2e 43 72 65 61 74 65 53  ryHelper.CreateS
3170: 75 62 4b 65 79 3a 20 72 6f 6f 74 4b 65 79 20 3d  ubKey: rootKey =
3180: 20 22 48 4b 45 59 5f 4c 4f 43 41 4c 5f 4d 41 43   "HKEY_LOCAL_MAC
3190: 48 49 4e 45 5c 53 6f 66 74 77 61 72 65 24 7b 77  HINE\Software${w
31a0: 6f 77 36 34 7d 5c 4d 69 63 72 6f 73 6f 66 74 5c  ow64}\Microsoft\
31b0: 56 69 73 75 61 6c 53 74 75 64 69 6f 5c 31 32 2e  VisualStudio\12.
31c0: 30 5c 44 61 74 61 50 72 6f 76 69 64 65 72 73 5c  0\DataProviders\
31d0: 7b 30 65 62 61 61 62 36 65 2d 63 61 38 30 2d 34  {0ebaab6e-ca80-4
31e0: 62 34 61 2d 38 64 64 66 2d 63 62 65 36 62 66 30  b4a-8ddf-cbe6bf0
31f0: 35 38 63 37 30 7d 22 2c 20 73 75 62 4b 65 79 4e  58c70}", subKeyN
3200: 61 6d 65 20 3d 20 22 53 75 70 70 6f 72 74 65 64  ame = "Supported
3210: 4f 62 6a 65 63 74 73 5c 44 61 74 61 43 6f 6e 6e  Objects\DataConn
3220: 65 63 74 69 6f 6e 50 72 6f 70 65 72 74 69 65 73  ectionProperties
3230: 22 0d 0a 49 6e 73 74 61 6c 6c 65 72 2e 65 78 65  "..Installer.exe
3240: 3a 20 23 5b 67 65 74 4c 69 6e 65 4e 75 6d 62 65  : #[getLineNumbe
3250: 72 5d 3a 20 52 65 67 69 73 74 72 79 48 65 6c 70  r]: RegistryHelp
3260: 65 72 2e 43 72 65 61 74 65 53 75 62 4b 65 79 3a  er.CreateSubKey:
3270: 20 72 6f 6f 74 4b 65 79 20 3d 20 22 48 4b 45 59   rootKey = "HKEY
3280: 5f 4c 4f 43 41 4c 5f 4d 41 43 48 49 4e 45 5c 53  _LOCAL_MACHINE\S
3290: 6f 66 74 77 61 72 65 24 7b 77 6f 77 36 34 7d 5c  oftware${wow64}\
32a0: 4d 69 63 72 6f 73 6f 66 74 5c 56 69 73 75 61 6c  Microsoft\Visual
32b0: 53 74 75 64 69 6f 5c 31 32 2e 30 5c 44 61 74 61  Studio\12.0\Data
32c0: 50 72 6f 76 69 64 65 72 73 5c 7b 30 65 62 61 61  Providers\{0ebaa
32d0: 62 36 65 2d 63 61 38 30 2d 34 62 34 61 2d 38 64  b6e-ca80-4b4a-8d
32e0: 64 66 2d 63 62 65 36 62 66 30 35 38 63 37 30 7d  df-cbe6bf058c70}
32f0: 22 2c 20 73 75 62 4b 65 79 4e 61 6d 65 20 3d 20  ", subKeyName = 
3300: 22 53 75 70 70 6f 72 74 65 64 4f 62 6a 65 63 74  "SupportedObject
3310: 73 5c 44 61 74 61 43 6f 6e 6e 65 63 74 69 6f 6e  s\DataConnection
3320: 53 75 70 70 6f 72 74 22 0d 0a 49 6e 73 74 61 6c  Support"..Instal
3330: 6c 65 72 2e 65 78 65 3a 20 23 5b 67 65 74 4c 69  ler.exe: #[getLi
3340: 6e 65 4e 75 6d 62 65 72 5d 3a 20 52 65 67 69 73  neNumber]: Regis
3350: 74 72 79 48 65 6c 70 65 72 2e 43 72 65 61 74 65  tryHelper.Create
3360: 53 75 62 4b 65 79 3a 20 72 6f 6f 74 4b 65 79 20  SubKey: rootKey 
3370: 3d 20 22 48 4b 45 59 5f 4c 4f 43 41 4c 5f 4d 41  = "HKEY_LOCAL_MA
3380: 43 48 49 4e 45 5c 53 6f 66 74 77 61 72 65 24 7b  CHINE\Software${
3390: 77 6f 77 36 34 7d 5c 4d 69 63 72 6f 73 6f 66 74  wow64}\Microsoft
33a0: 5c 56 69 73 75 61 6c 53 74 75 64 69 6f 5c 31 32  \VisualStudio\12
33b0: 2e 30 5c 44 61 74 61 50 72 6f 76 69 64 65 72 73  .0\DataProviders
33c0: 5c 7b 30 65 62 61 61 62 36 65 2d 63 61 38 30 2d  \{0ebaab6e-ca80-
33d0: 34 62 34 61 2d 38 64 64 66 2d 63 62 65 36 62 66  4b4a-8ddf-cbe6bf
33e0: 30 35 38 63 37 30 7d 22 2c 20 73 75 62 4b 65 79  058c70}", subKey
33f0: 4e 61 6d 65 20 3d 20 22 53 75 70 70 6f 72 74 65  Name = "Supporte
3400: 64 4f 62 6a 65 63 74 73 5c 44 61 74 61 4f 62 6a  dObjects\DataObj
3410: 65 63 74 53 75 70 70 6f 72 74 22 0d 0a 49 6e 73  ectSupport"..Ins
3420: 74 61 6c 6c 65 72 2e 65 78 65 3a 20 23 5b 67 65  taller.exe: #[ge
3430: 74 4c 69 6e 65 4e 75 6d 62 65 72 5d 3a 20 52 65  tLineNumber]: Re
3440: 67 69 73 74 72 79 48 65 6c 70 65 72 2e 43 72 65  gistryHelper.Cre
3450: 61 74 65 53 75 62 4b 65 79 3a 20 72 6f 6f 74 4b  ateSubKey: rootK
3460: 65 79 20 3d 20 22 48 4b 45 59 5f 4c 4f 43 41 4c  ey = "HKEY_LOCAL
3470: 5f 4d 41 43 48 49 4e 45 5c 53 6f 66 74 77 61 72  _MACHINE\Softwar
3480: 65 24 7b 77 6f 77 36 34 7d 5c 4d 69 63 72 6f 73  e${wow64}\Micros
3490: 6f 66 74 5c 56 69 73 75 61 6c 53 74 75 64 69 6f  oft\VisualStudio
34a0: 5c 31 32 2e 30 5c 44 61 74 61 50 72 6f 76 69 64  \12.0\DataProvid
34b0: 65 72 73 5c 7b 30 65 62 61 61 62 36 65 2d 63 61  ers\{0ebaab6e-ca
34c0: 38 30 2d 34 62 34 61 2d 38 64 64 66 2d 63 62 65  80-4b4a-8ddf-cbe
34d0: 36 62 66 30 35 38 63 37 30 7d 22 2c 20 73 75 62  6bf058c70}", sub
34e0: 4b 65 79 4e 61 6d 65 20 3d 20 22 53 75 70 70 6f  KeyName = "Suppo
34f0: 72 74 65 64 4f 62 6a 65 63 74 73 5c 44 61 74 61  rtedObjects\Data
3500: 56 69 65 77 53 75 70 70 6f 72 74 22 0d 0a 49 6e  ViewSupport"..In
3510: 73 74 61 6c 6c 65 72 2e 65 78 65 3a 20 23 5b 67  staller.exe: #[g
3520: 65 74 4c 69 6e 65 4e 75 6d 62 65 72 5d 3a 20 52  etLineNumber]: R
3530: 65 67 69 73 74 72 79 48 65 6c 70 65 72 2e 4f 70  egistryHelper.Op
3540: 65 6e 53 75 62 4b 65 79 3a 20 72 6f 6f 74 4b 65  enSubKey: rootKe
3550: 79 20 3d 20 22 48 4b 45 59 5f 4c 4f 43 41 4c 5f  y = "HKEY_LOCAL_
3560: 4d 41 43 48 49 4e 45 22 2c 20 73 75 62 4b 65 79  MACHINE", subKey
3570: 4e 61 6d 65 20 3d 20 22 53 6f 66 74 77 61 72 65  Name = "Software
3580: 24 7b 77 6f 77 36 34 7d 5c 4d 69 63 72 6f 73 6f  ${wow64}\Microso
3590: 66 74 5c 56 69 73 75 61 6c 53 74 75 64 69 6f 5c  ft\VisualStudio\
35a0: 31 32 2e 30 22 2c 20 77 72 69 74 61 62 6c 65 20  12.0", writable 
35b0: 3d 20 46 61 6c 73 65 0d 0a 49 6e 73 74 61 6c 6c  = False..Install
35c0: 65 72 2e 65 78 65 3a 20 23 5b 67 65 74 4c 69 6e  er.exe: #[getLin
35d0: 65 4e 75 6d 62 65 72 5d 3a 20 52 65 67 69 73 74  eNumber]: Regist
35e0: 72 79 48 65 6c 70 65 72 2e 47 65 74 56 61 6c 75  ryHelper.GetValu
35f0: 65 3a 20 6b 65 79 20 3d 20 22 48 4b 45 59 5f 4c  e: key = "HKEY_L
3600: 4f 43 41 4c 5f 4d 41 43 48 49 4e 45 5c 53 6f 66  OCAL_MACHINE\Sof
3610: 74 77 61 72 65 24 7b 77 6f 77 36 34 7d 5c 4d 69  tware${wow64}\Mi
3620: 63 72 6f 73 6f 66 74 5c 56 69 73 75 61 6c 53 74  crosoft\VisualSt
3630: 75 64 69 6f 5c 31 32 2e 30 22 2c 20 6e 61 6d 65  udio\12.0", name
3640: 20 3d 20 22 49 6e 73 74 61 6c 6c 44 69 72 22 2c   = "InstallDir",
3650: 20 64 65 66 61 75 6c 74 56 61 6c 75 65 20 3d 20   defaultValue = 
3660: 3c 6e 75 6c 6c 3e 0d 0a 49 6e 73 74 61 6c 6c 65  <null>..Installe
3670: 72 2e 65 78 65 3a 20 23 5b 67 65 74 4c 69 6e 65  r.exe: #[getLine
3680: 4e 75 6d 62 65 72 5d 3a 20 49 6e 73 74 61 6c 6c  Number]: Install
3690: 65 72 2e 41 64 64 56 73 44 65 76 45 6e 76 53 65  er.AddVsDevEnvSe
36a0: 74 75 70 3a 20 66 69 6c 65 4e 61 6d 65 20 3d 20  tup: fileName = 
36b0: 22 5b 66 69 6c 65 20 6e 61 74 69 76 65 6e 61 6d  "[file nativenam
36c0: 65 20 5b 66 69 6c 65 20 6a 6f 69 6e 20 5b 65 78  e [file join [ex
36d0: 70 72 20 7b 24 69 73 36 34 20 3f 20 24 7b 3a 3a  pr {$is64 ? ${::
36e0: 65 6e 76 28 50 72 6f 67 72 61 6d 46 69 6c 65 73  env(ProgramFiles
36f0: 28 78 38 36 29 29 7d 20 3a 20 24 3a 3a 65 6e 76  (x86))} : $::env
3700: 28 50 72 6f 67 72 61 6d 46 69 6c 65 73 29 7d 5d  (ProgramFiles)}]
3710: 20 7b 4d 69 63 72 6f 73 6f 66 74 20 56 69 73 75   {Microsoft Visu
3720: 61 6c 20 53 74 75 64 69 6f 20 31 32 2e 30 7d 20  al Studio 12.0} 
3730: 43 6f 6d 6d 6f 6e 37 20 49 44 45 20 64 65 76 65  Common7 IDE deve
3740: 6e 76 2e 65 78 65 5d 5d 22 2c 20 61 72 67 75 6d  nv.exe]]", argum
3750: 65 6e 74 73 20 3d 20 22 2f 73 65 74 75 70 22 2c  ents = "/setup",
3760: 20 77 6f 72 6b 69 6e 67 44 69 72 65 63 74 6f 72   workingDirector
3770: 79 20 3d 20 22 5b 66 69 6c 65 20 6e 61 74 69 76  y = "[file nativ
3780: 65 6e 61 6d 65 20 5b 66 69 6c 65 20 6a 6f 69 6e  ename [file join
3790: 20 5b 65 78 70 72 20 7b 24 69 73 36 34 20 3f 20   [expr {$is64 ? 
37a0: 24 7b 3a 3a 65 6e 76 28 50 72 6f 67 72 61 6d 46  ${::env(ProgramF
37b0: 69 6c 65 73 28 78 38 36 29 29 7d 20 3a 20 24 3a  iles(x86))} : $:
37c0: 3a 65 6e 76 28 50 72 6f 67 72 61 6d 46 69 6c 65  :env(ProgramFile
37d0: 73 29 7d 5d 20 7b 4d 69 63 72 6f 73 6f 66 74 20  s)}] {Microsoft 
37e0: 56 69 73 75 61 6c 20 53 74 75 64 69 6f 20 31 32  Visual Studio 12
37f0: 2e 30 7d 20 43 6f 6d 6d 6f 6e 37 20 49 44 45 5d  .0} Common7 IDE]
3800: 5d 5c 22 2c 20 75 73 65 53 68 65 6c 6c 45 78 65  ]\", useShellExe
3810: 63 75 74 65 20 3d 20 46 61 6c 73 65 2c 20 72 65  cute = False, re
3820: 64 69 72 65 63 74 53 74 61 6e 64 61 72 64 4f 75  directStandardOu
3830: 74 70 75 74 20 3d 20 54 72 75 65 2c 20 72 65 64  tput = True, red
3840: 69 72 65 63 74 53 74 61 6e 64 61 72 64 45 72 72  irectStandardErr
3850: 6f 72 20 3d 20 54 72 75 65 0d 0a 49 6e 73 74 61  or = True..Insta
3860: 6c 6c 65 72 2e 65 78 65 3a 20 23 5b 67 65 74 4c  ller.exe: #[getL
3870: 69 6e 65 4e 75 6d 62 65 72 5d 3a 20 49 6e 73 74  ineNumber]: Inst
3880: 61 6c 6c 65 72 2e 4d 61 69 6e 3a 20 73 75 62 4b  aller.Main: subK
3890: 65 79 73 43 72 65 61 74 65 64 20 3d 20 31 32 2c  eysCreated = 12,
38a0: 20 73 75 62 4b 65 79 73 44 65 6c 65 74 65 64 20   subKeysDeleted 
38b0: 3d 20 31 2c 20 6b 65 79 56 61 6c 75 65 73 52 65  = 1, keyValuesRe
38c0: 61 64 20 3d 20 35 2c 20 6b 65 79 56 61 6c 75 65  ad = 5, keyValue
38d0: 73 57 72 69 74 74 65 6e 20 3d 20 32 33 2c 20 6b  sWritten = 23, k
38e0: 65 79 56 61 6c 75 65 73 44 65 6c 65 74 65 64 20  eyValuesDeleted 
38f0: 3d 20 30 0d 0a 49 6e 73 74 61 6c 6c 65 72 2e 65  = 0..Installer.e
3900: 78 65 3a 20 23 5b 67 65 74 4c 69 6e 65 4e 75 6d  xe: #[getLineNum
3910: 62 65 72 5d 3a 20 49 6e 73 74 61 6c 6c 65 72 2e  ber]: Installer.
3920: 4d 61 69 6e 3a 20 66 69 6c 65 73 43 72 65 61 74  Main: filesCreat
3930: 65 64 20 3d 20 31 2c 20 66 69 6c 65 73 4d 6f 64  ed = 1, filesMod
3940: 69 66 69 65 64 20 3d 20 32 2c 20 66 69 6c 65 73  ified = 2, files
3950: 44 65 6c 65 74 65 64 20 3d 20 30 0d 0a 49 6e 73  Deleted = 0..Ins
3960: 74 61 6c 6c 65 72 2e 65 78 65 3a 20 23 5b 67 65  taller.exe: #[ge
3970: 74 4c 69 6e 65 4e 75 6d 62 65 72 5d 3a 20 49 6e  tLineNumber]: In
3980: 73 74 61 6c 6c 65 72 2e 4d 61 69 6e 3a 20 53 75  staller.Main: Su
3990: 63 63 65 73 73 2e 0d 0a                          ccess...