System.Data.SQLite
Hex Artifact Content
Not logged in

Artifact 01aea5cdad44dd9aa023ebf0f26146a6b2e7689d:


0000: 49 6e 73 74 61 6c 6c 65 72 2e 65 78 65 3a 20 23  Installer.exe: #
0010: 31 3a 20 43 6f 6e 66 69 67 75 72 61 74 69 6f 6e  1: Configuration
0020: 2e 50 72 6f 63 65 73 73 3a 20 4e 6f 20 61 63 74  .Process: No act
0030: 75 61 6c 20 63 68 61 6e 67 65 73 20 77 69 6c 6c  ual changes will
0040: 20 62 65 20 6d 61 64 65 20 74 6f 20 74 68 69 73   be made to this
0050: 20 73 79 73 74 65 6d 20 62 65 63 61 75 73 65 20   system because 
0060: 22 77 68 61 74 2d 69 66 22 20 6d 6f 64 65 20 69  "what-if" mode i
0070: 73 20 65 6e 61 62 6c 65 64 2e 0d 0a 49 6e 73 74  s enabled...Inst
0080: 61 6c 6c 65 72 2e 65 78 65 3a 20 23 32 3a 20 49  aller.exe: #2: I
0090: 6e 73 74 61 6c 6c 65 72 2e 4d 61 69 6e 3a 20 47  nstaller.Main: G
00a0: 61 63 52 65 6d 6f 76 65 3a 20 61 73 73 65 6d 62  acRemove: assemb
00b0: 6c 79 50 61 74 68 20 3d 20 22 5b 66 69 6c 65 20  lyPath = "[file 
00c0: 6e 61 74 69 76 65 6e 61 6d 65 20 5b 66 69 6c 65  nativename [file
00d0: 20 6a 6f 69 6e 20 5b 67 65 74 42 75 69 6c 64 44   join [getBuildD
00e0: 69 72 65 63 74 6f 72 79 5d 20 53 79 73 74 65 6d  irectory] System
00f0: 2e 44 61 74 61 2e 53 51 4c 69 74 65 2e 4c 69 6e  .Data.SQLite.Lin
0100: 71 2e 64 6c 6c 5d 5d 22 0d 0a 49 6e 73 74 61 6c  q.dll]]"..Instal
0110: 6c 65 72 2e 65 78 65 3a 20 23 33 3a 20 49 6e 73  ler.exe: #3: Ins
0120: 74 61 6c 6c 65 72 2e 4d 61 69 6e 3a 20 47 61 63  taller.Main: Gac
0130: 52 65 6d 6f 76 65 3a 20 61 73 73 65 6d 62 6c 79  Remove: assembly
0140: 50 61 74 68 20 3d 20 22 5b 66 69 6c 65 20 6e 61  Path = "[file na
0150: 74 69 76 65 6e 61 6d 65 20 5b 66 69 6c 65 20 6a  tivename [file j
0160: 6f 69 6e 20 5b 67 65 74 42 75 69 6c 64 44 69 72  oin [getBuildDir
0170: 65 63 74 6f 72 79 5d 20 53 79 73 74 65 6d 2e 44  ectory] System.D
0180: 61 74 61 2e 53 51 4c 69 74 65 2e 64 6c 6c 5d 5d  ata.SQLite.dll]]
0190: 22 0d 0a 49 6e 73 74 61 6c 6c 65 72 2e 65 78 65  "..Installer.exe
01a0: 3a 20 23 34 3a 20 52 65 67 69 73 74 72 79 48 65  : #4: RegistryHe
01b0: 6c 70 65 72 2e 4f 70 65 6e 53 75 62 4b 65 79 3a  lper.OpenSubKey:
01c0: 20 72 6f 6f 74 4b 65 79 20 3d 20 22 48 4b 45 59   rootKey = "HKEY
01d0: 5f 4c 4f 43 41 4c 5f 4d 41 43 48 49 4e 45 22 2c  _LOCAL_MACHINE",
01e0: 20 73 75 62 4b 65 79 4e 61 6d 65 20 3d 20 22 53   subKeyName = "S
01f0: 6f 66 74 77 61 72 65 24 7b 77 6f 77 36 34 7d 5c  oftware${wow64}\
0200: 4d 69 63 72 6f 73 6f 66 74 5c 2e 4e 45 54 46 72  Microsoft\.NETFr
0210: 61 6d 65 77 6f 72 6b 5c 76 32 2e 30 2e 35 30 37  amework\v2.0.507
0220: 32 37 22 2c 20 77 72 69 74 61 62 6c 65 20 3d 20  27", writable = 
0230: 46 61 6c 73 65 0d 0a 49 6e 73 74 61 6c 6c 65 72  False..Installer
0240: 2e 65 78 65 3a 20 23 35 3a 20 52 65 67 69 73 74  .exe: #5: Regist
0250: 72 79 48 65 6c 70 65 72 2e 4f 70 65 6e 53 75 62  ryHelper.OpenSub
0260: 4b 65 79 3a 20 72 6f 6f 74 4b 65 79 20 3d 20 22  Key: rootKey = "
0270: 48 4b 45 59 5f 4c 4f 43 41 4c 5f 4d 41 43 48 49  HKEY_LOCAL_MACHI
0280: 4e 45 22 2c 20 73 75 62 4b 65 79 4e 61 6d 65 20  NE", subKeyName 
0290: 3d 20 22 53 6f 66 74 77 61 72 65 24 7b 77 6f 77  = "Software${wow
02a0: 36 34 7d 5c 4d 69 63 72 6f 73 6f 66 74 5c 2e 4e  64}\Microsoft\.N
02b0: 45 54 46 72 61 6d 65 77 6f 72 6b 22 2c 20 77 72  ETFramework", wr
02c0: 69 74 61 62 6c 65 20 3d 20 46 61 6c 73 65 0d 0a  itable = False..
02d0: 49 6e 73 74 61 6c 6c 65 72 2e 65 78 65 3a 20 23  Installer.exe: #
02e0: 36 3a 20 52 65 67 69 73 74 72 79 48 65 6c 70 65  6: RegistryHelpe
02f0: 72 2e 47 65 74 56 61 6c 75 65 3a 20 6b 65 79 20  r.GetValue: key 
0300: 3d 20 22 48 4b 45 59 5f 4c 4f 43 41 4c 5f 4d 41  = "HKEY_LOCAL_MA
0310: 43 48 49 4e 45 5c 53 6f 66 74 77 61 72 65 24 7b  CHINE\Software${
0320: 77 6f 77 36 34 7d 5c 4d 69 63 72 6f 73 6f 66 74  wow64}\Microsoft
0330: 5c 2e 4e 45 54 46 72 61 6d 65 77 6f 72 6b 22 2c  \.NETFramework",
0340: 20 6e 61 6d 65 20 3d 20 22 49 6e 73 74 61 6c 6c   name = "Install
0350: 52 6f 6f 74 22 2c 20 64 65 66 61 75 6c 74 56 61  Root", defaultVa
0360: 6c 75 65 20 3d 20 3c 6e 75 6c 6c 3e 0d 0a 49 6e  lue = <null>..In
0370: 73 74 61 6c 6c 65 72 2e 65 78 65 3a 20 23 37 3a  staller.exe: #7:
0380: 20 52 65 67 69 73 74 72 79 48 65 6c 70 65 72 2e   RegistryHelper.
0390: 4f 70 65 6e 53 75 62 4b 65 79 3a 20 72 6f 6f 74  OpenSubKey: root
03a0: 4b 65 79 20 3d 20 22 48 4b 45 59 5f 4c 4f 43 41  Key = "HKEY_LOCA
03b0: 4c 5f 4d 41 43 48 49 4e 45 22 2c 20 73 75 62 4b  L_MACHINE", subK
03c0: 65 79 4e 61 6d 65 20 3d 20 22 53 6f 66 74 77 61  eyName = "Softwa
03d0: 72 65 24 7b 77 6f 77 36 34 7d 5c 4d 69 63 72 6f  re${wow64}\Micro
03e0: 73 6f 66 74 5c 2e 4e 45 54 46 72 61 6d 65 77 6f  soft\.NETFramewo
03f0: 72 6b 5c 76 32 2e 30 2e 35 30 37 32 37 5c 41 73  rk\v2.0.50727\As
0400: 73 65 6d 62 6c 79 46 6f 6c 64 65 72 73 45 78 22  semblyFoldersEx"
0410: 2c 20 77 72 69 74 61 62 6c 65 20 3d 20 54 72 75  , writable = Tru
0420: 65 0d 0a 49 6e 73 74 61 6c 6c 65 72 2e 65 78 65  e..Installer.exe
0430: 3a 20 23 38 3a 20 52 65 67 69 73 74 72 79 48 65  : #8: RegistryHe
0440: 6c 70 65 72 2e 44 65 6c 65 74 65 53 75 62 4b 65  lper.DeleteSubKe
0450: 79 3a 20 72 6f 6f 74 4b 65 79 20 3d 20 22 48 4b  y: rootKey = "HK
0460: 45 59 5f 4c 4f 43 41 4c 5f 4d 41 43 48 49 4e 45  EY_LOCAL_MACHINE
0470: 5c 53 6f 66 74 77 61 72 65 24 7b 77 6f 77 36 34  \Software${wow64
0480: 7d 5c 4d 69 63 72 6f 73 6f 66 74 5c 2e 4e 45 54  }\Microsoft\.NET
0490: 46 72 61 6d 65 77 6f 72 6b 5c 76 32 2e 30 2e 35  Framework\v2.0.5
04a0: 30 37 32 37 5c 41 73 73 65 6d 62 6c 79 46 6f 6c  0727\AssemblyFol
04b0: 64 65 72 73 45 78 22 2c 20 73 75 62 4b 65 79 4e  dersEx", subKeyN
04c0: 61 6d 65 20 3d 20 22 53 79 73 74 65 6d 2e 44 61  ame = "System.Da
04d0: 74 61 2e 53 51 4c 69 74 65 22 0d 0a 49 6e 73 74  ta.SQLite"..Inst
04e0: 61 6c 6c 65 72 2e 65 78 65 3a 20 23 39 3a 20 52  aller.exe: #9: R
04f0: 65 67 69 73 74 72 79 48 65 6c 70 65 72 2e 4f 70  egistryHelper.Op
0500: 65 6e 53 75 62 4b 65 79 3a 20 72 6f 6f 74 4b 65  enSubKey: rootKe
0510: 79 20 3d 20 22 48 4b 45 59 5f 4c 4f 43 41 4c 5f  y = "HKEY_LOCAL_
0520: 4d 41 43 48 49 4e 45 22 2c 20 73 75 62 4b 65 79  MACHINE", subKey
0530: 4e 61 6d 65 20 3d 20 22 53 6f 66 74 77 61 72 65  Name = "Software
0540: 24 7b 77 6f 77 36 34 7d 5c 4d 69 63 72 6f 73 6f  ${wow64}\Microso
0550: 66 74 5c 2e 4e 45 54 46 72 61 6d 65 77 6f 72 6b  ft\.NETFramework
0560: 5c 76 32 2e 30 2e 35 30 37 32 37 22 2c 20 77 72  \v2.0.50727", wr
0570: 69 74 61 62 6c 65 20 3d 20 46 61 6c 73 65 0d 0a  itable = False..
0580: 49 6e 73 74 61 6c 6c 65 72 2e 65 78 65 3a 20 23  Installer.exe: #
0590: 31 30 3a 20 52 65 67 69 73 74 72 79 48 65 6c 70  10: RegistryHelp
05a0: 65 72 2e 4f 70 65 6e 53 75 62 4b 65 79 3a 20 72  er.OpenSubKey: r
05b0: 6f 6f 74 4b 65 79 20 3d 20 22 48 4b 45 59 5f 4c  ootKey = "HKEY_L
05c0: 4f 43 41 4c 5f 4d 41 43 48 49 4e 45 22 2c 20 73  OCAL_MACHINE", s
05d0: 75 62 4b 65 79 4e 61 6d 65 20 3d 20 22 53 6f 66  ubKeyName = "Sof
05e0: 74 77 61 72 65 24 7b 77 6f 77 36 34 7d 5c 4d 69  tware${wow64}\Mi
05f0: 63 72 6f 73 6f 66 74 5c 2e 4e 45 54 46 72 61 6d  crosoft\.NETFram
0600: 65 77 6f 72 6b 22 2c 20 77 72 69 74 61 62 6c 65  ework", writable
0610: 20 3d 20 46 61 6c 73 65 0d 0a 49 6e 73 74 61 6c   = False..Instal
0620: 6c 65 72 2e 65 78 65 3a 20 23 31 31 3a 20 52 65  ler.exe: #11: Re
0630: 67 69 73 74 72 79 48 65 6c 70 65 72 2e 47 65 74  gistryHelper.Get
0640: 56 61 6c 75 65 3a 20 6b 65 79 20 3d 20 22 48 4b  Value: key = "HK
0650: 45 59 5f 4c 4f 43 41 4c 5f 4d 41 43 48 49 4e 45  EY_LOCAL_MACHINE
0660: 5c 53 6f 66 74 77 61 72 65 24 7b 77 6f 77 36 34  \Software${wow64
0670: 7d 5c 4d 69 63 72 6f 73 6f 66 74 5c 2e 4e 45 54  }\Microsoft\.NET
0680: 46 72 61 6d 65 77 6f 72 6b 22 2c 20 6e 61 6d 65  Framework", name
0690: 20 3d 20 22 49 6e 73 74 61 6c 6c 52 6f 6f 74 22   = "InstallRoot"
06a0: 2c 20 64 65 66 61 75 6c 74 56 61 6c 75 65 20 3d  , defaultValue =
06b0: 20 3c 6e 75 6c 6c 3e 0d 0a 49 6e 73 74 61 6c 6c   <null>..Install
06c0: 65 72 2e 65 78 65 3a 20 23 31 32 3a 20 52 65 67  er.exe: #12: Reg
06d0: 69 73 74 72 79 48 65 6c 70 65 72 2e 4f 70 65 6e  istryHelper.Open
06e0: 53 75 62 4b 65 79 3a 20 72 6f 6f 74 4b 65 79 20  SubKey: rootKey 
06f0: 3d 20 22 48 4b 45 59 5f 4c 4f 43 41 4c 5f 4d 41  = "HKEY_LOCAL_MA
0700: 43 48 49 4e 45 22 2c 20 73 75 62 4b 65 79 4e 61  CHINE", subKeyNa
0710: 6d 65 20 3d 20 22 53 6f 66 74 77 61 72 65 24 7b  me = "Software${
0720: 77 6f 77 36 34 7d 5c 4d 69 63 72 6f 73 6f 66 74  wow64}\Microsoft
0730: 5c 2e 4e 45 54 46 72 61 6d 65 77 6f 72 6b 22 2c  \.NETFramework",
0740: 20 77 72 69 74 61 62 6c 65 20 3d 20 46 61 6c 73   writable = Fals
0750: 65 0d 0a 49 6e 73 74 61 6c 6c 65 72 2e 65 78 65  e..Installer.exe
0760: 3a 20 23 31 33 3a 20 52 65 67 69 73 74 72 79 48  : #13: RegistryH
0770: 65 6c 70 65 72 2e 47 65 74 56 61 6c 75 65 3a 20  elper.GetValue: 
0780: 6b 65 79 20 3d 20 22 48 4b 45 59 5f 4c 4f 43 41  key = "HKEY_LOCA
0790: 4c 5f 4d 41 43 48 49 4e 45 5c 53 6f 66 74 77 61  L_MACHINE\Softwa
07a0: 72 65 24 7b 77 6f 77 36 34 7d 5c 4d 69 63 72 6f  re${wow64}\Micro
07b0: 73 6f 66 74 5c 2e 4e 45 54 46 72 61 6d 65 77 6f  soft\.NETFramewo
07c0: 72 6b 22 2c 20 6e 61 6d 65 20 3d 20 22 49 6e 73  rk", name = "Ins
07d0: 74 61 6c 6c 52 6f 6f 74 22 2c 20 64 65 66 61 75  tallRoot", defau
07e0: 6c 74 56 61 6c 75 65 20 3d 20 3c 6e 75 6c 6c 3e  ltValue = <null>
07f0: 0d 0a 49 6e 73 74 61 6c 6c 65 72 2e 65 78 65 3a  ..Installer.exe:
0800: 20 23 31 34 3a 20 49 6e 73 74 61 6c 6c 65 72 2e   #14: Installer.
0810: 52 65 6d 6f 76 65 44 62 50 72 6f 76 69 64 65 72  RemoveDbProvider
0820: 46 61 63 74 6f 72 79 3a 20 65 6c 65 6d 65 6e 74  Factory: element
0830: 20 3d 20 3c 6e 75 6c 6c 3e 0d 0a 49 6e 73 74 61   = <null>..Insta
0840: 6c 6c 65 72 2e 65 78 65 3a 20 23 31 35 3a 20 52  ller.exe: #15: R
0850: 65 67 69 73 74 72 79 48 65 6c 70 65 72 2e 4f 70  egistryHelper.Op
0860: 65 6e 53 75 62 4b 65 79 3a 20 72 6f 6f 74 4b 65  enSubKey: rootKe
0870: 79 20 3d 20 22 48 4b 45 59 5f 4c 4f 43 41 4c 5f  y = "HKEY_LOCAL_
0880: 4d 41 43 48 49 4e 45 22 2c 20 73 75 62 4b 65 79  MACHINE", subKey
0890: 4e 61 6d 65 20 3d 20 22 53 6f 66 74 77 61 72 65  Name = "Software
08a0: 24 7b 77 6f 77 36 34 7d 5c 4d 69 63 72 6f 73 6f  ${wow64}\Microso
08b0: 66 74 5c 56 69 73 75 61 6c 53 74 75 64 69 6f 5c  ft\VisualStudio\
08c0: 39 2e 30 22 2c 20 77 72 69 74 61 62 6c 65 20 3d  9.0", writable =
08d0: 20 46 61 6c 73 65 0d 0a 49 6e 73 74 61 6c 6c 65   False..Installe
08e0: 72 2e 65 78 65 3a 20 23 31 36 3a 20 52 65 67 69  r.exe: #16: Regi
08f0: 73 74 72 79 48 65 6c 70 65 72 2e 47 65 74 56 61  stryHelper.GetVa
0900: 6c 75 65 3a 20 6b 65 79 20 3d 20 22 48 4b 45 59  lue: key = "HKEY
0910: 5f 4c 4f 43 41 4c 5f 4d 41 43 48 49 4e 45 5c 53  _LOCAL_MACHINE\S
0920: 6f 66 74 77 61 72 65 24 7b 77 6f 77 36 34 7d 5c  oftware${wow64}\
0930: 4d 69 63 72 6f 73 6f 66 74 5c 56 69 73 75 61 6c  Microsoft\Visual
0940: 53 74 75 64 69 6f 5c 39 2e 30 22 2c 20 6e 61 6d  Studio\9.0", nam
0950: 65 20 3d 20 22 49 6e 73 74 61 6c 6c 44 69 72 22  e = "InstallDir"
0960: 2c 20 64 65 66 61 75 6c 74 56 61 6c 75 65 20 3d  , defaultValue =
0970: 20 3c 6e 75 6c 6c 3e 0d 0a 49 6e 73 74 61 6c 6c   <null>..Install
0980: 65 72 2e 65 78 65 3a 20 23 31 37 3a 20 52 65 67  er.exe: #17: Reg
0990: 69 73 74 72 79 48 65 6c 70 65 72 2e 4f 70 65 6e  istryHelper.Open
09a0: 53 75 62 4b 65 79 3a 20 72 6f 6f 74 4b 65 79 20  SubKey: rootKey 
09b0: 3d 20 22 48 4b 45 59 5f 4c 4f 43 41 4c 5f 4d 41  = "HKEY_LOCAL_MA
09c0: 43 48 49 4e 45 22 2c 20 73 75 62 4b 65 79 4e 61  CHINE", subKeyNa
09d0: 6d 65 20 3d 20 22 53 6f 66 74 77 61 72 65 24 7b  me = "Software${
09e0: 77 6f 77 36 34 7d 5c 4d 69 63 72 6f 73 6f 66 74  wow64}\Microsoft
09f0: 5c 56 69 73 75 61 6c 53 74 75 64 69 6f 5c 39 2e  \VisualStudio\9.
0a00: 30 22 2c 20 77 72 69 74 61 62 6c 65 20 3d 20 46  0", writable = F
0a10: 61 6c 73 65 0d 0a 49 6e 73 74 61 6c 6c 65 72 2e  alse..Installer.
0a20: 65 78 65 3a 20 23 31 38 3a 20 52 65 67 69 73 74  exe: #18: Regist
0a30: 72 79 48 65 6c 70 65 72 2e 4f 70 65 6e 53 75 62  ryHelper.OpenSub
0a40: 4b 65 79 3a 20 72 6f 6f 74 4b 65 79 20 3d 20 22  Key: rootKey = "
0a50: 48 4b 45 59 5f 4c 4f 43 41 4c 5f 4d 41 43 48 49  HKEY_LOCAL_MACHI
0a60: 4e 45 5c 53 6f 66 74 77 61 72 65 24 7b 77 6f 77  NE\Software${wow
0a70: 36 34 7d 5c 4d 69 63 72 6f 73 6f 66 74 5c 56 69  64}\Microsoft\Vi
0a80: 73 75 61 6c 53 74 75 64 69 6f 5c 39 2e 30 22 2c  sualStudio\9.0",
0a90: 20 73 75 62 4b 65 79 4e 61 6d 65 20 3d 20 22 50   subKeyName = "P
0aa0: 61 63 6b 61 67 65 73 22 2c 20 77 72 69 74 61 62  ackages", writab
0ab0: 6c 65 20 3d 20 54 72 75 65 0d 0a 49 6e 73 74 61  le = True..Insta
0ac0: 6c 6c 65 72 2e 65 78 65 3a 20 23 31 39 3a 20 52  ller.exe: #19: R
0ad0: 65 67 69 73 74 72 79 48 65 6c 70 65 72 2e 44 65  egistryHelper.De
0ae0: 6c 65 74 65 53 75 62 4b 65 79 54 72 65 65 3a 20  leteSubKeyTree: 
0af0: 72 6f 6f 74 4b 65 79 20 3d 20 22 48 4b 45 59 5f  rootKey = "HKEY_
0b00: 4c 4f 43 41 4c 5f 4d 41 43 48 49 4e 45 5c 53 6f  LOCAL_MACHINE\So
0b10: 66 74 77 61 72 65 24 7b 77 6f 77 36 34 7d 5c 4d  ftware${wow64}\M
0b20: 69 63 72 6f 73 6f 66 74 5c 56 69 73 75 61 6c 53  icrosoft\VisualS
0b30: 74 75 64 69 6f 5c 39 2e 30 5c 50 61 63 6b 61 67  tudio\9.0\Packag
0b40: 65 73 22 2c 20 73 75 62 4b 65 79 4e 61 6d 65 20  es", subKeyName 
0b50: 3d 20 22 7b 64 63 62 65 36 63 38 64 2d 30 65 35  = "{dcbe6c8d-0e5
0b60: 37 2d 34 30 39 39 2d 61 31 38 33 2d 39 38 66 66  7-4099-a183-98ff
0b70: 37 34 63 36 34 64 39 63 7d 22 0d 0a 49 6e 73 74  74c64d9c}"..Inst
0b80: 61 6c 6c 65 72 2e 65 78 65 3a 20 23 32 30 3a 20  aller.exe: #20: 
0b90: 52 65 67 69 73 74 72 79 48 65 6c 70 65 72 2e 4f  RegistryHelper.O
0ba0: 70 65 6e 53 75 62 4b 65 79 3a 20 72 6f 6f 74 4b  penSubKey: rootK
0bb0: 65 79 20 3d 20 22 48 4b 45 59 5f 4c 4f 43 41 4c  ey = "HKEY_LOCAL
0bc0: 5f 4d 41 43 48 49 4e 45 5c 53 6f 66 74 77 61 72  _MACHINE\Softwar
0bd0: 65 24 7b 77 6f 77 36 34 7d 5c 4d 69 63 72 6f 73  e${wow64}\Micros
0be0: 6f 66 74 5c 56 69 73 75 61 6c 53 74 75 64 69 6f  oft\VisualStudio
0bf0: 5c 39 2e 30 22 2c 20 73 75 62 4b 65 79 4e 61 6d  \9.0", subKeyNam
0c00: 65 20 3d 20 22 4d 65 6e 75 73 22 2c 20 77 72 69  e = "Menus", wri
0c10: 74 61 62 6c 65 20 3d 20 54 72 75 65 0d 0a 49 6e  table = True..In
0c20: 73 74 61 6c 6c 65 72 2e 65 78 65 3a 20 23 32 31  staller.exe: #21
0c30: 3a 20 52 65 67 69 73 74 72 79 48 65 6c 70 65 72  : RegistryHelper
0c40: 2e 44 65 6c 65 74 65 56 61 6c 75 65 3a 20 6b 65  .DeleteValue: ke
0c50: 79 20 3d 20 22 48 4b 45 59 5f 4c 4f 43 41 4c 5f  y = "HKEY_LOCAL_
0c60: 4d 41 43 48 49 4e 45 5c 53 6f 66 74 77 61 72 65  MACHINE\Software
0c70: 24 7b 77 6f 77 36 34 7d 5c 4d 69 63 72 6f 73 6f  ${wow64}\Microso
0c80: 66 74 5c 56 69 73 75 61 6c 53 74 75 64 69 6f 5c  ft\VisualStudio\
0c90: 39 2e 30 5c 4d 65 6e 75 73 22 2c 20 6e 61 6d 65  9.0\Menus", name
0ca0: 20 3d 20 22 7b 64 63 62 65 36 63 38 64 2d 30 65   = "{dcbe6c8d-0e
0cb0: 35 37 2d 34 30 39 39 2d 61 31 38 33 2d 39 38 66  57-4099-a183-98f
0cc0: 66 37 34 63 36 34 64 39 63 7d 22 0d 0a 49 6e 73  f74c64d9c}"..Ins
0cd0: 74 61 6c 6c 65 72 2e 65 78 65 3a 20 23 32 32 3a  taller.exe: #22:
0ce0: 20 52 65 67 69 73 74 72 79 48 65 6c 70 65 72 2e   RegistryHelper.
0cf0: 4f 70 65 6e 53 75 62 4b 65 79 3a 20 72 6f 6f 74  OpenSubKey: root
0d00: 4b 65 79 20 3d 20 22 48 4b 45 59 5f 4c 4f 43 41  Key = "HKEY_LOCA
0d10: 4c 5f 4d 41 43 48 49 4e 45 5c 53 6f 66 74 77 61  L_MACHINE\Softwa
0d20: 72 65 24 7b 77 6f 77 36 34 7d 5c 4d 69 63 72 6f  re${wow64}\Micro
0d30: 73 6f 66 74 5c 56 69 73 75 61 6c 53 74 75 64 69  soft\VisualStudi
0d40: 6f 5c 39 2e 30 22 2c 20 73 75 62 4b 65 79 4e 61  o\9.0", subKeyNa
0d50: 6d 65 20 3d 20 22 53 65 72 76 69 63 65 73 22 2c  me = "Services",
0d60: 20 77 72 69 74 61 62 6c 65 20 3d 20 54 72 75 65   writable = True
0d70: 0d 0a 49 6e 73 74 61 6c 6c 65 72 2e 65 78 65 3a  ..Installer.exe:
0d80: 20 23 32 33 3a 20 52 65 67 69 73 74 72 79 48 65   #23: RegistryHe
0d90: 6c 70 65 72 2e 44 65 6c 65 74 65 53 75 62 4b 65  lper.DeleteSubKe
0da0: 79 54 72 65 65 3a 20 72 6f 6f 74 4b 65 79 20 3d  yTree: rootKey =
0db0: 20 22 48 4b 45 59 5f 4c 4f 43 41 4c 5f 4d 41 43   "HKEY_LOCAL_MAC
0dc0: 48 49 4e 45 5c 53 6f 66 74 77 61 72 65 24 7b 77  HINE\Software${w
0dd0: 6f 77 36 34 7d 5c 4d 69 63 72 6f 73 6f 66 74 5c  ow64}\Microsoft\
0de0: 56 69 73 75 61 6c 53 74 75 64 69 6f 5c 39 2e 30  VisualStudio\9.0
0df0: 5c 53 65 72 76 69 63 65 73 22 2c 20 73 75 62 4b  \Services", subK
0e00: 65 79 4e 61 6d 65 20 3d 20 22 7b 64 63 62 65 36  eyName = "{dcbe6
0e10: 63 38 64 2d 30 65 35 37 2d 34 30 39 39 2d 61 31  c8d-0e57-4099-a1
0e20: 38 33 2d 39 38 66 66 37 34 63 36 34 64 39 64 7d  83-98ff74c64d9d}
0e30: 22 0d 0a 49 6e 73 74 61 6c 6c 65 72 2e 65 78 65  "..Installer.exe
0e40: 3a 20 23 32 34 3a 20 52 65 67 69 73 74 72 79 48  : #24: RegistryH
0e50: 65 6c 70 65 72 2e 4f 70 65 6e 53 75 62 4b 65 79  elper.OpenSubKey
0e60: 3a 20 72 6f 6f 74 4b 65 79 20 3d 20 22 48 4b 45  : rootKey = "HKE
0e70: 59 5f 4c 4f 43 41 4c 5f 4d 41 43 48 49 4e 45 22  Y_LOCAL_MACHINE"
0e80: 2c 20 73 75 62 4b 65 79 4e 61 6d 65 20 3d 20 22  , subKeyName = "
0e90: 53 6f 66 74 77 61 72 65 24 7b 77 6f 77 36 34 7d  Software${wow64}
0ea0: 5c 4d 69 63 72 6f 73 6f 66 74 5c 56 69 73 75 61  \Microsoft\Visua
0eb0: 6c 53 74 75 64 69 6f 5c 39 2e 30 22 2c 20 77 72  lStudio\9.0", wr
0ec0: 69 74 61 62 6c 65 20 3d 20 46 61 6c 73 65 0d 0a  itable = False..
0ed0: 49 6e 73 74 61 6c 6c 65 72 2e 65 78 65 3a 20 23  Installer.exe: #
0ee0: 32 35 3a 20 52 65 67 69 73 74 72 79 48 65 6c 70  25: RegistryHelp
0ef0: 65 72 2e 47 65 74 56 61 6c 75 65 3a 20 6b 65 79  er.GetValue: key
0f00: 20 3d 20 22 48 4b 45 59 5f 4c 4f 43 41 4c 5f 4d   = "HKEY_LOCAL_M
0f10: 41 43 48 49 4e 45 5c 53 6f 66 74 77 61 72 65 24  ACHINE\Software$
0f20: 7b 77 6f 77 36 34 7d 5c 4d 69 63 72 6f 73 6f 66  {wow64}\Microsof
0f30: 74 5c 56 69 73 75 61 6c 53 74 75 64 69 6f 5c 39  t\VisualStudio\9
0f40: 2e 30 22 2c 20 6e 61 6d 65 20 3d 20 22 49 6e 73  .0", name = "Ins
0f50: 74 61 6c 6c 44 69 72 22 2c 20 64 65 66 61 75 6c  tallDir", defaul
0f60: 74 56 61 6c 75 65 20 3d 20 3c 6e 75 6c 6c 3e 0d  tValue = <null>.
0f70: 0a 49 6e 73 74 61 6c 6c 65 72 2e 65 78 65 3a 20  .Installer.exe: 
0f80: 23 32 36 3a 20 52 65 67 69 73 74 72 79 48 65 6c  #26: RegistryHel
0f90: 70 65 72 2e 4f 70 65 6e 53 75 62 4b 65 79 3a 20  per.OpenSubKey: 
0fa0: 72 6f 6f 74 4b 65 79 20 3d 20 22 48 4b 45 59 5f  rootKey = "HKEY_
0fb0: 4c 4f 43 41 4c 5f 4d 41 43 48 49 4e 45 22 2c 20  LOCAL_MACHINE", 
0fc0: 73 75 62 4b 65 79 4e 61 6d 65 20 3d 20 22 53 6f  subKeyName = "So
0fd0: 66 74 77 61 72 65 24 7b 77 6f 77 36 34 7d 5c 4d  ftware${wow64}\M
0fe0: 69 63 72 6f 73 6f 66 74 5c 56 69 73 75 61 6c 53  icrosoft\VisualS
0ff0: 74 75 64 69 6f 5c 39 2e 30 22 2c 20 77 72 69 74  tudio\9.0", writ
1000: 61 62 6c 65 20 3d 20 46 61 6c 73 65 0d 0a 49 6e  able = False..In
1010: 73 74 61 6c 6c 65 72 2e 65 78 65 3a 20 23 32 37  staller.exe: #27
1020: 3a 20 52 65 67 69 73 74 72 79 48 65 6c 70 65 72  : RegistryHelper
1030: 2e 4f 70 65 6e 53 75 62 4b 65 79 3a 20 72 6f 6f  .OpenSubKey: roo
1040: 74 4b 65 79 20 3d 20 22 48 4b 45 59 5f 4c 4f 43  tKey = "HKEY_LOC
1050: 41 4c 5f 4d 41 43 48 49 4e 45 5c 53 6f 66 74 77  AL_MACHINE\Softw
1060: 61 72 65 24 7b 77 6f 77 36 34 7d 5c 4d 69 63 72  are${wow64}\Micr
1070: 6f 73 6f 66 74 5c 56 69 73 75 61 6c 53 74 75 64  osoft\VisualStud
1080: 69 6f 5c 39 2e 30 22 2c 20 73 75 62 4b 65 79 4e  io\9.0", subKeyN
1090: 61 6d 65 20 3d 20 22 44 61 74 61 53 6f 75 72 63  ame = "DataSourc
10a0: 65 73 22 2c 20 77 72 69 74 61 62 6c 65 20 3d 20  es", writable = 
10b0: 54 72 75 65 0d 0a 49 6e 73 74 61 6c 6c 65 72 2e  True..Installer.
10c0: 65 78 65 3a 20 23 32 38 3a 20 52 65 67 69 73 74  exe: #28: Regist
10d0: 72 79 48 65 6c 70 65 72 2e 44 65 6c 65 74 65 53  ryHelper.DeleteS
10e0: 75 62 4b 65 79 54 72 65 65 3a 20 72 6f 6f 74 4b  ubKeyTree: rootK
10f0: 65 79 20 3d 20 22 48 4b 45 59 5f 4c 4f 43 41 4c  ey = "HKEY_LOCAL
1100: 5f 4d 41 43 48 49 4e 45 5c 53 6f 66 74 77 61 72  _MACHINE\Softwar
1110: 65 24 7b 77 6f 77 36 34 7d 5c 4d 69 63 72 6f 73  e${wow64}\Micros
1120: 6f 66 74 5c 56 69 73 75 61 6c 53 74 75 64 69 6f  oft\VisualStudio
1130: 5c 39 2e 30 5c 44 61 74 61 53 6f 75 72 63 65 73  \9.0\DataSources
1140: 22 2c 20 73 75 62 4b 65 79 4e 61 6d 65 20 3d 20  ", subKeyName = 
1150: 22 7b 30 65 62 61 61 62 36 65 2d 63 61 38 30 2d  "{0ebaab6e-ca80-
1160: 34 62 34 61 2d 38 64 64 66 2d 63 62 65 36 62 66  4b4a-8ddf-cbe6bf
1170: 30 35 38 63 37 31 7d 22 0d 0a 49 6e 73 74 61 6c  058c71}"..Instal
1180: 6c 65 72 2e 65 78 65 3a 20 23 32 39 3a 20 52 65  ler.exe: #29: Re
1190: 67 69 73 74 72 79 48 65 6c 70 65 72 2e 4f 70 65  gistryHelper.Ope
11a0: 6e 53 75 62 4b 65 79 3a 20 72 6f 6f 74 4b 65 79  nSubKey: rootKey
11b0: 20 3d 20 22 48 4b 45 59 5f 4c 4f 43 41 4c 5f 4d   = "HKEY_LOCAL_M
11c0: 41 43 48 49 4e 45 22 2c 20 73 75 62 4b 65 79 4e  ACHINE", subKeyN
11d0: 61 6d 65 20 3d 20 22 53 6f 66 74 77 61 72 65 24  ame = "Software$
11e0: 7b 77 6f 77 36 34 7d 5c 4d 69 63 72 6f 73 6f 66  {wow64}\Microsof
11f0: 74 5c 56 69 73 75 61 6c 53 74 75 64 69 6f 5c 39  t\VisualStudio\9
1200: 2e 30 22 2c 20 77 72 69 74 61 62 6c 65 20 3d 20  .0", writable = 
1210: 46 61 6c 73 65 0d 0a 49 6e 73 74 61 6c 6c 65 72  False..Installer
1220: 2e 65 78 65 3a 20 23 33 30 3a 20 52 65 67 69 73  .exe: #30: Regis
1230: 74 72 79 48 65 6c 70 65 72 2e 47 65 74 56 61 6c  tryHelper.GetVal
1240: 75 65 3a 20 6b 65 79 20 3d 20 22 48 4b 45 59 5f  ue: key = "HKEY_
1250: 4c 4f 43 41 4c 5f 4d 41 43 48 49 4e 45 5c 53 6f  LOCAL_MACHINE\So
1260: 66 74 77 61 72 65 24 7b 77 6f 77 36 34 7d 5c 4d  ftware${wow64}\M
1270: 69 63 72 6f 73 6f 66 74 5c 56 69 73 75 61 6c 53  icrosoft\VisualS
1280: 74 75 64 69 6f 5c 39 2e 30 22 2c 20 6e 61 6d 65  tudio\9.0", name
1290: 20 3d 20 22 49 6e 73 74 61 6c 6c 44 69 72 22 2c   = "InstallDir",
12a0: 20 64 65 66 61 75 6c 74 56 61 6c 75 65 20 3d 20   defaultValue = 
12b0: 3c 6e 75 6c 6c 3e 0d 0a 49 6e 73 74 61 6c 6c 65  <null>..Installe
12c0: 72 2e 65 78 65 3a 20 23 33 31 3a 20 52 65 67 69  r.exe: #31: Regi
12d0: 73 74 72 79 48 65 6c 70 65 72 2e 4f 70 65 6e 53  stryHelper.OpenS
12e0: 75 62 4b 65 79 3a 20 72 6f 6f 74 4b 65 79 20 3d  ubKey: rootKey =
12f0: 20 22 48 4b 45 59 5f 4c 4f 43 41 4c 5f 4d 41 43   "HKEY_LOCAL_MAC
1300: 48 49 4e 45 22 2c 20 73 75 62 4b 65 79 4e 61 6d  HINE", subKeyNam
1310: 65 20 3d 20 22 53 6f 66 74 77 61 72 65 24 7b 77  e = "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 39 2e 30  VisualStudio\9.0
1340: 22 2c 20 77 72 69 74 61 62 6c 65 20 3d 20 46 61  ", writable = Fa
1350: 6c 73 65 0d 0a 49 6e 73 74 61 6c 6c 65 72 2e 65  lse..Installer.e
1360: 78 65 3a 20 23 33 32 3a 20 52 65 67 69 73 74 72  xe: #32: Registr
1370: 79 48 65 6c 70 65 72 2e 4f 70 65 6e 53 75 62 4b  yHelper.OpenSubK
1380: 65 79 3a 20 72 6f 6f 74 4b 65 79 20 3d 20 22 48  ey: rootKey = "H
1390: 4b 45 59 5f 4c 4f 43 41 4c 5f 4d 41 43 48 49 4e  KEY_LOCAL_MACHIN
13a0: 45 5c 53 6f 66 74 77 61 72 65 24 7b 77 6f 77 36  E\Software${wow6
13b0: 34 7d 5c 4d 69 63 72 6f 73 6f 66 74 5c 56 69 73  4}\Microsoft\Vis
13c0: 75 61 6c 53 74 75 64 69 6f 5c 39 2e 30 22 2c 20  ualStudio\9.0", 
13d0: 73 75 62 4b 65 79 4e 61 6d 65 20 3d 20 22 44 61  subKeyName = "Da
13e0: 74 61 50 72 6f 76 69 64 65 72 73 22 2c 20 77 72  taProviders", wr
13f0: 69 74 61 62 6c 65 20 3d 20 54 72 75 65 0d 0a 49  itable = True..I
1400: 6e 73 74 61 6c 6c 65 72 2e 65 78 65 3a 20 23 33  nstaller.exe: #3
1410: 33 3a 20 52 65 67 69 73 74 72 79 48 65 6c 70 65  3: RegistryHelpe
1420: 72 2e 44 65 6c 65 74 65 53 75 62 4b 65 79 54 72  r.DeleteSubKeyTr
1430: 65 65 3a 20 72 6f 6f 74 4b 65 79 20 3d 20 22 48  ee: rootKey = "H
1440: 4b 45 59 5f 4c 4f 43 41 4c 5f 4d 41 43 48 49 4e  KEY_LOCAL_MACHIN
1450: 45 5c 53 6f 66 74 77 61 72 65 24 7b 77 6f 77 36  E\Software${wow6
1460: 34 7d 5c 4d 69 63 72 6f 73 6f 66 74 5c 56 69 73  4}\Microsoft\Vis
1470: 75 61 6c 53 74 75 64 69 6f 5c 39 2e 30 5c 44 61  ualStudio\9.0\Da
1480: 74 61 50 72 6f 76 69 64 65 72 73 22 2c 20 73 75  taProviders", su
1490: 62 4b 65 79 4e 61 6d 65 20 3d 20 22 7b 30 65 62  bKeyName = "{0eb
14a0: 61 61 62 36 65 2d 63 61 38 30 2d 34 62 34 61 2d  aab6e-ca80-4b4a-
14b0: 38 64 64 66 2d 63 62 65 36 62 66 30 35 38 63 37  8ddf-cbe6bf058c7
14c0: 30 7d 22 0d 0a 49 6e 73 74 61 6c 6c 65 72 2e 65  0}"..Installer.e
14d0: 78 65 3a 20 23 33 34 3a 20 49 6e 73 74 61 6c 6c  xe: #34: Install
14e0: 65 72 2e 4d 61 69 6e 3a 20 73 75 62 4b 65 79 73  er.Main: subKeys
14f0: 43 72 65 61 74 65 64 20 3d 20 30 2c 20 73 75 62  Created = 0, sub
1500: 4b 65 79 73 44 65 6c 65 74 65 64 20 3d 20 35 2c  KeysDeleted = 5,
1510: 20 6b 65 79 56 61 6c 75 65 73 53 65 74 20 3d 20   keyValuesSet = 
1520: 30 2c 20 6b 65 79 56 61 6c 75 65 73 44 65 6c 65  0, keyValuesDele
1530: 74 65 64 20 3d 20 31 0d 0a 49 6e 73 74 61 6c 6c  ted = 1..Install
1540: 65 72 2e 65 78 65 3a 20 23 33 35 3a 20 49 6e 73  er.exe: #35: Ins
1550: 74 61 6c 6c 65 72 2e 4d 61 69 6e 3a 20 53 75 63  taller.Main: Suc
1560: 63 65 73 73 2e 0d 0a                             cess...