System.Data.SQLite
Hex Artifact Content
Not logged in

Artifact 667ca2234ee2c395e6f7291769d0c24832da6b98:


0000: 3c 21 2d 2d 0d 0a 20 2a 0d 0a 20 2a 20 53 51 4c  <!--.. *.. * SQL
0010: 69 74 65 2e 4e 45 54 2e 53 65 74 74 69 6e 67 73  ite.NET.Settings
0020: 2e 74 61 72 67 65 74 73 20 2d 0d 0a 20 2a 0d 0a  .targets -.. *..
0030: 20 2a 20 57 72 69 74 74 65 6e 20 62 79 20 4a 6f   * Written by Jo
0040: 65 20 4d 69 73 74 61 63 68 6b 69 6e 2e 0d 0a 20  e Mistachkin... 
0050: 2a 20 52 65 6c 65 61 73 65 64 20 74 6f 20 74 68  * Released to th
0060: 65 20 70 75 62 6c 69 63 20 64 6f 6d 61 69 6e 2c  e public domain,
0070: 20 75 73 65 20 61 74 20 79 6f 75 72 20 6f 77 6e   use at your own
0080: 20 72 69 73 6b 21 0d 0a 20 2a 0d 0a 2d 2d 3e 0d   risk!.. *..-->.
0090: 0a 3c 50 72 6f 6a 65 63 74 20 78 6d 6c 6e 73 3d  .<Project xmlns=
00a0: 22 68 74 74 70 3a 2f 2f 73 63 68 65 6d 61 73 2e  "http://schemas.
00b0: 6d 69 63 72 6f 73 6f 66 74 2e 63 6f 6d 2f 64 65  microsoft.com/de
00c0: 76 65 6c 6f 70 65 72 2f 6d 73 62 75 69 6c 64 2f  veloper/msbuild/
00d0: 32 30 30 33 22 3e 0d 0a 20 20 3c 21 2d 2d 0d 0a  2003">..  <!--..
00e0: 20 20 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a    **************
00f0: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a  ****************
0100: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a  ****************
0110: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a  ****************
0120: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a  ****************
0130: 0d 0a 20 20 2a 2a 20 20 20 20 20 20 20 20 20 20  ..  **          
0140: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
0150: 4c 6f 61 64 20 50 65 72 2d 55 73 65 72 20 53 65  Load Per-User Se
0160: 74 74 69 6e 67 73 20 20 20 20 20 20 20 20 20 20  ttings          
0170: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
0180: 2a 2a 0d 0a 20 20 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a  **..  **********
0190: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a  ****************
01a0: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a  ****************
01b0: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a  ****************
01c0: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a  ****************
01d0: 2a 2a 2a 2a 0d 0a 20 20 2d 2d 3e 0d 0a 0d 0a 20  ****..  -->.... 
01e0: 20 3c 21 2d 2d 0d 0a 20 20 20 20 20 20 4e 4f 54   <!--..      NOT
01f0: 45 3a 20 49 66 20 74 68 65 20 70 65 72 2d 75 73  E: If the per-us
0200: 65 72 20 73 65 74 74 69 6e 67 73 20 66 69 6c 65  er settings file
0210: 20 65 78 69 73 74 73 2c 20 69 6d 70 6f 72 74 20   exists, import 
0220: 69 74 20 6e 6f 77 2e 20 20 54 68 65 20 63 6f 6e  it now.  The con
0230: 74 61 69 6e 65 64 0d 0a 20 20 20 20 20 20 20 20  tained..        
0240: 20 20 20 20 73 65 74 74 69 6e 67 73 2c 20 69 66      settings, if
0250: 20 61 6e 79 2c 20 77 69 6c 6c 20 6f 76 65 72 72   any, will overr
0260: 69 64 65 20 74 68 65 20 64 65 66 61 75 6c 74 20  ide the default 
0270: 6f 6e 65 73 20 70 72 6f 76 69 64 65 64 20 62 65  ones provided be
0280: 6c 6f 77 2e 0d 0a 20 20 2d 2d 3e 0d 0a 20 20 3c  low...  -->..  <
0290: 49 6d 70 6f 72 74 20 50 72 6f 6a 65 63 74 3d 22  Import Project="
02a0: 24 28 53 51 4c 69 74 65 4e 65 74 44 69 72 29 5c  $(SQLiteNetDir)\
02b0: 54 61 72 67 65 74 73 5c 53 51 4c 69 74 65 2e 4e  Targets\SQLite.N
02c0: 45 54 2e 53 65 74 74 69 6e 67 73 2e 74 61 72 67  ET.Settings.targ
02d0: 65 74 73 2e 75 73 65 72 22 0d 0a 20 20 20 20 20  ets.user"..     
02e0: 20 20 20 20 20 43 6f 6e 64 69 74 69 6f 6e 3d 22       Condition="
02f0: 45 78 69 73 74 73 28 27 24 28 53 51 4c 69 74 65  Exists('$(SQLite
0300: 4e 65 74 44 69 72 29 5c 54 61 72 67 65 74 73 5c  NetDir)\Targets\
0310: 53 51 4c 69 74 65 2e 4e 45 54 2e 53 65 74 74 69  SQLite.NET.Setti
0320: 6e 67 73 2e 74 61 72 67 65 74 73 2e 75 73 65 72  ngs.targets.user
0330: 27 29 22 20 2f 3e 0d 0a 0d 0a 20 20 3c 21 2d 2d  ')" />....  <!--
0340: 0d 0a 20 20 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a  ..  ************
0350: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a  ****************
0360: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a  ****************
0370: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a  ****************
0380: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a  ****************
0390: 2a 2a 0d 0a 20 20 2a 2a 20 20 20 20 20 20 20 20  **..  **        
03a0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
03b0: 4c 6f 61 64 20 50 65 72 2d 46 72 61 6d 65 77 6f  Load Per-Framewo
03c0: 72 6b 20 53 65 74 74 69 6e 67 73 20 20 20 20 20  rk Settings     
03d0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
03e0: 20 20 2a 2a 0d 0a 20 20 2a 2a 2a 2a 2a 2a 2a 2a    **..  ********
03f0: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a  ****************
0400: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a  ****************
0410: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a  ****************
0420: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a  ****************
0430: 2a 2a 2a 2a 2a 2a 0d 0a 20 20 2d 2d 3e 0d 0a 0d  ******..  -->...
0440: 0a 20 20 3c 21 2d 2d 0d 0a 20 20 20 20 20 20 4e  .  <!--..      N
0450: 4f 54 45 3a 20 49 66 20 74 68 65 20 70 65 72 2d  OTE: If the per-
0460: 66 72 61 6d 65 77 6f 72 6b 20 73 65 74 74 69 6e  framework settin
0470: 67 73 20 66 69 6c 65 73 20 65 78 69 73 74 2c 20  gs files exist, 
0480: 69 6d 70 6f 72 74 20 74 68 65 6d 20 6e 6f 77 2e  import them now.
0490: 20 20 54 68 65 0d 0a 20 20 20 20 20 20 20 20 20    The..         
04a0: 20 20 20 63 6f 6e 74 61 69 6e 65 64 20 73 65 74     contained set
04b0: 74 69 6e 67 73 2c 20 69 66 20 61 6e 79 2c 20 77  tings, if any, w
04c0: 69 6c 6c 20 6f 76 65 72 72 69 64 65 20 74 68 65  ill override the
04d0: 20 64 65 66 61 75 6c 74 20 6f 6e 65 73 20 70 72   default ones pr
04e0: 6f 76 69 64 65 64 0d 0a 20 20 20 20 20 20 20 20  ovided..        
04f0: 20 20 20 20 62 65 6c 6f 77 2e 0d 0a 20 20 2d 2d      below...  --
0500: 3e 0d 0a 20 20 3c 49 6d 70 6f 72 74 20 50 72 6f  >..  <Import Pro
0510: 6a 65 63 74 3d 22 24 28 53 51 4c 69 74 65 4e 65  ject="$(SQLiteNe
0520: 74 44 69 72 29 5c 54 61 72 67 65 74 73 5c 53 51  tDir)\Targets\SQ
0530: 4c 69 74 65 2e 4e 45 54 2e 53 65 74 74 69 6e 67  Lite.NET.Setting
0540: 73 2e 74 61 72 67 65 74 73 2e 6e 65 74 46 78 32  s.targets.netFx2
0550: 30 22 0d 0a 20 20 20 20 20 20 20 20 20 20 43 6f  0"..          Co
0560: 6e 64 69 74 69 6f 6e 3d 22 27 24 28 4e 65 74 46  ndition="'$(NetF
0570: 78 32 30 29 27 20 21 3d 20 27 27 20 41 6e 64 20  x20)' != '' And 
0580: 27 24 28 4e 65 74 46 78 32 30 29 27 20 21 3d 20  '$(NetFx20)' != 
0590: 27 66 61 6c 73 65 27 20 41 6e 64 0d 0a 20 20 20  'false' And..   
05a0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
05b0: 20 20 28 27 24 28 4e 65 74 46 78 32 30 53 65 74    ('$(NetFx20Set
05c0: 74 69 6e 67 73 29 27 20 3d 3d 20 27 27 20 4f 72  tings)' == '' Or
05d0: 20 27 24 28 4e 65 74 46 78 32 30 53 65 74 74 69   '$(NetFx20Setti
05e0: 6e 67 73 29 27 20 21 3d 20 27 66 61 6c 73 65 27  ngs)' != 'false'
05f0: 29 20 41 6e 64 0d 0a 20 20 20 20 20 20 20 20 20  ) And..         
0600: 20 20 20 20 20 20 20 20 20 20 20 20 45 78 69 73              Exis
0610: 74 73 28 27 24 28 53 51 4c 69 74 65 4e 65 74 44  ts('$(SQLiteNetD
0620: 69 72 29 5c 54 61 72 67 65 74 73 5c 53 51 4c 69  ir)\Targets\SQLi
0630: 74 65 2e 4e 45 54 2e 53 65 74 74 69 6e 67 73 2e  te.NET.Settings.
0640: 74 61 72 67 65 74 73 2e 6e 65 74 46 78 32 30 27  targets.netFx20'
0650: 29 22 20 2f 3e 0d 0a 0d 0a 20 20 3c 49 6d 70 6f  )" />....  <Impo
0660: 72 74 20 50 72 6f 6a 65 63 74 3d 22 24 28 53 51  rt Project="$(SQ
0670: 4c 69 74 65 4e 65 74 44 69 72 29 5c 54 61 72 67  LiteNetDir)\Targ
0680: 65 74 73 5c 53 51 4c 69 74 65 2e 4e 45 54 2e 53  ets\SQLite.NET.S
0690: 65 74 74 69 6e 67 73 2e 74 61 72 67 65 74 73 2e  ettings.targets.
06a0: 6e 65 74 46 78 33 35 22 0d 0a 20 20 20 20 20 20  netFx35"..      
06b0: 20 20 20 20 43 6f 6e 64 69 74 69 6f 6e 3d 22 27      Condition="'
06c0: 24 28 4e 65 74 46 78 33 35 29 27 20 21 3d 20 27  $(NetFx35)' != '
06d0: 27 20 41 6e 64 20 27 24 28 4e 65 74 46 78 33 35  ' And '$(NetFx35
06e0: 29 27 20 21 3d 20 27 66 61 6c 73 65 27 20 41 6e  )' != 'false' An
06f0: 64 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20  d..             
0700: 20 20 20 20 20 20 20 20 28 27 24 28 4e 65 74 46          ('$(NetF
0710: 78 33 35 53 65 74 74 69 6e 67 73 29 27 20 3d 3d  x35Settings)' ==
0720: 20 27 27 20 4f 72 20 27 24 28 4e 65 74 46 78 33   '' Or '$(NetFx3
0730: 35 53 65 74 74 69 6e 67 73 29 27 20 21 3d 20 27  5Settings)' != '
0740: 66 61 6c 73 65 27 29 20 41 6e 64 0d 0a 20 20 20  false') And..   
0750: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
0760: 20 20 45 78 69 73 74 73 28 27 24 28 53 51 4c 69    Exists('$(SQLi
0770: 74 65 4e 65 74 44 69 72 29 5c 54 61 72 67 65 74  teNetDir)\Target
0780: 73 5c 53 51 4c 69 74 65 2e 4e 45 54 2e 53 65 74  s\SQLite.NET.Set
0790: 74 69 6e 67 73 2e 74 61 72 67 65 74 73 2e 6e 65  tings.targets.ne
07a0: 74 46 78 33 35 27 29 22 20 2f 3e 0d 0a 0d 0a 20  tFx35')" />.... 
07b0: 20 3c 49 6d 70 6f 72 74 20 50 72 6f 6a 65 63 74   <Import Project
07c0: 3d 22 24 28 53 51 4c 69 74 65 4e 65 74 44 69 72  ="$(SQLiteNetDir
07d0: 29 5c 54 61 72 67 65 74 73 5c 53 51 4c 69 74 65  )\Targets\SQLite
07e0: 2e 4e 45 54 2e 53 65 74 74 69 6e 67 73 2e 74 61  .NET.Settings.ta
07f0: 72 67 65 74 73 2e 6e 65 74 46 78 34 30 22 0d 0a  rgets.netFx40"..
0800: 20 20 20 20 20 20 20 20 20 20 43 6f 6e 64 69 74            Condit
0810: 69 6f 6e 3d 22 27 24 28 4e 65 74 46 78 34 30 29  ion="'$(NetFx40)
0820: 27 20 21 3d 20 27 27 20 41 6e 64 20 27 24 28 4e  ' != '' And '$(N
0830: 65 74 46 78 34 30 29 27 20 21 3d 20 27 66 61 6c  etFx40)' != 'fal
0840: 73 65 27 20 41 6e 64 0d 0a 20 20 20 20 20 20 20  se' And..       
0850: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 27                ('
0860: 24 28 4e 65 74 46 78 34 30 53 65 74 74 69 6e 67  $(NetFx40Setting
0870: 73 29 27 20 3d 3d 20 27 27 20 4f 72 20 27 24 28  s)' == '' Or '$(
0880: 4e 65 74 46 78 34 30 53 65 74 74 69 6e 67 73 29  NetFx40Settings)
0890: 27 20 21 3d 20 27 66 61 6c 73 65 27 29 20 41 6e  ' != 'false') An
08a0: 64 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20  d..             
08b0: 20 20 20 20 20 20 20 20 45 78 69 73 74 73 28 27          Exists('
08c0: 24 28 53 51 4c 69 74 65 4e 65 74 44 69 72 29 5c  $(SQLiteNetDir)\
08d0: 54 61 72 67 65 74 73 5c 53 51 4c 69 74 65 2e 4e  Targets\SQLite.N
08e0: 45 54 2e 53 65 74 74 69 6e 67 73 2e 74 61 72 67  ET.Settings.targ
08f0: 65 74 73 2e 6e 65 74 46 78 34 30 27 29 22 20 2f  ets.netFx40')" /
0900: 3e 0d 0a 0d 0a 20 20 3c 49 6d 70 6f 72 74 20 50  >....  <Import P
0910: 72 6f 6a 65 63 74 3d 22 24 28 53 51 4c 69 74 65  roject="$(SQLite
0920: 4e 65 74 44 69 72 29 5c 54 61 72 67 65 74 73 5c  NetDir)\Targets\
0930: 53 51 4c 69 74 65 2e 4e 45 54 2e 53 65 74 74 69  SQLite.NET.Setti
0940: 6e 67 73 2e 74 61 72 67 65 74 73 2e 6e 65 74 46  ngs.targets.netF
0950: 78 34 35 22 0d 0a 20 20 20 20 20 20 20 20 20 20  x45"..          
0960: 43 6f 6e 64 69 74 69 6f 6e 3d 22 27 24 28 4e 65  Condition="'$(Ne
0970: 74 46 78 34 35 29 27 20 21 3d 20 27 27 20 41 6e  tFx45)' != '' An
0980: 64 20 27 24 28 4e 65 74 46 78 34 35 29 27 20 21  d '$(NetFx45)' !
0990: 3d 20 27 66 61 6c 73 65 27 20 41 6e 64 0d 0a 20  = 'false' And.. 
09a0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
09b0: 20 20 20 20 28 27 24 28 4e 65 74 46 78 34 35 53      ('$(NetFx45S
09c0: 65 74 74 69 6e 67 73 29 27 20 3d 3d 20 27 27 20  ettings)' == '' 
09d0: 4f 72 20 27 24 28 4e 65 74 46 78 34 35 53 65 74  Or '$(NetFx45Set
09e0: 74 69 6e 67 73 29 27 20 21 3d 20 27 66 61 6c 73  tings)' != 'fals
09f0: 65 27 29 20 41 6e 64 0d 0a 20 20 20 20 20 20 20  e') And..       
0a00: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 45 78                Ex
0a10: 69 73 74 73 28 27 24 28 53 51 4c 69 74 65 4e 65  ists('$(SQLiteNe
0a20: 74 44 69 72 29 5c 54 61 72 67 65 74 73 5c 53 51  tDir)\Targets\SQ
0a30: 4c 69 74 65 2e 4e 45 54 2e 53 65 74 74 69 6e 67  Lite.NET.Setting
0a40: 73 2e 74 61 72 67 65 74 73 2e 6e 65 74 46 78 34  s.targets.netFx4
0a50: 35 27 29 22 20 2f 3e 0d 0a 0d 0a 20 20 3c 49 6d  5')" />....  <Im
0a60: 70 6f 72 74 20 50 72 6f 6a 65 63 74 3d 22 24 28  port Project="$(
0a70: 53 51 4c 69 74 65 4e 65 74 44 69 72 29 5c 54 61  SQLiteNetDir)\Ta
0a80: 72 67 65 74 73 5c 53 51 4c 69 74 65 2e 4e 45 54  rgets\SQLite.NET
0a90: 2e 53 65 74 74 69 6e 67 73 2e 74 61 72 67 65 74  .Settings.target
0aa0: 73 2e 6e 65 74 46 78 34 35 31 22 0d 0a 20 20 20  s.netFx451"..   
0ab0: 20 20 20 20 20 20 20 43 6f 6e 64 69 74 69 6f 6e         Condition
0ac0: 3d 22 27 24 28 4e 65 74 46 78 34 35 31 29 27 20  ="'$(NetFx451)' 
0ad0: 21 3d 20 27 27 20 41 6e 64 20 27 24 28 4e 65 74  != '' And '$(Net
0ae0: 46 78 34 35 31 29 27 20 21 3d 20 27 66 61 6c 73  Fx451)' != 'fals
0af0: 65 27 20 41 6e 64 0d 0a 20 20 20 20 20 20 20 20  e' And..        
0b00: 20 20 20 20 20 20 20 20 20 20 20 20 20 28 27 24               ('$
0b10: 28 4e 65 74 46 78 34 35 31 53 65 74 74 69 6e 67  (NetFx451Setting
0b20: 73 29 27 20 3d 3d 20 27 27 20 4f 72 20 27 24 28  s)' == '' Or '$(
0b30: 4e 65 74 46 78 34 35 31 53 65 74 74 69 6e 67 73  NetFx451Settings
0b40: 29 27 20 21 3d 20 27 66 61 6c 73 65 27 29 20 41  )' != 'false') A
0b50: 6e 64 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20  nd..            
0b60: 20 20 20 20 20 20 20 20 20 45 78 69 73 74 73 28           Exists(
0b70: 27 24 28 53 51 4c 69 74 65 4e 65 74 44 69 72 29  '$(SQLiteNetDir)
0b80: 5c 54 61 72 67 65 74 73 5c 53 51 4c 69 74 65 2e  \Targets\SQLite.
0b90: 4e 45 54 2e 53 65 74 74 69 6e 67 73 2e 74 61 72  NET.Settings.tar
0ba0: 67 65 74 73 2e 6e 65 74 46 78 34 35 31 27 29 22  gets.netFx451')"
0bb0: 20 2f 3e 0d 0a 0d 0a 20 20 3c 49 6d 70 6f 72 74   />....  <Import
0bc0: 20 50 72 6f 6a 65 63 74 3d 22 24 28 53 51 4c 69   Project="$(SQLi
0bd0: 74 65 4e 65 74 44 69 72 29 5c 54 61 72 67 65 74  teNetDir)\Target
0be0: 73 5c 53 51 4c 69 74 65 2e 4e 45 54 2e 53 65 74  s\SQLite.NET.Set
0bf0: 74 69 6e 67 73 2e 74 61 72 67 65 74 73 2e 6e 65  tings.targets.ne
0c00: 74 46 78 34 35 32 22 0d 0a 20 20 20 20 20 20 20  tFx452"..       
0c10: 20 20 20 43 6f 6e 64 69 74 69 6f 6e 3d 22 27 24     Condition="'$
0c20: 28 4e 65 74 46 78 34 35 32 29 27 20 21 3d 20 27  (NetFx452)' != '
0c30: 27 20 41 6e 64 20 27 24 28 4e 65 74 46 78 34 35  ' And '$(NetFx45
0c40: 32 29 27 20 21 3d 20 27 66 61 6c 73 65 27 20 41  2)' != 'false' A
0c50: 6e 64 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20  nd..            
0c60: 20 20 20 20 20 20 20 20 20 28 27 24 28 4e 65 74           ('$(Net
0c70: 46 78 34 35 32 53 65 74 74 69 6e 67 73 29 27 20  Fx452Settings)' 
0c80: 3d 3d 20 27 27 20 4f 72 20 27 24 28 4e 65 74 46  == '' Or '$(NetF
0c90: 78 34 35 32 53 65 74 74 69 6e 67 73 29 27 20 21  x452Settings)' !
0ca0: 3d 20 27 66 61 6c 73 65 27 29 20 41 6e 64 0d 0a  = 'false') And..
0cb0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
0cc0: 20 20 20 20 20 45 78 69 73 74 73 28 27 24 28 53       Exists('$(S
0cd0: 51 4c 69 74 65 4e 65 74 44 69 72 29 5c 54 61 72  QLiteNetDir)\Tar
0ce0: 67 65 74 73 5c 53 51 4c 69 74 65 2e 4e 45 54 2e  gets\SQLite.NET.
0cf0: 53 65 74 74 69 6e 67 73 2e 74 61 72 67 65 74 73  Settings.targets
0d00: 2e 6e 65 74 46 78 34 35 32 27 29 22 20 2f 3e 0d  .netFx452')" />.
0d10: 0a 0d 0a 20 20 3c 49 6d 70 6f 72 74 20 50 72 6f  ...  <Import Pro
0d20: 6a 65 63 74 3d 22 24 28 53 51 4c 69 74 65 4e 65  ject="$(SQLiteNe
0d30: 74 44 69 72 29 5c 54 61 72 67 65 74 73 5c 53 51  tDir)\Targets\SQ
0d40: 4c 69 74 65 2e 4e 45 54 2e 53 65 74 74 69 6e 67  Lite.NET.Setting
0d50: 73 2e 74 61 72 67 65 74 73 2e 6e 65 74 46 78 34  s.targets.netFx4
0d60: 36 22 0d 0a 20 20 20 20 20 20 20 20 20 20 43 6f  6"..          Co
0d70: 6e 64 69 74 69 6f 6e 3d 22 27 24 28 4e 65 74 46  ndition="'$(NetF
0d80: 78 34 36 29 27 20 21 3d 20 27 27 20 41 6e 64 20  x46)' != '' And 
0d90: 27 24 28 4e 65 74 46 78 34 36 29 27 20 21 3d 20  '$(NetFx46)' != 
0da0: 27 66 61 6c 73 65 27 20 41 6e 64 0d 0a 20 20 20  'false' And..   
0db0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
0dc0: 20 20 28 27 24 28 4e 65 74 46 78 34 36 53 65 74    ('$(NetFx46Set
0dd0: 74 69 6e 67 73 29 27 20 3d 3d 20 27 27 20 4f 72  tings)' == '' Or
0de0: 20 27 24 28 4e 65 74 46 78 34 36 53 65 74 74 69   '$(NetFx46Setti
0df0: 6e 67 73 29 27 20 21 3d 20 27 66 61 6c 73 65 27  ngs)' != 'false'
0e00: 29 20 41 6e 64 0d 0a 20 20 20 20 20 20 20 20 20  ) And..         
0e10: 20 20 20 20 20 20 20 20 20 20 20 20 45 78 69 73              Exis
0e20: 74 73 28 27 24 28 53 51 4c 69 74 65 4e 65 74 44  ts('$(SQLiteNetD
0e30: 69 72 29 5c 54 61 72 67 65 74 73 5c 53 51 4c 69  ir)\Targets\SQLi
0e40: 74 65 2e 4e 45 54 2e 53 65 74 74 69 6e 67 73 2e  te.NET.Settings.
0e50: 74 61 72 67 65 74 73 2e 6e 65 74 46 78 34 36 27  targets.netFx46'
0e60: 29 22 20 2f 3e 0d 0a 0d 0a 20 20 3c 21 2d 2d 0d  )" />....  <!--.
0e70: 0a 20 20 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a  .  *************
0e80: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a  ****************
0e90: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a  ****************
0ea0: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a  ****************
0eb0: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a  ****************
0ec0: 2a 0d 0a 20 20 2a 2a 20 20 20 20 20 20 20 20 20  *..  **         
0ed0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 5b 46                [F
0ee0: 61 69 72 6c 79 5d 20 47 65 6e 65 72 69 63 20 50  airly] Generic P
0ef0: 72 6f 70 65 72 74 69 65 73 20 20 20 20 20 20 20  roperties       
0f00: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
0f10: 20 2a 2a 0d 0a 20 20 2a 2a 2a 2a 2a 2a 2a 2a 2a   **..  *********
0f20: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a  ****************
0f30: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a  ****************
0f40: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a  ****************
0f50: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a  ****************
0f60: 2a 2a 2a 2a 2a 0d 0a 20 20 2d 2d 3e 0d 0a 0d 0a  *****..  -->....
0f70: 20 20 3c 50 72 6f 70 65 72 74 79 47 72 6f 75 70    <PropertyGroup
0f80: 3e 0d 0a 20 20 20 20 3c 21 2d 2d 0d 0a 20 20 20  >..    <!--..   
0f90: 20 20 20 20 20 4e 4f 54 45 3a 20 2a 55 4e 43 4f       NOTE: *UNCO
0fa0: 4e 44 49 54 49 4f 4e 41 4c 2a 20 57 65 20 6e 65  NDITIONAL* We ne
0fb0: 76 65 72 20 77 61 6e 74 20 74 6f 20 75 73 65 20  ver want to use 
0fc0: 74 68 65 20 68 6f 73 74 69 6e 67 20 70 72 6f 63  the hosting proc
0fd0: 65 73 73 20 66 6f 72 0d 0a 20 20 20 20 20 20 20  ess for..       
0fe0: 20 20 20 20 20 20 20 64 65 62 75 67 67 69 6e 67         debugging
0ff0: 2e 20 20 49 74 20 63 61 75 73 65 73 20 70 72 6f  .  It causes pro
1000: 62 6c 65 6d 73 2e 0d 0a 20 20 20 20 2d 2d 3e 0d  blems...    -->.
1010: 0a 20 20 20 20 3c 55 73 65 56 53 48 6f 73 74 69  .    <UseVSHosti
1020: 6e 67 50 72 6f 63 65 73 73 3e 66 61 6c 73 65 3c  ngProcess>false<
1030: 2f 55 73 65 56 53 48 6f 73 74 69 6e 67 50 72 6f  /UseVSHostingPro
1040: 63 65 73 73 3e 0d 0a 0d 0a 20 20 20 20 3c 21 2d  cess>....    <!-
1050: 2d 0d 0a 20 20 20 20 20 20 20 20 4e 4f 54 45 3a  -..        NOTE:
1060: 20 2a 55 4e 43 4f 4e 44 49 54 49 4f 4e 41 4c 2a   *UNCONDITIONAL*
1070: 20 57 65 20 6e 65 76 65 72 20 77 61 6e 74 20 74   We never want t
1080: 6f 20 75 73 65 20 74 68 65 20 66 61 73 74 20 75  o use the fast u
1090: 70 2d 74 6f 2d 64 61 74 65 20 63 68 65 63 6b 0d  p-to-date check.
10a0: 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 74  .              t
10b0: 68 61 74 20 56 69 73 75 61 6c 20 53 74 75 64 69  hat Visual Studi
10c0: 6f 20 70 72 6f 76 69 64 65 73 2e 0d 0a 20 20 20  o provides...   
10d0: 20 2d 2d 3e 0d 0a 20 20 20 20 3c 44 69 73 61 62   -->..    <Disab
10e0: 6c 65 46 61 73 74 55 70 54 6f 44 61 74 65 43 68  leFastUpToDateCh
10f0: 65 63 6b 3e 74 72 75 65 3c 2f 44 69 73 61 62 6c  eck>true</Disabl
1100: 65 46 61 73 74 55 70 54 6f 44 61 74 65 43 68 65  eFastUpToDateChe
1110: 63 6b 3e 0d 0a 0d 0a 20 20 20 20 3c 21 2d 2d 0d  ck>....    <!--.
1120: 0a 20 20 20 20 20 20 20 20 48 41 43 4b 3a 20 2a  .        HACK: *
1130: 55 4e 43 4f 4e 44 49 54 49 4f 4e 41 4c 2a 20 54  UNCONDITIONAL* T
1140: 68 65 20 56 69 73 75 61 6c 20 53 74 75 64 69 6f  he Visual Studio
1150: 20 49 44 45 20 69 67 6e 6f 72 65 73 20 74 68 65   IDE ignores the
1160: 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20  ..              
1170: 42 61 73 65 49 6e 74 65 72 6d 65 64 69 61 74 65  BaseIntermediate
1180: 4f 75 74 70 75 74 50 61 74 68 20 70 72 6f 70 65  OutputPath prope
1190: 72 74 79 20 61 6e 64 20 63 72 65 61 74 65 73 20  rty and creates 
11a0: 65 6d 70 74 79 20 22 62 69 6e 22 20 61 6e 64 0d  empty "bin" and.
11b0: 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22  .              "
11c0: 6f 62 6a 22 20 64 69 72 65 63 74 6f 72 69 65 73  obj" directories
11d0: 20 66 6f 72 20 65 76 65 72 79 20 70 72 6f 6a 65   for every proje
11e0: 63 74 20 77 68 65 6e 65 76 65 72 20 74 68 65 20  ct whenever the 
11f0: 70 72 6f 6a 65 63 74 20 69 73 20 6f 70 65 6e 65  project is opene
1200: 64 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20  d..             
1210: 20 6f 72 20 62 75 69 6c 74 2e 20 20 41 6c 73 6f   or built.  Also
1220: 2c 20 74 68 65 20 56 69 73 75 61 6c 20 53 74 75  , the Visual Stu
1230: 64 69 6f 20 49 44 45 20 77 69 6c 6c 20 6f 63 63  dio IDE will occ
1240: 61 73 69 6f 6e 61 6c 6c 79 20 66 61 69 6c 20 74  asionally fail t
1250: 6f 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20  o..             
1260: 20 72 65 62 75 69 6c 64 20 74 68 65 20 70 72 6f   rebuild the pro
1270: 6a 65 63 74 20 64 75 65 20 74 6f 20 74 68 69 73  ject due to this
1280: 20 63 6f 6e 66 75 73 69 6f 6e 2e 20 20 54 68 65   confusion.  The
1290: 20 73 69 74 75 61 74 69 6f 6e 20 61 70 70 65 61   situation appea
12a0: 72 73 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20  rs..            
12b0: 20 20 74 6f 20 69 6d 70 72 6f 76 65 20 73 6f 6d    to improve som
12c0: 65 77 68 61 74 20 77 68 65 6e 20 74 68 69 73 20  ewhat when this 
12d0: 69 73 20 73 65 74 20 74 6f 20 66 61 6c 73 65 2e  is set to false.
12e0: 20 20 50 6c 65 61 73 65 20 6e 6f 74 65 20 74 68    Please note th
12f0: 61 74 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20  at..            
1300: 20 20 65 76 65 6e 20 69 66 20 74 68 69 73 20 69    even if this i
1310: 73 20 73 65 74 20 74 6f 20 66 61 6c 73 65 2c 20  s set to false, 
1320: 74 68 69 6e 67 73 20 73 74 69 6c 6c 20 64 6f 20  things still do 
1330: 6e 6f 74 20 77 6f 72 6b 20 31 30 30 25 0d 0a 20  not work 100%.. 
1340: 20 20 20 20 20 20 20 20 20 20 20 20 20 63 6f 72               cor
1350: 72 65 63 74 6c 79 3b 20 68 6f 77 65 76 65 72 2c  rectly; however,
1360: 20 61 74 20 6c 65 61 73 74 20 74 68 65 72 65 20   at least there 
1370: 61 70 70 65 61 72 73 20 74 6f 20 62 65 20 6c 65  appears to be le
1380: 73 73 20 62 75 69 6c 64 0d 0a 20 20 20 20 20 20  ss build..      
1390: 20 20 20 20 20 20 20 20 66 61 69 6c 75 72 65 73          failures
13a0: 2e 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20  .....           
13b0: 20 20 20 50 6c 65 61 73 65 20 73 65 65 20 4d 69     Please see Mi
13c0: 63 72 6f 73 6f 66 74 20 43 6f 6e 6e 65 63 74 20  crosoft Connect 
13d0: 46 65 65 64 62 61 63 6b 49 44 20 31 30 35 38 35  FeedbackID 10585
13e0: 34 20 66 6f 72 20 74 68 65 69 72 20 6f 66 66 69  4 for their offi
13f0: 63 69 61 6c 0d 0a 20 20 20 20 20 20 20 20 20 20  cial..          
1400: 20 20 20 20 6c 69 73 74 20 6f 66 20 65 78 63 75      list of excu
1410: 73 65 73 2c 20 6f 6e 20 74 68 69 73 20 6e 6f 77  ses, on this now
1420: 20 6d 6f 72 65 20 74 68 61 6e 20 33 20 79 65 61   more than 3 yea
1430: 72 20 6f 6c 64 20 62 75 67 2e 0d 0a 20 20 20 20  r old bug...    
1440: 2d 2d 3e 0d 0a 20 20 20 20 3c 55 73 65 48 6f 73  -->..    <UseHos
1450: 74 43 6f 6d 70 69 6c 65 72 49 66 41 76 61 69 6c  tCompilerIfAvail
1460: 61 62 6c 65 3e 66 61 6c 73 65 3c 2f 55 73 65 48  able>false</UseH
1470: 6f 73 74 43 6f 6d 70 69 6c 65 72 49 66 41 76 61  ostCompilerIfAva
1480: 69 6c 61 62 6c 65 3e 0d 0a 20 20 3c 2f 50 72 6f  ilable>..  </Pro
1490: 70 65 72 74 79 47 72 6f 75 70 3e 0d 0a 0d 0a 20  pertyGroup>.... 
14a0: 20 3c 21 2d 2d 0d 0a 20 20 2a 2a 2a 2a 2a 2a 2a   <!--..  *******
14b0: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a  ****************
14c0: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a  ****************
14d0: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a  ****************
14e0: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a  ****************
14f0: 2a 2a 2a 2a 2a 2a 2a 0d 0a 20 20 2a 2a 20 20 20  *******..  **   
1500: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
1510: 20 20 20 20 46 72 61 6d 65 77 6f 72 6b 20 56 65      Framework Ve
1520: 72 73 69 6f 6e 20 50 72 6f 70 65 72 74 69 65 73  rsion Properties
1530: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
1540: 20 20 20 20 20 20 20 2a 2a 0d 0a 20 20 2a 2a 2a         **..  ***
1550: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a  ****************
1560: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a  ****************
1570: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a  ****************
1580: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a  ****************
1590: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 0d 0a 20 20 2d  ***********..  -
15a0: 2d 3e 0d 0a 0d 0a 20 20 3c 50 72 6f 70 65 72 74  ->....  <Propert
15b0: 79 47 72 6f 75 70 3e 0d 0a 20 20 20 20 3c 21 2d  yGroup>..    <!-
15c0: 2d 0d 0a 20 20 20 20 20 20 20 20 4e 4f 54 45 3a  -..        NOTE:
15d0: 20 4f 6e 6c 79 20 75 73 65 20 66 75 6e 63 74 69   Only use functi
15e0: 6f 6e 61 6c 69 74 79 20 61 76 61 69 6c 61 62 6c  onality availabl
15f0: 65 20 69 6e 20 74 68 65 20 2e 4e 45 54 20 46 72  e in the .NET Fr
1600: 61 6d 65 77 6f 72 6b 20 32 2e 30 3f 20 20 42 79  amework 2.0?  By
1610: 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20  ..              
1620: 64 65 66 61 75 6c 74 2c 20 74 68 69 73 20 69 73  default, this is
1630: 20 64 69 73 61 62 6c 65 64 2e 20 20 54 68 69 73   disabled.  This
1640: 20 6d 75 73 74 20 62 65 20 65 6e 61 62 6c 65 64   must be enabled
1650: 20 74 6f 20 73 75 63 63 65 73 73 66 75 6c 6c 79   to successfully
1660: 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20  ..              
1670: 62 75 69 6c 64 20 74 68 65 20 70 72 6f 6a 65 63  build the projec
1680: 74 20 75 73 69 6e 67 20 56 69 73 75 61 6c 20 53  t using Visual S
1690: 74 75 64 69 6f 20 32 30 30 35 20 61 6e 64 2f 6f  tudio 2005 and/o
16a0: 72 20 74 68 65 20 2e 4e 45 54 0d 0a 20 20 20 20  r the .NET..    
16b0: 20 20 20 20 20 20 20 20 20 20 46 72 61 6d 65 77            Framew
16c0: 6f 72 6b 20 32 2e 30 20 28 69 66 20 6e 65 63 65  ork 2.0 (if nece
16d0: 73 73 61 72 79 2c 20 69 74 20 77 69 6c 6c 20 74  ssary, it will t
16e0: 79 70 69 63 61 6c 6c 79 20 62 65 20 65 6e 61 62  ypically be enab
16f0: 6c 65 64 20 66 72 6f 6d 0d 0a 20 20 20 20 20 20  led from..      
1700: 20 20 20 20 20 20 20 20 77 69 74 68 69 6e 20 74          within t
1710: 68 65 20 70 72 6f 6a 65 63 74 20 66 69 6c 65 20  he project file 
1720: 69 74 73 65 6c 66 29 2e 0d 0a 20 20 20 20 2d 2d  itself)...    --
1730: 3e 0d 0a 20 20 20 20 3c 4e 65 74 46 78 32 30 20  >..    <NetFx20 
1740: 43 6f 6e 64 69 74 69 6f 6e 3d 22 27 24 28 4e 65  Condition="'$(Ne
1750: 74 46 78 32 30 29 27 20 3d 3d 20 27 27 22 3e 66  tFx20)' == ''">f
1760: 61 6c 73 65 3c 2f 4e 65 74 46 78 32 30 3e 0d 0a  alse</NetFx20>..
1770: 0d 0a 20 20 20 20 3c 21 2d 2d 0d 0a 20 20 20 20  ..    <!--..    
1780: 20 20 20 20 4e 4f 54 45 3a 20 4f 6e 6c 79 20 75      NOTE: Only u
1790: 73 65 20 66 75 6e 63 74 69 6f 6e 61 6c 69 74 79  se functionality
17a0: 20 61 76 61 69 6c 61 62 6c 65 20 69 6e 20 74 68   available in th
17b0: 65 20 2e 4e 45 54 20 46 72 61 6d 65 77 6f 72 6b  e .NET Framework
17c0: 20 33 2e 35 3f 20 20 42 79 0d 0a 20 20 20 20 20   3.5?  By..     
17d0: 20 20 20 20 20 20 20 20 20 64 65 66 61 75 6c 74           default
17e0: 2c 20 74 68 69 73 20 69 73 20 64 69 73 61 62 6c  , this is disabl
17f0: 65 64 2e 20 20 54 68 69 73 20 6d 75 73 74 20 62  ed.  This must b
1800: 65 20 65 6e 61 62 6c 65 64 20 74 6f 20 73 75 63  e enabled to suc
1810: 63 65 73 73 66 75 6c 6c 79 0d 0a 20 20 20 20 20  cessfully..     
1820: 20 20 20 20 20 20 20 20 20 62 75 69 6c 64 20 74           build t
1830: 68 65 20 70 72 6f 6a 65 63 74 20 75 73 69 6e 67  he project using
1840: 20 56 69 73 75 61 6c 20 53 74 75 64 69 6f 20 32   Visual Studio 2
1850: 30 30 38 20 61 6e 64 2f 6f 72 20 74 68 65 20 2e  008 and/or the .
1860: 4e 45 54 0d 0a 20 20 20 20 20 20 20 20 20 20 20  NET..           
1870: 20 20 20 46 72 61 6d 65 77 6f 72 6b 20 33 2e 35     Framework 3.5
1880: 20 28 69 66 20 6e 65 63 65 73 73 61 72 79 2c 20   (if necessary, 
1890: 69 74 20 77 69 6c 6c 20 74 79 70 69 63 61 6c 6c  it will typicall
18a0: 79 20 62 65 20 65 6e 61 62 6c 65 64 20 66 72 6f  y be enabled fro
18b0: 6d 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20  m..             
18c0: 20 77 69 74 68 69 6e 20 74 68 65 20 70 72 6f 6a   within the proj
18d0: 65 63 74 20 66 69 6c 65 20 69 74 73 65 6c 66 29  ect file itself)
18e0: 2e 0d 0a 20 20 20 20 2d 2d 3e 0d 0a 20 20 20 20  ...    -->..    
18f0: 3c 4e 65 74 46 78 33 35 20 43 6f 6e 64 69 74 69  <NetFx35 Conditi
1900: 6f 6e 3d 22 27 24 28 4e 65 74 46 78 33 35 29 27  on="'$(NetFx35)'
1910: 20 3d 3d 20 27 27 22 3e 66 61 6c 73 65 3c 2f 4e   == ''">false</N
1920: 65 74 46 78 33 35 3e 0d 0a 0d 0a 20 20 20 20 3c  etFx35>....    <
1930: 21 2d 2d 0d 0a 20 20 20 20 20 20 20 20 4e 4f 54  !--..        NOT
1940: 45 3a 20 4f 6e 6c 79 20 75 73 65 20 66 75 6e 63  E: Only use func
1950: 74 69 6f 6e 61 6c 69 74 79 20 61 76 61 69 6c 61  tionality availa
1960: 62 6c 65 20 69 6e 20 74 68 65 20 2e 4e 45 54 20  ble in the .NET 
1970: 46 72 61 6d 65 77 6f 72 6b 20 34 2e 30 3f 20 20  Framework 4.0?  
1980: 42 79 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20  By..            
1990: 20 20 64 65 66 61 75 6c 74 2c 20 74 68 69 73 20    default, this 
19a0: 69 73 20 64 69 73 61 62 6c 65 64 2e 20 20 54 68  is disabled.  Th
19b0: 69 73 20 6d 75 73 74 20 62 65 20 65 6e 61 62 6c  is must be enabl
19c0: 65 64 20 74 6f 20 73 75 63 63 65 73 73 66 75 6c  ed to successful
19d0: 6c 79 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20  ly..            
19e0: 20 20 62 75 69 6c 64 20 74 68 65 20 70 72 6f 6a    build the proj
19f0: 65 63 74 20 75 73 69 6e 67 20 56 69 73 75 61 6c  ect using Visual
1a00: 20 53 74 75 64 69 6f 20 32 30 31 30 20 61 6e 64   Studio 2010 and
1a10: 2f 6f 72 20 74 68 65 20 2e 4e 45 54 0d 0a 20 20  /or the .NET..  
1a20: 20 20 20 20 20 20 20 20 20 20 20 20 46 72 61 6d              Fram
1a30: 65 77 6f 72 6b 20 34 2e 30 20 28 69 66 20 6e 65  ework 4.0 (if ne
1a40: 63 65 73 73 61 72 79 2c 20 69 74 20 77 69 6c 6c  cessary, it will
1a50: 20 74 79 70 69 63 61 6c 6c 79 20 62 65 20 65 6e   typically be en
1a60: 61 62 6c 65 64 20 66 72 6f 6d 0d 0a 20 20 20 20  abled from..    
1a70: 20 20 20 20 20 20 20 20 20 20 77 69 74 68 69 6e            within
1a80: 20 74 68 65 20 70 72 6f 6a 65 63 74 20 66 69 6c   the project fil
1a90: 65 20 69 74 73 65 6c 66 29 2e 0d 0a 20 20 20 20  e itself)...    
1aa0: 2d 2d 3e 0d 0a 20 20 20 20 3c 4e 65 74 46 78 34  -->..    <NetFx4
1ab0: 30 20 43 6f 6e 64 69 74 69 6f 6e 3d 22 27 24 28  0 Condition="'$(
1ac0: 4e 65 74 46 78 34 30 29 27 20 3d 3d 20 27 27 22  NetFx40)' == ''"
1ad0: 3e 66 61 6c 73 65 3c 2f 4e 65 74 46 78 34 30 3e  >false</NetFx40>
1ae0: 0d 0a 0d 0a 20 20 20 20 3c 21 2d 2d 0d 0a 20 20  ....    <!--..  
1af0: 20 20 20 20 20 20 4e 4f 54 45 3a 20 4f 6e 6c 79        NOTE: Only
1b00: 20 75 73 65 20 66 75 6e 63 74 69 6f 6e 61 6c 69   use functionali
1b10: 74 79 20 61 76 61 69 6c 61 62 6c 65 20 69 6e 20  ty available in 
1b20: 74 68 65 20 2e 4e 45 54 20 46 72 61 6d 65 77 6f  the .NET Framewo
1b30: 72 6b 20 34 2e 35 3f 20 20 42 79 0d 0a 20 20 20  rk 4.5?  By..   
1b40: 20 20 20 20 20 20 20 20 20 20 20 64 65 66 61 75             defau
1b50: 6c 74 2c 20 74 68 69 73 20 69 73 20 64 69 73 61  lt, this is disa
1b60: 62 6c 65 64 2e 20 20 54 68 69 73 20 6d 75 73 74  bled.  This must
1b70: 20 62 65 20 65 6e 61 62 6c 65 64 20 74 6f 20 73   be enabled to s
1b80: 75 63 63 65 73 73 66 75 6c 6c 79 0d 0a 20 20 20  uccessfully..   
1b90: 20 20 20 20 20 20 20 20 20 20 20 62 75 69 6c 64             build
1ba0: 20 74 68 65 20 70 72 6f 6a 65 63 74 20 75 73 69   the project usi
1bb0: 6e 67 20 56 69 73 75 61 6c 20 53 74 75 64 69 6f  ng Visual Studio
1bc0: 20 32 30 31 32 20 61 6e 64 2f 6f 72 20 74 68 65   2012 and/or the
1bd0: 20 2e 4e 45 54 0d 0a 20 20 20 20 20 20 20 20 20   .NET..         
1be0: 20 20 20 20 20 46 72 61 6d 65 77 6f 72 6b 20 34       Framework 4
1bf0: 2e 35 20 28 69 66 20 6e 65 63 65 73 73 61 72 79  .5 (if necessary
1c00: 2c 20 69 74 20 77 69 6c 6c 20 74 79 70 69 63 61  , it will typica
1c10: 6c 6c 79 20 62 65 20 65 6e 61 62 6c 65 64 20 66  lly be enabled f
1c20: 72 6f 6d 0d 0a 20 20 20 20 20 20 20 20 20 20 20  rom..           
1c30: 20 20 20 77 69 74 68 69 6e 20 74 68 65 20 70 72     within the pr
1c40: 6f 6a 65 63 74 20 66 69 6c 65 20 69 74 73 65 6c  oject file itsel
1c50: 66 29 2e 0d 0a 20 20 20 20 2d 2d 3e 0d 0a 20 20  f)...    -->..  
1c60: 20 20 3c 4e 65 74 46 78 34 35 20 43 6f 6e 64 69    <NetFx45 Condi
1c70: 74 69 6f 6e 3d 22 27 24 28 4e 65 74 46 78 34 35  tion="'$(NetFx45
1c80: 29 27 20 3d 3d 20 27 27 22 3e 66 61 6c 73 65 3c  )' == ''">false<
1c90: 2f 4e 65 74 46 78 34 35 3e 0d 0a 0d 0a 20 20 20  /NetFx45>....   
1ca0: 20 3c 21 2d 2d 0d 0a 20 20 20 20 20 20 20 20 4e   <!--..        N
1cb0: 4f 54 45 3a 20 4f 6e 6c 79 20 75 73 65 20 66 75  OTE: Only use fu
1cc0: 6e 63 74 69 6f 6e 61 6c 69 74 79 20 61 76 61 69  nctionality avai
1cd0: 6c 61 62 6c 65 20 69 6e 20 74 68 65 20 2e 4e 45  lable in the .NE
1ce0: 54 20 46 72 61 6d 65 77 6f 72 6b 20 34 2e 35 2e  T Framework 4.5.
1cf0: 31 3f 20 20 42 79 0d 0a 20 20 20 20 20 20 20 20  1?  By..        
1d00: 20 20 20 20 20 20 64 65 66 61 75 6c 74 2c 20 74        default, t
1d10: 68 69 73 20 69 73 20 64 69 73 61 62 6c 65 64 2e  his is disabled.
1d20: 20 20 54 68 69 73 20 6d 75 73 74 20 62 65 20 65    This must be e
1d30: 6e 61 62 6c 65 64 20 74 6f 20 73 75 63 63 65 73  nabled to succes
1d40: 73 66 75 6c 6c 79 0d 0a 20 20 20 20 20 20 20 20  sfully..        
1d50: 20 20 20 20 20 20 62 75 69 6c 64 20 74 68 65 20        build the 
1d60: 70 72 6f 6a 65 63 74 20 75 73 69 6e 67 20 56 69  project using Vi
1d70: 73 75 61 6c 20 53 74 75 64 69 6f 20 32 30 31 33  sual Studio 2013
1d80: 20 61 6e 64 2f 6f 72 20 74 68 65 20 2e 4e 45 54   and/or the .NET
1d90: 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20  ..              
1da0: 46 72 61 6d 65 77 6f 72 6b 20 34 2e 35 2e 31 20  Framework 4.5.1 
1db0: 28 69 66 20 6e 65 63 65 73 73 61 72 79 2c 20 69  (if necessary, i
1dc0: 74 20 77 69 6c 6c 20 74 79 70 69 63 61 6c 6c 79  t will typically
1dd0: 20 62 65 20 65 6e 61 62 6c 65 64 20 66 72 6f 6d   be enabled from
1de0: 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20  ..              
1df0: 77 69 74 68 69 6e 20 74 68 65 20 70 72 6f 6a 65  within the proje
1e00: 63 74 20 66 69 6c 65 20 69 74 73 65 6c 66 29 2e  ct file itself).
1e10: 0d 0a 20 20 20 20 2d 2d 3e 0d 0a 20 20 20 20 3c  ..    -->..    <
1e20: 4e 65 74 46 78 34 35 31 20 43 6f 6e 64 69 74 69  NetFx451 Conditi
1e30: 6f 6e 3d 22 27 24 28 4e 65 74 46 78 34 35 31 29  on="'$(NetFx451)
1e40: 27 20 3d 3d 20 27 27 22 3e 66 61 6c 73 65 3c 2f  ' == ''">false</
1e50: 4e 65 74 46 78 34 35 31 3e 0d 0a 0d 0a 20 20 20  NetFx451>....   
1e60: 20 3c 21 2d 2d 0d 0a 20 20 20 20 20 20 20 20 4e   <!--..        N
1e70: 4f 54 45 3a 20 4f 6e 6c 79 20 75 73 65 20 66 75  OTE: Only use fu
1e80: 6e 63 74 69 6f 6e 61 6c 69 74 79 20 61 76 61 69  nctionality avai
1e90: 6c 61 62 6c 65 20 69 6e 20 74 68 65 20 2e 4e 45  lable in the .NE
1ea0: 54 20 46 72 61 6d 65 77 6f 72 6b 20 34 2e 35 2e  T Framework 4.5.
1eb0: 32 3f 20 20 42 79 0d 0a 20 20 20 20 20 20 20 20  2?  By..        
1ec0: 20 20 20 20 20 20 64 65 66 61 75 6c 74 2c 20 74        default, t
1ed0: 68 69 73 20 69 73 20 64 69 73 61 62 6c 65 64 2e  his is disabled.
1ee0: 20 20 54 68 69 73 20 6d 75 73 74 20 62 65 20 65    This must be e
1ef0: 6e 61 62 6c 65 64 20 74 6f 20 73 75 63 63 65 73  nabled to succes
1f00: 73 66 75 6c 6c 79 0d 0a 20 20 20 20 20 20 20 20  sfully..        
1f10: 20 20 20 20 20 20 62 75 69 6c 64 20 74 68 65 20        build the 
1f20: 70 72 6f 6a 65 63 74 20 75 73 69 6e 67 20 56 69  project using Vi
1f30: 73 75 61 6c 20 53 74 75 64 69 6f 20 32 30 31 33  sual Studio 2013
1f40: 20 61 6e 64 2f 6f 72 20 74 68 65 20 2e 4e 45 54   and/or the .NET
1f50: 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20  ..              
1f60: 46 72 61 6d 65 77 6f 72 6b 20 34 2e 35 2e 32 20  Framework 4.5.2 
1f70: 28 69 66 20 6e 65 63 65 73 73 61 72 79 2c 20 69  (if necessary, i
1f80: 74 20 77 69 6c 6c 20 74 79 70 69 63 61 6c 6c 79  t will typically
1f90: 20 62 65 20 65 6e 61 62 6c 65 64 20 66 72 6f 6d   be enabled from
1fa0: 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20  ..              
1fb0: 77 69 74 68 69 6e 20 74 68 65 20 70 72 6f 6a 65  within the proje
1fc0: 63 74 20 66 69 6c 65 20 69 74 73 65 6c 66 29 2e  ct file itself).
1fd0: 0d 0a 20 20 20 20 2d 2d 3e 0d 0a 20 20 20 20 3c  ..    -->..    <
1fe0: 4e 65 74 46 78 34 35 32 20 43 6f 6e 64 69 74 69  NetFx452 Conditi
1ff0: 6f 6e 3d 22 27 24 28 4e 65 74 46 78 34 35 32 29  on="'$(NetFx452)
2000: 27 20 3d 3d 20 27 27 22 3e 66 61 6c 73 65 3c 2f  ' == ''">false</
2010: 4e 65 74 46 78 34 35 32 3e 0d 0a 0d 0a 20 20 20  NetFx452>....   
2020: 20 3c 21 2d 2d 0d 0a 20 20 20 20 20 20 20 20 4e   <!--..        N
2030: 4f 54 45 3a 20 4f 6e 6c 79 20 75 73 65 20 66 75  OTE: Only use fu
2040: 6e 63 74 69 6f 6e 61 6c 69 74 79 20 61 76 61 69  nctionality avai
2050: 6c 61 62 6c 65 20 69 6e 20 74 68 65 20 2e 4e 45  lable in the .NE
2060: 54 20 46 72 61 6d 65 77 6f 72 6b 20 34 2e 36 3f  T Framework 4.6?
2070: 20 20 42 79 0d 0a 20 20 20 20 20 20 20 20 20 20    By..          
2080: 20 20 20 20 64 65 66 61 75 6c 74 2c 20 74 68 69      default, thi
2090: 73 20 69 73 20 64 69 73 61 62 6c 65 64 2e 20 20  s is disabled.  
20a0: 54 68 69 73 20 6d 75 73 74 20 62 65 20 65 6e 61  This must be ena
20b0: 62 6c 65 64 20 74 6f 20 73 75 63 63 65 73 73 66  bled to successf
20c0: 75 6c 6c 79 0d 0a 20 20 20 20 20 20 20 20 20 20  ully..          
20d0: 20 20 20 20 62 75 69 6c 64 20 74 68 65 20 70 72      build the pr
20e0: 6f 6a 65 63 74 20 75 73 69 6e 67 20 56 69 73 75  oject using Visu
20f0: 61 6c 20 53 74 75 64 69 6f 20 32 30 31 35 20 61  al Studio 2015 a
2100: 6e 64 2f 6f 72 20 74 68 65 20 2e 4e 45 54 0d 0a  nd/or the .NET..
2110: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 46 72                Fr
2120: 61 6d 65 77 6f 72 6b 20 34 2e 36 20 28 69 66 20  amework 4.6 (if 
2130: 6e 65 63 65 73 73 61 72 79 2c 20 69 74 20 77 69  necessary, it wi
2140: 6c 6c 20 74 79 70 69 63 61 6c 6c 79 20 62 65 20  ll typically be 
2150: 65 6e 61 62 6c 65 64 20 66 72 6f 6d 0d 0a 20 20  enabled from..  
2160: 20 20 20 20 20 20 20 20 20 20 20 20 77 69 74 68              with
2170: 69 6e 20 74 68 65 20 70 72 6f 6a 65 63 74 20 66  in the project f
2180: 69 6c 65 20 69 74 73 65 6c 66 29 2e 0d 0a 20 20  ile itself)...  
2190: 20 20 2d 2d 3e 0d 0a 20 20 20 20 3c 4e 65 74 46    -->..    <NetF
21a0: 78 34 36 20 43 6f 6e 64 69 74 69 6f 6e 3d 22 27  x46 Condition="'
21b0: 24 28 4e 65 74 46 78 34 36 29 27 20 3d 3d 20 27  $(NetFx46)' == '
21c0: 27 22 3e 66 61 6c 73 65 3c 2f 4e 65 74 46 78 34  '">false</NetFx4
21d0: 36 3e 0d 0a 0d 0a 20 20 20 20 3c 21 2d 2d 0d 0a  6>....    <!--..
21e0: 20 20 20 20 20 20 20 20 4e 4f 54 45 3a 20 4c 6f          NOTE: Lo
21f0: 61 64 20 74 68 65 20 76 65 72 73 69 6f 6e 2d 73  ad the version-s
2200: 70 65 63 69 66 69 63 20 73 65 74 74 69 6e 67 73  pecific settings
2210: 20 66 6f 72 20 74 68 65 20 2e 4e 45 54 20 46 72   for the .NET Fr
2220: 61 6d 65 77 6f 72 6b 20 32 2e 30 3f 0d 0a 20 20  amework 2.0?..  
2230: 20 20 20 20 20 20 20 20 20 20 20 20 42 79 20 64              By d
2240: 65 66 61 75 6c 74 2c 20 74 68 69 73 20 69 73 20  efault, this is 
2250: 64 69 73 61 62 6c 65 64 2e 20 20 49 66 20 74 68  disabled.  If th
2260: 69 73 20 69 73 20 65 6e 61 62 6c 65 64 20 77 68  is is enabled wh
2270: 65 6e 20 63 6f 6d 70 69 6c 69 6e 67 0d 0a 20 20  en compiling..  
2280: 20 20 20 20 20 20 20 20 20 20 20 20 66 6f 72 20              for 
2290: 74 68 65 20 2e 4e 45 54 20 46 72 61 6d 65 77 6f  the .NET Framewo
22a0: 72 6b 20 32 2e 30 2c 20 74 68 65 20 76 65 72 73  rk 2.0, the vers
22b0: 69 6f 6e 2d 73 70 65 63 69 66 69 63 20 73 65 74  ion-specific set
22c0: 74 69 6e 67 73 20 66 69 6c 65 0d 0a 20 20 20 20  tings file..    
22d0: 20 20 20 20 20 20 20 20 20 20 22 53 51 4c 69 74            "SQLit
22e0: 65 2e 4e 45 54 2e 53 65 74 74 69 6e 67 73 2e 74  e.NET.Settings.t
22f0: 61 72 67 65 74 73 2e 6e 65 74 46 78 32 30 22 20  argets.netFx20" 
2300: 77 69 6c 6c 20 62 65 20 6c 6f 61 64 65 64 20 69  will be loaded i
2310: 66 20 69 74 20 69 73 0d 0a 20 20 20 20 20 20 20  f it is..       
2320: 20 20 20 20 20 20 20 61 63 74 75 61 6c 6c 79 20         actually 
2330: 70 72 65 73 65 6e 74 2c 20 62 65 66 6f 72 65 20  present, before 
2340: 61 6e 79 20 6f 74 68 65 72 20 73 65 74 74 69 6e  any other settin
2350: 67 73 20 69 6e 20 74 68 69 73 20 66 69 6c 65 20  gs in this file 
2360: 61 72 65 0d 0a 20 20 20 20 20 20 20 20 20 20 20  are..           
2370: 20 20 20 70 72 6f 63 65 73 73 65 64 2e 0d 0a 20     processed... 
2380: 20 20 20 2d 2d 3e 0d 0a 20 20 20 20 3c 4e 65 74     -->..    <Net
2390: 46 78 32 30 53 65 74 74 69 6e 67 73 20 43 6f 6e  Fx20Settings Con
23a0: 64 69 74 69 6f 6e 3d 22 27 24 28 4e 65 74 46 78  dition="'$(NetFx
23b0: 32 30 53 65 74 74 69 6e 67 73 29 27 20 3d 3d 20  20Settings)' == 
23c0: 27 27 22 3e 66 61 6c 73 65 3c 2f 4e 65 74 46 78  ''">false</NetFx
23d0: 32 30 53 65 74 74 69 6e 67 73 3e 0d 0a 0d 0a 20  20Settings>.... 
23e0: 20 20 20 3c 21 2d 2d 0d 0a 20 20 20 20 20 20 20     <!--..       
23f0: 20 4e 4f 54 45 3a 20 4c 6f 61 64 20 74 68 65 20   NOTE: Load the 
2400: 76 65 72 73 69 6f 6e 2d 73 70 65 63 69 66 69 63  version-specific
2410: 20 73 65 74 74 69 6e 67 73 20 66 6f 72 20 74 68   settings for th
2420: 65 20 2e 4e 45 54 20 46 72 61 6d 65 77 6f 72 6b  e .NET Framework
2430: 20 33 2e 35 3f 0d 0a 20 20 20 20 20 20 20 20 20   3.5?..         
2440: 20 20 20 20 20 42 79 20 64 65 66 61 75 6c 74 2c       By default,
2450: 20 74 68 69 73 20 69 73 20 64 69 73 61 62 6c 65   this is disable
2460: 64 2e 20 20 49 66 20 74 68 69 73 20 69 73 20 65  d.  If this is e
2470: 6e 61 62 6c 65 64 20 77 68 65 6e 20 63 6f 6d 70  nabled when comp
2480: 69 6c 69 6e 67 0d 0a 20 20 20 20 20 20 20 20 20  iling..         
2490: 20 20 20 20 20 66 6f 72 20 74 68 65 20 2e 4e 45       for the .NE
24a0: 54 20 46 72 61 6d 65 77 6f 72 6b 20 33 2e 35 2c  T Framework 3.5,
24b0: 20 74 68 65 20 76 65 72 73 69 6f 6e 2d 73 70 65   the version-spe
24c0: 63 69 66 69 63 20 73 65 74 74 69 6e 67 73 20 66  cific settings f
24d0: 69 6c 65 0d 0a 20 20 20 20 20 20 20 20 20 20 20  ile..           
24e0: 20 20 20 22 53 51 4c 69 74 65 2e 4e 45 54 2e 53     "SQLite.NET.S
24f0: 65 74 74 69 6e 67 73 2e 74 61 72 67 65 74 73 2e  ettings.targets.
2500: 6e 65 74 46 78 33 35 22 20 77 69 6c 6c 20 62 65  netFx35" will be
2510: 20 6c 6f 61 64 65 64 20 69 66 20 69 74 20 69 73   loaded if it is
2520: 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20  ..              
2530: 61 63 74 75 61 6c 6c 79 20 70 72 65 73 65 6e 74  actually present
2540: 2c 20 62 65 66 6f 72 65 20 61 6e 79 20 6f 74 68  , before any oth
2550: 65 72 20 73 65 74 74 69 6e 67 73 20 69 6e 20 74  er settings in t
2560: 68 69 73 20 66 69 6c 65 20 61 72 65 0d 0a 20 20  his file are..  
2570: 20 20 20 20 20 20 20 20 20 20 20 20 70 72 6f 63              proc
2580: 65 73 73 65 64 2e 0d 0a 20 20 20 20 2d 2d 3e 0d  essed...    -->.
2590: 0a 20 20 20 20 3c 4e 65 74 46 78 33 35 53 65 74  .    <NetFx35Set
25a0: 74 69 6e 67 73 20 43 6f 6e 64 69 74 69 6f 6e 3d  tings Condition=
25b0: 22 27 24 28 4e 65 74 46 78 33 35 53 65 74 74 69  "'$(NetFx35Setti
25c0: 6e 67 73 29 27 20 3d 3d 20 27 27 22 3e 66 61 6c  ngs)' == ''">fal
25d0: 73 65 3c 2f 4e 65 74 46 78 33 35 53 65 74 74 69  se</NetFx35Setti
25e0: 6e 67 73 3e 0d 0a 0d 0a 20 20 20 20 3c 21 2d 2d  ngs>....    <!--
25f0: 0d 0a 20 20 20 20 20 20 20 20 4e 4f 54 45 3a 20  ..        NOTE: 
2600: 4c 6f 61 64 20 74 68 65 20 76 65 72 73 69 6f 6e  Load the version
2610: 2d 73 70 65 63 69 66 69 63 20 73 65 74 74 69 6e  -specific settin
2620: 67 73 20 66 6f 72 20 74 68 65 20 2e 4e 45 54 20  gs for the .NET 
2630: 46 72 61 6d 65 77 6f 72 6b 20 34 2e 30 3f 0d 0a  Framework 4.0?..
2640: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 42 79                By
2650: 20 64 65 66 61 75 6c 74 2c 20 74 68 69 73 20 69   default, this i
2660: 73 20 64 69 73 61 62 6c 65 64 2e 20 20 49 66 20  s disabled.  If 
2670: 74 68 69 73 20 69 73 20 65 6e 61 62 6c 65 64 20  this is enabled 
2680: 77 68 65 6e 20 63 6f 6d 70 69 6c 69 6e 67 0d 0a  when compiling..
2690: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 66 6f                fo
26a0: 72 20 74 68 65 20 2e 4e 45 54 20 46 72 61 6d 65  r the .NET Frame
26b0: 77 6f 72 6b 20 34 2e 30 2c 20 74 68 65 20 76 65  work 4.0, the ve
26c0: 72 73 69 6f 6e 2d 73 70 65 63 69 66 69 63 20 73  rsion-specific s
26d0: 65 74 74 69 6e 67 73 20 66 69 6c 65 0d 0a 20 20  ettings file..  
26e0: 20 20 20 20 20 20 20 20 20 20 20 20 22 53 51 4c              "SQL
26f0: 69 74 65 2e 4e 45 54 2e 53 65 74 74 69 6e 67 73  ite.NET.Settings
2700: 2e 74 61 72 67 65 74 73 2e 6e 65 74 46 78 34 30  .targets.netFx40
2710: 22 20 77 69 6c 6c 20 62 65 20 6c 6f 61 64 65 64  " will be loaded
2720: 20 69 66 20 69 74 20 69 73 0d 0a 20 20 20 20 20   if it is..     
2730: 20 20 20 20 20 20 20 20 20 61 63 74 75 61 6c 6c           actuall
2740: 79 20 70 72 65 73 65 6e 74 2c 20 62 65 66 6f 72  y present, befor
2750: 65 20 61 6e 79 20 6f 74 68 65 72 20 73 65 74 74  e any other sett
2760: 69 6e 67 73 20 69 6e 20 74 68 69 73 20 66 69 6c  ings in this fil
2770: 65 20 61 72 65 0d 0a 20 20 20 20 20 20 20 20 20  e are..         
2780: 20 20 20 20 20 70 72 6f 63 65 73 73 65 64 2e 0d       processed..
2790: 0a 20 20 20 20 2d 2d 3e 0d 0a 20 20 20 20 3c 4e  .    -->..    <N
27a0: 65 74 46 78 34 30 53 65 74 74 69 6e 67 73 20 43  etFx40Settings C
27b0: 6f 6e 64 69 74 69 6f 6e 3d 22 27 24 28 4e 65 74  ondition="'$(Net
27c0: 46 78 34 30 53 65 74 74 69 6e 67 73 29 27 20 3d  Fx40Settings)' =
27d0: 3d 20 27 27 22 3e 66 61 6c 73 65 3c 2f 4e 65 74  = ''">false</Net
27e0: 46 78 34 30 53 65 74 74 69 6e 67 73 3e 0d 0a 0d  Fx40Settings>...
27f0: 0a 20 20 20 20 3c 21 2d 2d 0d 0a 20 20 20 20 20  .    <!--..     
2800: 20 20 20 4e 4f 54 45 3a 20 4c 6f 61 64 20 74 68     NOTE: Load th
2810: 65 20 76 65 72 73 69 6f 6e 2d 73 70 65 63 69 66  e version-specif
2820: 69 63 20 73 65 74 74 69 6e 67 73 20 66 6f 72 20  ic settings for 
2830: 74 68 65 20 2e 4e 45 54 20 46 72 61 6d 65 77 6f  the .NET Framewo
2840: 72 6b 20 34 2e 35 3f 0d 0a 20 20 20 20 20 20 20  rk 4.5?..       
2850: 20 20 20 20 20 20 20 42 79 20 64 65 66 61 75 6c         By defaul
2860: 74 2c 20 74 68 69 73 20 69 73 20 64 69 73 61 62  t, this is disab
2870: 6c 65 64 2e 20 20 49 66 20 74 68 69 73 20 69 73  led.  If this is
2880: 20 65 6e 61 62 6c 65 64 20 77 68 65 6e 20 63 6f   enabled when co
2890: 6d 70 69 6c 69 6e 67 0d 0a 20 20 20 20 20 20 20  mpiling..       
28a0: 20 20 20 20 20 20 20 66 6f 72 20 74 68 65 20 2e         for the .
28b0: 4e 45 54 20 46 72 61 6d 65 77 6f 72 6b 20 34 2e  NET Framework 4.
28c0: 35 2c 20 74 68 65 20 76 65 72 73 69 6f 6e 2d 73  5, the version-s
28d0: 70 65 63 69 66 69 63 20 73 65 74 74 69 6e 67 73  pecific settings
28e0: 20 66 69 6c 65 0d 0a 20 20 20 20 20 20 20 20 20   file..         
28f0: 20 20 20 20 20 22 53 51 4c 69 74 65 2e 4e 45 54       "SQLite.NET
2900: 2e 53 65 74 74 69 6e 67 73 2e 74 61 72 67 65 74  .Settings.target
2910: 73 2e 6e 65 74 46 78 34 35 22 20 77 69 6c 6c 20  s.netFx45" will 
2920: 62 65 20 6c 6f 61 64 65 64 20 69 66 20 69 74 20  be loaded if it 
2930: 69 73 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20  is..            
2940: 20 20 61 63 74 75 61 6c 6c 79 20 70 72 65 73 65    actually prese
2950: 6e 74 2c 20 62 65 66 6f 72 65 20 61 6e 79 20 6f  nt, before any o
2960: 74 68 65 72 20 73 65 74 74 69 6e 67 73 20 69 6e  ther settings in
2970: 20 74 68 69 73 20 66 69 6c 65 20 61 72 65 0d 0a   this file are..
2980: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 70 72                pr
2990: 6f 63 65 73 73 65 64 2e 0d 0a 20 20 20 20 2d 2d  ocessed...    --
29a0: 3e 0d 0a 20 20 20 20 3c 4e 65 74 46 78 34 35 53  >..    <NetFx45S
29b0: 65 74 74 69 6e 67 73 20 43 6f 6e 64 69 74 69 6f  ettings Conditio
29c0: 6e 3d 22 27 24 28 4e 65 74 46 78 34 35 53 65 74  n="'$(NetFx45Set
29d0: 74 69 6e 67 73 29 27 20 3d 3d 20 27 27 22 3e 66  tings)' == ''">f
29e0: 61 6c 73 65 3c 2f 4e 65 74 46 78 34 35 53 65 74  alse</NetFx45Set
29f0: 74 69 6e 67 73 3e 0d 0a 0d 0a 20 20 20 20 3c 21  tings>....    <!
2a00: 2d 2d 0d 0a 20 20 20 20 20 20 20 20 4e 4f 54 45  --..        NOTE
2a10: 3a 20 4c 6f 61 64 20 74 68 65 20 76 65 72 73 69  : Load the versi
2a20: 6f 6e 2d 73 70 65 63 69 66 69 63 20 73 65 74 74  on-specific sett
2a30: 69 6e 67 73 20 66 6f 72 20 74 68 65 20 2e 4e 45  ings for the .NE
2a40: 54 20 46 72 61 6d 65 77 6f 72 6b 20 34 2e 35 2e  T Framework 4.5.
2a50: 31 3f 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20  1?..            
2a60: 20 20 42 79 20 64 65 66 61 75 6c 74 2c 20 74 68    By default, th
2a70: 69 73 20 69 73 20 64 69 73 61 62 6c 65 64 2e 20  is is disabled. 
2a80: 20 49 66 20 74 68 69 73 20 69 73 20 65 6e 61 62   If this is enab
2a90: 6c 65 64 20 77 68 65 6e 20 63 6f 6d 70 69 6c 69  led when compili
2aa0: 6e 67 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20  ng..            
2ab0: 20 20 66 6f 72 20 74 68 65 20 2e 4e 45 54 20 46    for the .NET F
2ac0: 72 61 6d 65 77 6f 72 6b 20 34 2e 35 2e 31 2c 20  ramework 4.5.1, 
2ad0: 74 68 65 20 76 65 72 73 69 6f 6e 2d 73 70 65 63  the version-spec
2ae0: 69 66 69 63 20 73 65 74 74 69 6e 67 73 20 66 69  ific settings fi
2af0: 6c 65 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20  le..            
2b00: 20 20 22 53 51 4c 69 74 65 2e 4e 45 54 2e 53 65    "SQLite.NET.Se
2b10: 74 74 69 6e 67 73 2e 74 61 72 67 65 74 73 2e 6e  ttings.targets.n
2b20: 65 74 46 78 34 35 31 22 20 77 69 6c 6c 20 62 65  etFx451" will be
2b30: 20 6c 6f 61 64 65 64 20 69 66 20 69 74 20 69 73   loaded if it is
2b40: 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20  ..              
2b50: 61 63 74 75 61 6c 6c 79 20 70 72 65 73 65 6e 74  actually present
2b60: 2c 20 62 65 66 6f 72 65 20 61 6e 79 20 6f 74 68  , before any oth
2b70: 65 72 20 73 65 74 74 69 6e 67 73 20 69 6e 20 74  er settings in t
2b80: 68 69 73 20 66 69 6c 65 20 61 72 65 0d 0a 20 20  his file are..  
2b90: 20 20 20 20 20 20 20 20 20 20 20 20 70 72 6f 63              proc
2ba0: 65 73 73 65 64 2e 0d 0a 20 20 20 20 2d 2d 3e 0d  essed...    -->.
2bb0: 0a 20 20 20 20 3c 4e 65 74 46 78 34 35 31 53 65  .    <NetFx451Se
2bc0: 74 74 69 6e 67 73 20 43 6f 6e 64 69 74 69 6f 6e  ttings Condition
2bd0: 3d 22 27 24 28 4e 65 74 46 78 34 35 31 53 65 74  ="'$(NetFx451Set
2be0: 74 69 6e 67 73 29 27 20 3d 3d 20 27 27 22 3e 66  tings)' == ''">f
2bf0: 61 6c 73 65 3c 2f 4e 65 74 46 78 34 35 31 53 65  alse</NetFx451Se
2c00: 74 74 69 6e 67 73 3e 0d 0a 0d 0a 20 20 20 20 3c  ttings>....    <
2c10: 21 2d 2d 0d 0a 20 20 20 20 20 20 20 20 4e 4f 54  !--..        NOT
2c20: 45 3a 20 4c 6f 61 64 20 74 68 65 20 76 65 72 73  E: Load the vers
2c30: 69 6f 6e 2d 73 70 65 63 69 66 69 63 20 73 65 74  ion-specific set
2c40: 74 69 6e 67 73 20 66 6f 72 20 74 68 65 20 2e 4e  tings for the .N
2c50: 45 54 20 46 72 61 6d 65 77 6f 72 6b 20 34 2e 35  ET Framework 4.5
2c60: 2e 32 3f 0d 0a 20 20 20 20 20 20 20 20 20 20 20  .2?..           
2c70: 20 20 20 42 79 20 64 65 66 61 75 6c 74 2c 20 74     By default, t
2c80: 68 69 73 20 69 73 20 64 69 73 61 62 6c 65 64 2e  his is disabled.
2c90: 20 20 49 66 20 74 68 69 73 20 69 73 20 65 6e 61    If this is ena
2ca0: 62 6c 65 64 20 77 68 65 6e 20 63 6f 6d 70 69 6c  bled when compil
2cb0: 69 6e 67 0d 0a 20 20 20 20 20 20 20 20 20 20 20  ing..           
2cc0: 20 20 20 66 6f 72 20 74 68 65 20 2e 4e 45 54 20     for the .NET 
2cd0: 46 72 61 6d 65 77 6f 72 6b 20 34 2e 35 2e 32 2c  Framework 4.5.2,
2ce0: 20 74 68 65 20 76 65 72 73 69 6f 6e 2d 73 70 65   the version-spe
2cf0: 63 69 66 69 63 20 73 65 74 74 69 6e 67 73 20 66  cific settings f
2d00: 69 6c 65 0d 0a 20 20 20 20 20 20 20 20 20 20 20  ile..           
2d10: 20 20 20 22 53 51 4c 69 74 65 2e 4e 45 54 2e 53     "SQLite.NET.S
2d20: 65 74 74 69 6e 67 73 2e 74 61 72 67 65 74 73 2e  ettings.targets.
2d30: 6e 65 74 46 78 34 35 32 22 20 77 69 6c 6c 20 62  netFx452" will b
2d40: 65 20 6c 6f 61 64 65 64 20 69 66 20 69 74 20 69  e loaded if it i
2d50: 73 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20  s..             
2d60: 20 61 63 74 75 61 6c 6c 79 20 70 72 65 73 65 6e   actually presen
2d70: 74 2c 20 62 65 66 6f 72 65 20 61 6e 79 20 6f 74  t, before any ot
2d80: 68 65 72 20 73 65 74 74 69 6e 67 73 20 69 6e 20  her settings in 
2d90: 74 68 69 73 20 66 69 6c 65 20 61 72 65 0d 0a 20  this file are.. 
2da0: 20 20 20 20 20 20 20 20 20 20 20 20 20 70 72 6f               pro
2db0: 63 65 73 73 65 64 2e 0d 0a 20 20 20 20 2d 2d 3e  cessed...    -->
2dc0: 0d 0a 20 20 20 20 3c 4e 65 74 46 78 34 35 32 53  ..    <NetFx452S
2dd0: 65 74 74 69 6e 67 73 20 43 6f 6e 64 69 74 69 6f  ettings Conditio
2de0: 6e 3d 22 27 24 28 4e 65 74 46 78 34 35 32 53 65  n="'$(NetFx452Se
2df0: 74 74 69 6e 67 73 29 27 20 3d 3d 20 27 27 22 3e  ttings)' == ''">
2e00: 66 61 6c 73 65 3c 2f 4e 65 74 46 78 34 35 32 53  false</NetFx452S
2e10: 65 74 74 69 6e 67 73 3e 0d 0a 0d 0a 20 20 20 20  ettings>....    
2e20: 3c 21 2d 2d 0d 0a 20 20 20 20 20 20 20 20 4e 4f  <!--..        NO
2e30: 54 45 3a 20 4c 6f 61 64 20 74 68 65 20 76 65 72  TE: Load the ver
2e40: 73 69 6f 6e 2d 73 70 65 63 69 66 69 63 20 73 65  sion-specific se
2e50: 74 74 69 6e 67 73 20 66 6f 72 20 74 68 65 20 2e  ttings for the .
2e60: 4e 45 54 20 46 72 61 6d 65 77 6f 72 6b 20 34 2e  NET Framework 4.
2e70: 36 3f 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20  6?..            
2e80: 20 20 42 79 20 64 65 66 61 75 6c 74 2c 20 74 68    By default, th
2e90: 69 73 20 69 73 20 64 69 73 61 62 6c 65 64 2e 20  is is disabled. 
2ea0: 20 49 66 20 74 68 69 73 20 69 73 20 65 6e 61 62   If this is enab
2eb0: 6c 65 64 20 77 68 65 6e 20 63 6f 6d 70 69 6c 69  led when compili
2ec0: 6e 67 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20  ng..            
2ed0: 20 20 66 6f 72 20 74 68 65 20 2e 4e 45 54 20 46    for the .NET F
2ee0: 72 61 6d 65 77 6f 72 6b 20 34 2e 36 2c 20 74 68  ramework 4.6, th
2ef0: 65 20 76 65 72 73 69 6f 6e 2d 73 70 65 63 69 66  e version-specif
2f00: 69 63 20 73 65 74 74 69 6e 67 73 20 66 69 6c 65  ic settings file
2f10: 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20  ..              
2f20: 22 53 51 4c 69 74 65 2e 4e 45 54 2e 53 65 74 74  "SQLite.NET.Sett
2f30: 69 6e 67 73 2e 74 61 72 67 65 74 73 2e 6e 65 74  ings.targets.net
2f40: 46 78 34 36 22 20 77 69 6c 6c 20 62 65 20 6c 6f  Fx46" will be lo
2f50: 61 64 65 64 20 69 66 20 69 74 20 69 73 0d 0a 20  aded if it is.. 
2f60: 20 20 20 20 20 20 20 20 20 20 20 20 20 61 63 74               act
2f70: 75 61 6c 6c 79 20 70 72 65 73 65 6e 74 2c 20 62  ually present, b
2f80: 65 66 6f 72 65 20 61 6e 79 20 6f 74 68 65 72 20  efore any other 
2f90: 73 65 74 74 69 6e 67 73 20 69 6e 20 74 68 69 73  settings in this
2fa0: 20 66 69 6c 65 20 61 72 65 0d 0a 20 20 20 20 20   file are..     
2fb0: 20 20 20 20 20 20 20 20 20 70 72 6f 63 65 73 73           process
2fc0: 65 64 2e 0d 0a 20 20 20 20 2d 2d 3e 0d 0a 20 20  ed...    -->..  
2fd0: 20 20 3c 4e 65 74 46 78 34 36 53 65 74 74 69 6e    <NetFx46Settin
2fe0: 67 73 20 43 6f 6e 64 69 74 69 6f 6e 3d 22 27 24  gs Condition="'$
2ff0: 28 4e 65 74 46 78 34 36 53 65 74 74 69 6e 67 73  (NetFx46Settings
3000: 29 27 20 3d 3d 20 27 27 22 3e 66 61 6c 73 65 3c  )' == ''">false<
3010: 2f 4e 65 74 46 78 34 36 53 65 74 74 69 6e 67 73  /NetFx46Settings
3020: 3e 0d 0a 20 20 3c 2f 50 72 6f 70 65 72 74 79 47  >..  </PropertyG
3030: 72 6f 75 70 3e 0d 0a 0d 0a 20 20 3c 21 2d 2d 0d  roup>....  <!--.
3040: 0a 20 20 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a  .  *************
3050: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a  ****************
3060: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a  ****************
3070: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a  ****************
3080: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a  ****************
3090: 2a 0d 0a 20 20 2a 2a 20 20 20 20 20 20 20 20 20  *..  **         
30a0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
30b0: 20 20 20 46 65 61 74 75 72 65 20 50 72 6f 70 65     Feature Prope
30c0: 72 74 69 65 73 20 20 20 20 20 20 20 20 20 20 20  rties           
30d0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
30e0: 20 2a 2a 0d 0a 20 20 2a 2a 2a 2a 2a 2a 2a 2a 2a   **..  *********
30f0: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a  ****************
3100: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a  ****************
3110: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a  ****************
3120: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a  ****************
3130: 2a 2a 2a 2a 2a 0d 0a 20 20 2d 2d 3e 0d 0a 0d 0a  *****..  -->....
3140: 20 20 3c 50 72 6f 70 65 72 74 79 47 72 6f 75 70    <PropertyGroup
3150: 3e 0d 0a 20 20 20 20 3c 21 2d 2d 0d 0a 20 20 20  >..    <!--..   
3160: 20 20 20 20 20 4e 4f 54 45 3a 20 45 6e 61 62 6c       NOTE: Enabl
3170: 65 20 65 78 74 72 61 20 69 6e 74 65 72 6e 61 6c  e extra internal
3180: 20 73 74 61 74 65 20 63 68 65 63 6b 69 6e 67 20   state checking 
3190: 66 6f 72 20 74 68 65 20 70 75 62 6c 69 63 20 6d  for the public m
31a0: 65 6d 62 65 72 73 20 6f 66 0d 0a 20 20 20 20 20  embers of..     
31b0: 20 20 20 20 20 20 20 20 20 73 65 76 65 72 61 6c           several
31c0: 20 6b 65 79 20 63 6c 61 73 73 65 73 20 74 68 61   key classes tha
31d0: 74 20 75 73 65 20 61 20 63 6f 6e 6e 65 63 74 69  t use a connecti
31e0: 6f 6e 2e 20 20 42 79 20 64 65 66 61 75 6c 74 2c  on.  By default,
31f0: 20 74 68 69 73 20 69 73 0d 0a 20 20 20 20 20 20   this is..      
3200: 20 20 20 20 20 20 20 20 64 69 73 61 62 6c 65 64          disabled
3210: 2e 0d 0a 20 20 20 20 2d 2d 3e 0d 0a 20 20 20 20  ...    -->..    
3220: 3c 43 68 65 63 6b 53 74 61 74 65 20 43 6f 6e 64  <CheckState Cond
3230: 69 74 69 6f 6e 3d 22 27 24 28 43 68 65 63 6b 53  ition="'$(CheckS
3240: 74 61 74 65 29 27 20 3d 3d 20 27 27 22 3e 66 61  tate)' == ''">fa
3250: 6c 73 65 3c 2f 43 68 65 63 6b 53 74 61 74 65 3e  lse</CheckState>
3260: 0d 0a 0d 0a 20 20 20 20 3c 21 2d 2d 0d 0a 20 20  ....    <!--..  
3270: 20 20 20 20 20 20 4e 4f 54 45 3a 20 45 6e 61 62        NOTE: Enab
3280: 6c 65 20 63 6f 75 6e 74 69 6e 67 20 6f 66 20 61  le counting of a
3290: 6c 6c 20 6f 62 6a 65 63 74 20 69 6e 73 74 61 6e  ll object instan
32a0: 63 65 73 20 66 6f 72 20 74 68 65 20 43 72 69 74  ces for the Crit
32b0: 69 63 61 6c 48 61 6e 64 6c 65 0d 0a 20 20 20 20  icalHandle..    
32c0: 20 20 20 20 20 20 20 20 20 20 64 65 72 69 76 65            derive
32d0: 64 20 63 6c 61 73 73 65 73 3f 20 20 42 79 20 64  d classes?  By d
32e0: 65 66 61 75 6c 74 2c 20 74 68 69 73 20 69 73 20  efault, this is 
32f0: 64 69 73 61 62 6c 65 64 2e 20 20 49 66 20 74 68  disabled.  If th
3300: 69 73 20 69 73 0d 0a 20 20 20 20 20 20 20 20 20  is is..         
3310: 20 20 20 20 20 65 6e 61 62 6c 65 64 2c 20 74 68       enabled, th
3320: 69 73 20 6c 69 62 72 61 72 79 20 77 69 6c 6c 20  is library will 
3330: 6b 65 65 70 20 63 6f 75 6e 74 20 6f 66 20 61 6c  keep count of al
3340: 6c 20 6e 6f 6e 2d 64 69 73 70 6f 73 65 64 20 6f  l non-disposed o
3350: 62 6a 65 63 74 0d 0a 20 20 20 20 20 20 20 20 20  bject..         
3360: 20 20 20 20 20 69 6e 73 74 61 6e 63 65 73 20 66       instances f
3370: 6f 72 20 61 6c 6c 20 74 68 65 20 43 72 69 74 69  or all the Criti
3380: 63 61 6c 48 61 6e 64 6c 65 20 64 65 72 69 76 65  calHandle derive
3390: 64 20 63 6c 61 73 73 65 73 2e 20 20 45 61 63 68  d classes.  Each
33a0: 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20  ..              
33b0: 63 6f 75 6e 74 65 72 20 77 69 6c 6c 20 62 65 20  counter will be 
33c0: 69 6e 63 72 65 6d 65 6e 74 65 64 20 77 68 65 6e  incremented when
33d0: 20 61 6e 20 69 6e 73 74 61 6e 63 65 20 6f 66 20   an instance of 
33e0: 74 68 65 20 61 73 73 6f 63 69 61 74 65 64 0d 0a  the associated..
33f0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 63 72                cr
3400: 69 74 69 63 61 6c 20 68 61 6e 64 6c 65 20 63 6c  itical handle cl
3410: 61 73 73 20 69 73 20 63 6f 6e 73 74 72 75 63 74  ass is construct
3420: 65 64 20 61 6e 64 20 64 65 63 72 65 6d 65 6e 74  ed and decrement
3430: 65 64 20 77 68 65 6e 20 74 68 65 0d 0a 20 20 20  ed when the..   
3440: 20 20 20 20 20 20 20 20 20 20 20 52 65 6c 65 61             Relea
3450: 73 65 48 61 6e 64 6c 65 20 6d 65 74 68 6f 64 20  seHandle method 
3460: 69 73 20 63 6f 6d 70 6c 65 74 65 64 20 73 75 63  is completed suc
3470: 63 65 73 73 66 75 6c 6c 79 20 6f 6e 20 61 6e 20  cessfully on an 
3480: 69 6e 73 74 61 6e 63 65 2e 0d 0a 20 20 20 20 20  instance...     
3490: 20 20 20 20 20 20 20 20 20 54 68 65 73 65 20 63           These c
34a0: 6f 75 6e 74 73 20 61 72 65 20 69 6e 74 65 6e 64  ounts are intend
34b0: 65 64 20 74 6f 20 62 65 20 75 73 65 64 20 62 79  ed to be used by
34c0: 20 74 68 65 20 74 65 73 74 20 73 75 69 74 65 20   the test suite 
34d0: 74 6f 20 64 65 74 65 63 74 0d 0a 20 20 20 20 20  to detect..     
34e0: 20 20 20 20 20 20 20 20 20 70 6f 73 73 69 62 6c           possibl
34f0: 65 20 72 65 73 6f 75 72 63 65 20 6c 65 61 6b 73  e resource leaks
3500: 2e 0d 0a 20 20 20 20 2d 2d 3e 0d 0a 20 20 20 20  ...    -->..    
3510: 3c 43 6f 75 6e 74 48 61 6e 64 6c 65 20 43 6f 6e  <CountHandle Con
3520: 64 69 74 69 6f 6e 3d 22 27 24 28 43 6f 75 6e 74  dition="'$(Count
3530: 48 61 6e 64 6c 65 29 27 20 3d 3d 20 27 27 22 3e  Handle)' == ''">
3540: 66 61 6c 73 65 3c 2f 43 6f 75 6e 74 48 61 6e 64  false</CountHand
3550: 6c 65 3e 0d 0a 0d 0a 20 20 20 20 3c 21 2d 2d 0d  le>....    <!--.
3560: 0a 20 20 20 20 20 20 20 20 4e 4f 54 45 3a 20 45  .        NOTE: E
3570: 6e 61 62 6c 65 20 74 72 61 63 6b 69 6e 67 20 6f  nable tracking o
3580: 66 20 61 6c 6c 20 6f 75 74 73 74 61 6e 64 69 6e  f all outstandin
3590: 67 20 62 79 74 65 73 20 61 6c 6c 6f 63 61 74 65  g bytes allocate
35a0: 64 20 62 79 20 74 68 65 0d 0a 20 20 20 20 20 20  d by the..      
35b0: 20 20 20 20 20 20 20 20 53 51 4c 69 74 65 4d 65          SQLiteMe
35c0: 6d 6f 72 79 20 63 6c 61 73 73 2e 20 20 42 79 20  mory class.  By 
35d0: 64 65 66 61 75 6c 74 2c 20 74 68 69 73 20 69 73  default, this is
35e0: 20 64 69 73 61 62 6c 65 64 2e 20 20 49 66 20 74   disabled.  If t
35f0: 68 69 73 20 69 73 0d 0a 20 20 20 20 20 20 20 20  his is..        
3600: 20 20 20 20 20 20 65 6e 61 62 6c 65 64 2c 20 74        enabled, t
3610: 68 69 73 20 6c 69 62 72 61 72 79 20 77 69 6c 6c  his library will
3620: 20 6b 65 65 70 20 74 72 61 63 6b 20 6f 66 20 61   keep track of a
3630: 6c 6c 20 6f 75 74 73 74 61 6e 64 69 6e 67 20 62  ll outstanding b
3640: 79 74 65 73 0d 0a 20 20 20 20 20 20 20 20 20 20  ytes..          
3650: 20 20 20 20 61 6c 6c 6f 63 61 74 65 64 20 62 79      allocated by
3660: 20 74 68 65 20 53 51 4c 69 74 65 4d 65 6d 6f 72   the SQLiteMemor
3670: 79 20 63 6c 61 73 73 2e 20 20 54 68 69 73 20 68  y class.  This h
3680: 61 73 20 74 68 65 20 70 6f 74 65 6e 74 69 61 6c  as the potential
3690: 20 74 6f 0d 0a 20 20 20 20 20 20 20 20 20 20 20   to..           
36a0: 20 20 20 73 6c 6f 77 20 64 6f 77 6e 20 74 68 65     slow down the
36b0: 20 6c 69 62 72 61 72 79 20 61 20 62 69 74 2e 0d   library a bit..
36c0: 0a 20 20 20 20 2d 2d 3e 0d 0a 20 20 20 20 3c 54  .    -->..    <T
36d0: 72 61 63 6b 4d 65 6d 6f 72 79 42 79 74 65 73 20  rackMemoryBytes 
36e0: 43 6f 6e 64 69 74 69 6f 6e 3d 22 27 24 28 54 72  Condition="'$(Tr
36f0: 61 63 6b 4d 65 6d 6f 72 79 42 79 74 65 73 29 27  ackMemoryBytes)'
3700: 20 3d 3d 20 27 27 22 3e 66 61 6c 73 65 3c 2f 54   == ''">false</T
3710: 72 61 63 6b 4d 65 6d 6f 72 79 42 79 74 65 73 3e  rackMemoryBytes>
3720: 0d 0a 0d 0a 20 20 20 20 3c 21 2d 2d 0d 0a 20 20  ....    <!--..  
3730: 20 20 20 20 20 20 4e 4f 54 45 3a 20 46 6f 72 20        NOTE: For 
3740: 69 6e 74 65 72 61 63 74 69 6f 6e 20 77 69 74 68  interaction with
3750: 20 74 68 65 20 6e 61 74 69 76 65 20 53 51 4c 69   the native SQLi
3760: 74 65 20 69 6d 70 6c 65 6d 65 6e 74 61 74 69 6f  te implementatio
3770: 6e 2c 20 75 73 65 20 74 68 65 0d 0a 20 20 20 20  n, use the..    
3780: 20 20 20 20 20 20 20 20 20 20 63 75 73 74 6f 6d            custom
3790: 20 62 75 69 6c 74 20 69 6e 74 65 72 6f 70 20 44   built interop D
37a0: 4c 4c 20 28 69 2e 65 2e 20 22 53 51 4c 69 74 65  LL (i.e. "SQLite
37b0: 2e 49 6e 74 65 72 6f 70 2e 64 6c 6c 22 29 3f 20  .Interop.dll")? 
37c0: 20 42 79 20 64 65 66 61 75 6c 74 2c 0d 0a 20 20   By default,..  
37d0: 20 20 20 20 20 20 20 20 20 20 20 20 74 68 69 73              this
37e0: 20 69 73 20 65 6e 61 62 6c 65 64 2e 20 20 54 68   is enabled.  Th
37f0: 69 73 20 70 72 6f 70 65 72 74 79 20 69 73 20 6d  is property is m
3800: 75 74 75 61 6c 6c 79 20 65 78 63 6c 75 73 69 76  utually exclusiv
3810: 65 20 77 69 74 68 20 74 68 65 0d 0a 20 20 20 20  e with the..    
3820: 20 20 20 20 20 20 20 20 20 20 22 55 73 65 53 71            "UseSq
3830: 6c 69 74 65 53 74 61 6e 64 61 72 64 22 20 6f 6e  liteStandard" on
3840: 65 2c 20 62 65 6c 6f 77 2e 20 20 54 68 69 73 20  e, below.  This 
3850: 73 68 6f 75 6c 64 20 61 6c 77 61 79 73 20 62 65  should always be
3860: 20 64 69 73 61 62 6c 65 64 20 69 6e 0d 0a 20 20   disabled in..  
3870: 20 20 20 20 20 20 20 20 20 20 20 20 74 68 65 20              the 
3880: 70 72 6f 6a 65 63 74 20 66 69 6c 65 20 74 68 61  project file tha
3890: 74 20 62 75 69 6c 64 73 20 74 68 65 20 4e 65 74  t builds the Net
38a0: 4d 6f 64 75 6c 65 20 74 61 72 67 65 74 2e 0d 0a  Module target...
38b0: 20 20 20 20 2d 2d 3e 0d 0a 20 20 20 20 3c 55 73      -->..    <Us
38c0: 65 49 6e 74 65 72 6f 70 44 6c 6c 20 43 6f 6e 64  eInteropDll Cond
38d0: 69 74 69 6f 6e 3d 22 27 24 28 55 73 65 49 6e 74  ition="'$(UseInt
38e0: 65 72 6f 70 44 6c 6c 29 27 20 3d 3d 20 27 27 22  eropDll)' == ''"
38f0: 3e 74 72 75 65 3c 2f 55 73 65 49 6e 74 65 72 6f  >true</UseIntero
3900: 70 44 6c 6c 3e 0d 0a 0d 0a 20 20 20 20 3c 21 2d  pDll>....    <!-
3910: 2d 0d 0a 20 20 20 20 20 20 20 20 4e 4f 54 45 3a  -..        NOTE:
3920: 20 46 6f 72 20 69 6e 74 65 72 61 63 74 69 6f 6e   For interaction
3930: 20 77 69 74 68 20 74 68 65 20 6e 61 74 69 76 65   with the native
3940: 20 53 51 4c 69 74 65 20 69 6d 70 6c 65 6d 65 6e   SQLite implemen
3950: 74 61 74 69 6f 6e 2c 20 75 73 65 20 74 68 65 0d  tation, use the.
3960: 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 73  .              s
3970: 71 6c 69 74 65 33 5f 70 72 65 70 61 72 65 5f 76  qlite3_prepare_v
3980: 32 28 29 20 66 75 6e 63 74 69 6f 6e 20 77 68 65  2() function whe
3990: 6e 20 70 72 65 70 61 72 69 6e 67 20 71 75 65 72  n preparing quer
39a0: 69 65 73 3f 20 20 42 79 20 64 65 66 61 75 6c 74  ies?  By default
39b0: 2c 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20  ,..             
39c0: 20 74 68 69 73 20 69 73 20 65 6e 61 62 6c 65 64   this is enabled
39d0: 2e 20 20 57 68 65 6e 20 75 73 69 6e 67 20 61 20  .  When using a 
39e0: 6e 61 74 69 76 65 20 53 51 4c 69 74 65 20 69 6d  native SQLite im
39f0: 70 6c 65 6d 65 6e 74 61 74 69 6f 6e 20 70 72 69  plementation pri
3a00: 6f 72 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20  or..            
3a10: 20 20 74 6f 20 76 65 72 73 69 6f 6e 20 33 2e 33    to version 3.3
3a20: 2e 39 2c 20 74 68 69 73 20 6d 75 73 74 20 62 65  .9, this must be
3a30: 20 64 69 73 61 62 6c 65 64 2e 0d 0a 20 20 20 20   disabled...    
3a40: 2d 2d 3e 0d 0a 20 20 20 20 3c 55 73 65 50 72 65  -->..    <UsePre
3a50: 70 61 72 65 56 32 20 43 6f 6e 64 69 74 69 6f 6e  pareV2 Condition
3a60: 3d 22 27 24 28 55 73 65 50 72 65 70 61 72 65 56  ="'$(UsePrepareV
3a70: 32 29 27 20 3d 3d 20 27 27 22 3e 74 72 75 65 3c  2)' == ''">true<
3a80: 2f 55 73 65 50 72 65 70 61 72 65 56 32 3e 0d 0a  /UsePrepareV2>..
3a90: 0d 0a 20 20 20 20 3c 21 2d 2d 0d 0a 20 20 20 20  ..    <!--..    
3aa0: 20 20 20 20 4e 4f 54 45 3a 20 46 6f 72 20 69 6e      NOTE: For in
3ab0: 74 65 72 61 63 74 69 6f 6e 20 77 69 74 68 20 74  teraction with t
3ac0: 68 65 20 6e 61 74 69 76 65 20 53 51 4c 69 74 65  he native SQLite
3ad0: 20 69 6d 70 6c 65 6d 65 6e 74 61 74 69 6f 6e 2c   implementation,
3ae0: 20 75 73 65 20 74 68 65 0d 0a 20 20 20 20 20 20   use the..      
3af0: 20 20 20 20 20 20 20 20 73 74 61 6e 64 61 72 64          standard
3b00: 20 44 4c 4c 20 28 69 2e 65 2e 20 22 73 71 6c 69   DLL (i.e. "sqli
3b10: 74 65 33 2e 64 6c 6c 22 29 3f 20 20 42 79 20 64  te3.dll")?  By d
3b20: 65 66 61 75 6c 74 2c 20 74 68 69 73 20 69 73 20  efault, this is 
3b30: 64 69 73 61 62 6c 65 64 2e 0d 0a 20 20 20 20 20  disabled...     
3b40: 20 20 20 20 20 20 20 20 20 54 68 69 73 20 70 72           This pr
3b50: 6f 70 65 72 74 79 20 69 73 20 6d 75 74 75 61 6c  operty is mutual
3b60: 6c 79 20 65 78 63 6c 75 73 69 76 65 20 77 69 74  ly exclusive wit
3b70: 68 20 74 68 65 20 22 55 73 65 49 6e 74 65 72 6f  h the "UseIntero
3b80: 70 44 6c 6c 22 20 6f 6e 65 2c 0d 0a 20 20 20 20  pDll" one,..    
3b90: 20 20 20 20 20 20 20 20 20 20 61 62 6f 76 65 2e            above.
3ba0: 20 20 54 68 69 73 20 73 68 6f 75 6c 64 20 61 6c    This should al
3bb0: 77 61 79 73 20 62 65 20 64 69 73 61 62 6c 65 64  ways be disabled
3bc0: 20 69 6e 20 74 68 65 20 70 72 6f 6a 65 63 74 20   in the project 
3bd0: 66 69 6c 65 20 74 68 61 74 0d 0a 20 20 20 20 20  file that..     
3be0: 20 20 20 20 20 20 20 20 20 62 75 69 6c 64 73 20           builds 
3bf0: 74 68 65 20 4e 65 74 4d 6f 64 75 6c 65 20 74 61  the NetModule ta
3c00: 72 67 65 74 2e 0d 0a 20 20 20 20 2d 2d 3e 0d 0a  rget...    -->..
3c10: 20 20 20 20 3c 55 73 65 53 71 6c 69 74 65 53 74      <UseSqliteSt
3c20: 61 6e 64 61 72 64 20 43 6f 6e 64 69 74 69 6f 6e  andard Condition
3c30: 3d 22 27 24 28 55 73 65 53 71 6c 69 74 65 53 74  ="'$(UseSqliteSt
3c40: 61 6e 64 61 72 64 29 27 20 3d 3d 20 27 27 22 3e  andard)' == ''">
3c50: 66 61 6c 73 65 3c 2f 55 73 65 53 71 6c 69 74 65  false</UseSqlite
3c60: 53 74 61 6e 64 61 72 64 3e 0d 0a 0d 0a 20 20 20  Standard>....   
3c70: 20 3c 21 2d 2d 0d 0a 20 20 20 20 20 20 20 20 4e   <!--..        N
3c80: 4f 54 45 3a 20 49 73 20 74 68 65 20 70 72 6f 6a  OTE: Is the proj
3c90: 65 63 74 20 62 65 69 6e 67 20 62 75 69 6c 74 20  ect being built 
3ca0: 74 6f 20 73 75 70 70 6f 72 74 20 74 68 65 20 2e  to support the .
3cb0: 4e 45 54 20 43 6f 6d 70 61 63 74 20 46 72 61 6d  NET Compact Fram
3cc0: 65 77 6f 72 6b 3f 0d 0a 20 20 20 20 2d 2d 3e 0d  ework?..    -->.
3cd0: 0a 20 20 20 20 3c 49 73 43 6f 6d 70 61 63 74 46  .    <IsCompactF
3ce0: 72 61 6d 65 77 6f 72 6b 20 43 6f 6e 64 69 74 69  ramework Conditi
3cf0: 6f 6e 3d 22 27 24 28 49 73 43 6f 6d 70 61 63 74  on="'$(IsCompact
3d00: 46 72 61 6d 65 77 6f 72 6b 29 27 20 3d 3d 20 27  Framework)' == '
3d10: 27 22 3e 66 61 6c 73 65 3c 2f 49 73 43 6f 6d 70  '">false</IsComp
3d20: 61 63 74 46 72 61 6d 65 77 6f 72 6b 3e 0d 0a 0d  actFramework>...
3d30: 0a 20 20 20 20 3c 21 2d 2d 0d 0a 20 20 20 20 20  .    <!--..     
3d40: 20 20 20 4e 4f 54 45 3a 20 45 6d 69 74 20 61 6e     NOTE: Emit an
3d50: 20 41 73 73 65 6d 62 6c 79 46 6c 61 67 73 20 61   AssemblyFlags a
3d60: 74 74 72 69 62 75 74 65 20 74 68 61 74 20 69 6e  ttribute that in
3d70: 63 6c 75 64 65 73 20 74 68 65 20 52 65 74 61 72  cludes the Retar
3d80: 67 65 74 61 62 6c 65 0d 0a 20 20 20 20 20 20 20  getable..       
3d90: 20 20 20 20 20 20 20 66 6c 61 67 20 66 72 6f 6d         flag from
3da0: 20 74 68 65 20 41 73 73 65 6d 62 6c 79 4e 61 6d   the AssemblyNam
3db0: 65 46 6c 61 67 73 20 65 6e 75 6d 65 72 61 74 69  eFlags enumerati
3dc0: 6f 6e 3f 0d 0a 20 20 20 20 2d 2d 3e 0d 0a 20 20  on?..    -->..  
3dd0: 20 20 3c 49 73 52 65 74 61 72 67 65 74 61 62 6c    <IsRetargetabl
3de0: 65 20 43 6f 6e 64 69 74 69 6f 6e 3d 22 27 24 28  e Condition="'$(
3df0: 49 73 52 65 74 61 72 67 65 74 61 62 6c 65 29 27  IsRetargetable)'
3e00: 20 3d 3d 20 27 27 22 3e 66 61 6c 73 65 3c 2f 49   == ''">false</I
3e10: 73 52 65 74 61 72 67 65 74 61 62 6c 65 3e 0d 0a  sRetargetable>..
3e20: 0d 0a 20 20 20 20 3c 21 2d 2d 0d 0a 20 20 20 20  ..    <!--..    
3e30: 20 20 20 20 4e 4f 54 45 3a 20 54 68 72 6f 77 20      NOTE: Throw 
3e40: 61 6e 20 65 78 63 65 70 74 69 6f 6e 20 69 66 20  an exception if 
3e50: 61 6e 20 6f 62 6a 65 63 74 20 68 61 73 20 61 6c  an object has al
3e60: 72 65 61 64 79 20 62 65 65 6e 20 64 69 73 70 6f  ready been dispo
3e70: 73 65 64 3f 20 20 42 79 0d 0a 20 20 20 20 20 20  sed?  By..      
3e80: 20 20 20 20 20 20 20 20 64 65 66 61 75 6c 74 2c          default,
3e90: 20 74 68 69 73 20 69 73 20 65 6e 61 62 6c 65 64   this is enabled
3ea0: 2e 20 20 49 66 20 74 68 69 73 20 69 73 20 64 69  .  If this is di
3eb0: 73 61 62 6c 65 64 2c 20 61 6e 20 65 78 63 65 70  sabled, an excep
3ec0: 74 69 6f 6e 20 77 69 6c 6c 0d 0a 20 20 20 20 20  tion will..     
3ed0: 20 20 20 20 20 20 20 20 20 6e 6f 74 20 62 65 20           not be 
3ee0: 74 68 72 6f 77 6e 20 77 68 65 6e 20 61 20 53 51  thrown when a SQ
3ef0: 4c 69 74 65 20 6f 62 6a 65 63 74 20 77 68 69 63  Lite object whic
3f00: 68 20 68 61 73 20 61 6c 72 65 61 64 79 20 62 65  h has already be
3f10: 65 6e 20 64 69 73 70 6f 73 65 64 0d 0a 20 20 20  en disposed..   
3f20: 20 20 20 20 20 20 20 20 20 20 20 69 73 20 61 63             is ac
3f30: 63 65 73 73 65 64 2e 0d 0a 20 20 20 20 2d 2d 3e  cessed...    -->
3f40: 0d 0a 20 20 20 20 3c 54 68 72 6f 77 4f 6e 44 69  ..    <ThrowOnDi
3f50: 73 70 6f 73 65 64 20 43 6f 6e 64 69 74 69 6f 6e  sposed Condition
3f60: 3d 22 27 24 28 54 68 72 6f 77 4f 6e 44 69 73 70  ="'$(ThrowOnDisp
3f70: 6f 73 65 64 29 27 20 3d 3d 20 27 27 22 3e 74 72  osed)' == ''">tr
3f80: 75 65 3c 2f 54 68 72 6f 77 4f 6e 44 69 73 70 6f  ue</ThrowOnDispo
3f90: 73 65 64 3e 0d 0a 0d 0a 20 20 20 20 3c 21 2d 2d  sed>....    <!--
3fa0: 0d 0a 20 20 20 20 20 20 20 20 4e 4f 54 45 3a 20  ..        NOTE: 
3fb0: 2a 45 58 50 45 52 49 4d 45 4e 54 41 4c 2a 20 41  *EXPERIMENTAL* A
3fc0: 74 74 65 6d 70 74 20 74 6f 20 70 72 65 2d 6c 6f  ttempt to pre-lo
3fd0: 61 64 20 74 68 65 20 6e 61 74 69 76 65 20 53 51  ad the native SQ
3fe0: 4c 69 74 65 20 6c 69 62 72 61 72 79 3f 20 20 42  Lite library?  B
3ff0: 79 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20  y..             
4000: 20 64 65 66 61 75 6c 74 2c 20 74 68 69 73 20 69   default, this i
4010: 73 20 65 6e 61 62 6c 65 64 2e 20 20 49 66 20 74  s enabled.  If t
4020: 68 69 73 20 69 73 20 64 69 73 61 62 6c 65 64 2c  his is disabled,
4030: 20 6e 6f 20 61 74 74 65 6d 70 74 20 77 69 6c 6c   no attempt will
4040: 20 62 65 0d 0a 20 20 20 20 20 20 20 20 20 20 20   be..           
4050: 20 20 20 6d 61 64 65 20 74 6f 20 70 72 65 2d 6c     made to pre-l
4060: 6f 61 64 20 74 68 65 20 6e 61 74 69 76 65 20 53  oad the native S
4070: 51 4c 69 74 65 20 6c 69 62 72 61 72 79 20 61 70  QLite library ap
4080: 70 72 6f 70 72 69 61 74 65 20 74 6f 20 74 68 65  propriate to the
4090: 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20  ..              
40a0: 70 72 6f 63 65 73 73 6f 72 20 61 72 63 68 69 74  processor archit
40b0: 65 63 74 75 72 65 20 6f 66 20 74 68 65 20 63 75  ecture of the cu
40c0: 72 72 65 6e 74 6c 79 20 72 75 6e 6e 69 6e 67 20  rrently running 
40d0: 70 72 6f 63 65 73 73 20 75 70 6f 6e 20 75 73 69  process upon usi
40e0: 6e 67 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20  ng..            
40f0: 20 20 74 68 65 20 63 6f 6d 70 6f 6e 65 6e 74 2e    the component.
4100: 20 20 54 68 69 73 20 66 65 61 74 75 72 65 20 69    This feature i
4110: 73 20 65 78 70 65 72 69 6d 65 6e 74 61 6c 20 61  s experimental a
4120: 6e 64 20 6d 61 79 20 62 65 20 6d 6f 64 69 66 69  nd may be modifi
4130: 65 64 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20  ed..            
4140: 20 20 6f 72 20 72 65 6d 6f 76 65 64 20 69 6e 20    or removed in 
4150: 61 20 66 75 74 75 72 65 20 72 65 6c 65 61 73 65  a future release
4160: 2e 0d 0a 20 20 20 20 2d 2d 3e 0d 0a 20 20 20 20  ...    -->..    
4170: 3c 50 72 65 4c 6f 61 64 4e 61 74 69 76 65 4c 69  <PreLoadNativeLi
4180: 62 72 61 72 79 20 43 6f 6e 64 69 74 69 6f 6e 3d  brary Condition=
4190: 22 27 24 28 50 72 65 4c 6f 61 64 4e 61 74 69 76  "'$(PreLoadNativ
41a0: 65 4c 69 62 72 61 72 79 29 27 20 3d 3d 20 27 27  eLibrary)' == ''
41b0: 22 3e 74 72 75 65 3c 2f 50 72 65 4c 6f 61 64 4e  ">true</PreLoadN
41c0: 61 74 69 76 65 4c 69 62 72 61 72 79 3e 0d 0a 0d  ativeLibrary>...
41d0: 0a 20 20 20 20 3c 21 2d 2d 0d 0a 20 20 20 20 20  .    <!--..     
41e0: 20 20 20 4e 4f 54 45 3a 20 45 6e 61 62 6c 65 20     NOTE: Enable 
41f0: 75 73 69 6e 67 20 74 68 65 20 22 77 65 6c 6c 2d  using the "well-
4200: 6b 6e 6f 77 6e 22 20 65 78 74 65 6e 73 69 6f 6e  known" extension
4210: 20 66 75 6e 63 74 69 6f 6e 73 20 66 72 6f 6d 20   functions from 
4220: 74 68 65 20 63 75 73 74 6f 6d 0d 0a 20 20 20 20  the custom..    
4230: 20 20 20 20 20 20 20 20 20 20 62 75 69 6c 74 20            built 
4240: 69 6e 74 65 72 6f 70 20 44 4c 4c 20 28 69 2e 65  interop DLL (i.e
4250: 2e 20 22 53 51 4c 69 74 65 2e 49 6e 74 65 72 6f  . "SQLite.Intero
4260: 70 2e 64 6c 6c 22 29 3f 20 20 42 79 20 64 65 66  p.dll")?  By def
4270: 61 75 6c 74 2c 20 74 68 69 73 0d 0a 20 20 20 20  ault, this..    
4280: 20 20 20 20 20 20 20 20 20 20 69 73 20 65 6e 61            is ena
4290: 62 6c 65 64 2e 20 20 49 66 20 74 68 69 73 20 69  bled.  If this i
42a0: 73 20 64 69 73 61 62 6c 65 64 2c 20 74 68 65 20  s disabled, the 
42b0: 22 77 65 6c 6c 2d 6b 6e 6f 77 6e 22 20 65 78 74  "well-known" ext
42c0: 65 6e 73 69 6f 6e 0d 0a 20 20 20 20 20 20 20 20  ension..        
42d0: 20 20 20 20 20 20 66 75 6e 63 74 69 6f 6e 73 20        functions 
42e0: 77 69 6c 6c 20 62 65 20 75 6e 61 76 61 69 6c 61  will be unavaila
42f0: 62 6c 65 2e 20 20 49 66 20 74 68 69 73 20 69 73  ble.  If this is
4300: 20 65 6e 61 62 6c 65 64 2c 20 69 74 20 6d 75 73   enabled, it mus
4310: 74 20 61 6c 73 6f 0d 0a 20 20 20 20 20 20 20 20  t also..        
4320: 20 20 20 20 20 20 62 65 20 65 6e 61 62 6c 65 64        be enabled
4330: 20 76 69 61 20 74 68 65 20 22 49 4e 54 45 52 4f   via the "INTERO
4340: 50 5f 45 58 54 45 4e 53 49 4f 4e 5f 46 55 4e 43  P_EXTENSION_FUNC
4350: 54 49 4f 4e 53 3d 31 22 20 70 72 65 70 72 6f 63  TIONS=1" preproc
4360: 65 73 73 6f 72 0d 0a 20 20 20 20 20 20 20 20 20  essor..         
4370: 20 20 20 20 20 64 65 66 69 6e 65 20 62 65 69 6e       define bein
4380: 67 20 70 72 65 73 65 6e 74 20 69 6e 20 74 68 65  g present in the
4390: 20 22 49 4e 54 45 52 4f 50 5f 45 58 54 52 41 5f   "INTEROP_EXTRA_
43a0: 44 45 46 49 4e 45 53 22 20 6d 61 63 72 6f 20 69  DEFINES" macro i
43b0: 6e 20 74 68 65 0d 0a 20 20 20 20 20 20 20 20 20  n the..         
43c0: 20 20 20 20 20 62 75 69 6c 64 20 70 72 6f 70 65       build prope
43d0: 72 74 69 65 73 20 66 69 6c 65 3a 0d 0a 0d 0a 20  rties file:.... 
43e0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
43f0: 20 22 53 51 4c 69 74 65 2e 49 6e 74 65 72 6f 70   "SQLite.Interop
4400: 5c 70 72 6f 70 73 5c 53 51 4c 69 74 65 2e 49 6e  \props\SQLite.In
4410: 74 65 72 6f 70 2e 32 30 59 59 2e 5b 76 73 5d 70  terop.20YY.[vs]p
4420: 72 6f 70 73 22 0d 0a 0d 0a 20 20 20 20 20 20 20  rops"....       
4430: 20 20 20 20 20 20 20 66 6f 72 20 74 68 65 20 63         for the c
4440: 6f 72 72 65 73 70 6f 6e 64 69 6e 67 20 76 65 72  orresponding ver
4450: 73 69 6f 6e 28 73 29 20 6f 66 20 56 69 73 75 61  sion(s) of Visua
4460: 6c 20 53 74 75 64 69 6f 2e 0d 0a 20 20 20 20 2d  l Studio...    -
4470: 2d 3e 0d 0a 20 20 20 20 3c 49 6e 74 65 72 6f 70  ->..    <Interop
4480: 45 78 74 65 6e 73 69 6f 6e 46 75 6e 63 74 69 6f  ExtensionFunctio
4490: 6e 73 20 43 6f 6e 64 69 74 69 6f 6e 3d 22 27 24  ns Condition="'$
44a0: 28 49 6e 74 65 72 6f 70 45 78 74 65 6e 73 69 6f  (InteropExtensio
44b0: 6e 46 75 6e 63 74 69 6f 6e 73 29 27 20 3d 3d 20  nFunctions)' == 
44c0: 27 27 22 3e 74 72 75 65 3c 2f 49 6e 74 65 72 6f  ''">true</Intero
44d0: 70 45 78 74 65 6e 73 69 6f 6e 46 75 6e 63 74 69  pExtensionFuncti
44e0: 6f 6e 73 3e 0d 0a 0d 0a 20 20 20 20 3c 21 2d 2d  ons>....    <!--
44f0: 0d 0a 20 20 20 20 20 20 20 20 4e 4f 54 45 3a 20  ..        NOTE: 
4500: 45 6e 61 62 6c 65 20 74 68 65 20 74 65 73 74 20  Enable the test 
4510: 65 78 74 65 6e 73 69 6f 6e 20 66 72 6f 6d 20 74  extension from t
4520: 68 65 20 63 75 73 74 6f 6d 20 62 75 69 6c 74 20  he custom built 
4530: 69 6e 74 65 72 6f 70 20 44 4c 4c 20 28 69 2e 65  interop DLL (i.e
4540: 2e 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20  ...             
4550: 20 22 53 51 4c 69 74 65 2e 49 6e 74 65 72 6f 70   "SQLite.Interop
4560: 2e 64 6c 6c 22 29 3f 20 20 42 79 20 64 65 66 61  .dll")?  By defa
4570: 75 6c 74 2c 20 74 68 69 73 20 69 73 20 65 6e 61  ult, this is ena
4580: 62 6c 65 64 20 6f 6e 6c 79 20 69 6e 20 74 68 65  bled only in the
4590: 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20  ..              
45a0: 44 65 62 75 67 20 62 75 69 6c 64 20 63 6f 6e 66  Debug build conf
45b0: 69 67 75 72 61 74 69 6f 6e 2e 20 20 49 66 20 74  iguration.  If t
45c0: 68 69 73 20 69 73 20 64 69 73 61 62 6c 65 64 2c  his is disabled,
45d0: 20 74 68 65 20 74 65 73 74 0d 0a 20 20 20 20 20   the test..     
45e0: 20 20 20 20 20 20 20 20 20 65 78 74 65 6e 73 69           extensi
45f0: 6f 6e 20 77 69 6c 6c 20 62 65 20 75 6e 61 76 61  on will be unava
4600: 69 6c 61 62 6c 65 2e 20 20 49 66 20 74 68 69 73  ilable.  If this
4610: 20 69 73 20 65 6e 61 62 6c 65 64 2c 20 69 74 20   is enabled, it 
4620: 6d 75 73 74 20 61 6c 73 6f 0d 0a 20 20 20 20 20  must also..     
4630: 20 20 20 20 20 20 20 20 20 62 65 20 65 6e 61 62           be enab
4640: 6c 65 64 20 76 69 61 20 74 68 65 20 22 49 4e 54  led via the "INT
4650: 45 52 4f 50 5f 54 45 53 54 5f 45 58 54 45 4e 53  EROP_TEST_EXTENS
4660: 49 4f 4e 3d 31 22 20 70 72 65 70 72 6f 63 65 73  ION=1" preproces
4670: 73 6f 72 20 64 65 66 69 6e 65 0d 0a 20 20 20 20  sor define..    
4680: 20 20 20 20 20 20 20 20 20 20 62 65 69 6e 67 20            being 
4690: 70 72 65 73 65 6e 74 20 69 6e 20 74 68 65 20 22  present in the "
46a0: 49 4e 54 45 52 4f 50 5f 44 45 42 55 47 5f 44 45  INTEROP_DEBUG_DE
46b0: 46 49 4e 45 53 22 20 6d 61 63 72 6f 20 69 6e 20  FINES" macro in 
46c0: 74 68 65 20 62 75 69 6c 64 0d 0a 20 20 20 20 20  the build..     
46d0: 20 20 20 20 20 20 20 20 20 70 72 6f 70 65 72 74           propert
46e0: 69 65 73 20 66 69 6c 65 3a 0d 0a 0d 0a 20 20 20  ies file:....   
46f0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22                 "
4700: 53 51 4c 69 74 65 2e 49 6e 74 65 72 6f 70 5c 70  SQLite.Interop\p
4710: 72 6f 70 73 5c 53 51 4c 69 74 65 2e 49 6e 74 65  rops\SQLite.Inte
4720: 72 6f 70 2e 32 30 59 59 2e 5b 76 73 5d 70 72 6f  rop.20YY.[vs]pro
4730: 70 73 22 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20  ps"....         
4740: 20 20 20 20 20 66 6f 72 20 74 68 65 20 63 6f 72       for the cor
4750: 72 65 73 70 6f 6e 64 69 6e 67 20 76 65 72 73 69  responding versi
4760: 6f 6e 28 73 29 20 6f 66 20 56 69 73 75 61 6c 20  on(s) of Visual 
4770: 53 74 75 64 69 6f 2e 0d 0a 20 20 20 20 2d 2d 3e  Studio...    -->
4780: 0d 0a 20 20 20 20 3c 49 6e 74 65 72 6f 70 54 65  ..    <InteropTe
4790: 73 74 45 78 74 65 6e 73 69 6f 6e 20 43 6f 6e 64  stExtension Cond
47a0: 69 74 69 6f 6e 3d 22 27 24 28 49 6e 74 65 72 6f  ition="'$(Intero
47b0: 70 54 65 73 74 45 78 74 65 6e 73 69 6f 6e 29 27  pTestExtension)'
47c0: 20 3d 3d 20 27 27 20 41 6e 64 20 27 24 28 43 6f   == '' And '$(Co
47d0: 6e 66 69 67 75 72 61 74 69 6f 6e 29 27 20 3d 3d  nfiguration)' ==
47e0: 20 27 44 65 62 75 67 27 22 3e 74 72 75 65 3c 2f   'Debug'">true</
47f0: 49 6e 74 65 72 6f 70 54 65 73 74 45 78 74 65 6e  InteropTestExten
4800: 73 69 6f 6e 3e 0d 0a 20 20 20 20 3c 49 6e 74 65  sion>..    <Inte
4810: 72 6f 70 54 65 73 74 45 78 74 65 6e 73 69 6f 6e  ropTestExtension
4820: 20 43 6f 6e 64 69 74 69 6f 6e 3d 22 27 24 28 49   Condition="'$(I
4830: 6e 74 65 72 6f 70 54 65 73 74 45 78 74 65 6e 73  nteropTestExtens
4840: 69 6f 6e 29 27 20 3d 3d 20 27 27 20 41 6e 64 20  ion)' == '' And 
4850: 27 24 28 43 6f 6e 66 69 67 75 72 61 74 69 6f 6e  '$(Configuration
4860: 29 27 20 21 3d 20 27 44 65 62 75 67 27 22 3e 66  )' != 'Debug'">f
4870: 61 6c 73 65 3c 2f 49 6e 74 65 72 6f 70 54 65 73  alse</InteropTes
4880: 74 45 78 74 65 6e 73 69 6f 6e 3e 0d 0a 0d 0a 20  tExtension>.... 
4890: 20 20 20 3c 21 2d 2d 0d 0a 20 20 20 20 20 20 20     <!--..       
48a0: 20 4e 4f 54 45 3a 20 45 6e 61 62 6c 65 20 65 78   NOTE: Enable ex
48b0: 70 6f 73 69 6e 67 20 74 68 65 20 43 72 79 70 74  posing the Crypt
48c0: 6f 41 50 49 20 62 61 73 65 64 20 63 6f 64 65 63  oAPI based codec
48d0: 20 66 72 6f 6d 20 74 68 65 20 63 75 73 74 6f 6d   from the custom
48e0: 20 62 75 69 6c 74 0d 0a 20 20 20 20 20 20 20 20   built..        
48f0: 20 20 20 20 20 20 69 6e 74 65 72 6f 70 20 44 4c        interop DL
4900: 4c 20 28 69 2e 65 2e 20 22 53 51 4c 69 74 65 2e  L (i.e. "SQLite.
4910: 49 6e 74 65 72 6f 70 2e 64 6c 6c 22 29 3f 20 20  Interop.dll")?  
4920: 42 79 20 64 65 66 61 75 6c 74 2c 20 74 68 69 73  By default, this
4930: 20 69 73 0d 0a 20 20 20 20 20 20 20 20 20 20 20   is..           
4940: 20 20 20 65 6e 61 62 6c 65 64 2e 20 20 49 66 20     enabled.  If 
4950: 74 68 69 73 20 69 73 20 64 69 73 61 62 6c 65 64  this is disabled
4960: 2c 20 73 75 70 70 6f 72 74 20 66 6f 72 20 65 6e  , support for en
4970: 63 72 79 70 74 65 64 20 64 61 74 61 62 61 73 65  crypted database
4980: 73 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20  s..             
4990: 20 77 69 6c 6c 20 62 65 20 75 6e 61 76 61 69 6c   will be unavail
49a0: 61 62 6c 65 2e 20 20 49 66 20 74 68 69 73 20 69  able.  If this i
49b0: 73 20 65 6e 61 62 6c 65 64 2c 20 69 74 20 6d 75  s enabled, it mu
49c0: 73 74 20 61 6c 73 6f 20 62 65 20 65 6e 61 62 6c  st also be enabl
49d0: 65 64 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20  ed..            
49e0: 20 20 76 69 61 20 74 68 65 20 22 53 51 4c 49 54    via the "SQLIT
49f0: 45 5f 48 41 53 5f 43 4f 44 45 43 3d 31 22 20 70  E_HAS_CODEC=1" p
4a00: 72 65 70 72 6f 63 65 73 73 6f 72 20 64 65 66 69  reprocessor defi
4a10: 6e 65 20 62 65 69 6e 67 20 70 72 65 73 65 6e 74  ne being present
4a20: 20 69 6e 0d 0a 20 20 20 20 20 20 20 20 20 20 20   in..           
4a30: 20 20 20 74 68 65 20 22 53 51 4c 49 54 45 5f 45     the "SQLITE_E
4a40: 58 54 52 41 5f 44 45 46 49 4e 45 53 22 20 6d 61  XTRA_DEFINES" ma
4a50: 63 72 6f 20 69 6e 20 74 68 65 20 62 75 69 6c 64  cro in the build
4a60: 20 70 72 6f 70 65 72 74 69 65 73 20 66 69 6c 65   properties file
4a70: 3a 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20  :....           
4a80: 20 20 20 20 20 20 20 22 53 51 4c 69 74 65 2e 49         "SQLite.I
4a90: 6e 74 65 72 6f 70 5c 70 72 6f 70 73 5c 73 71 6c  nterop\props\sql
4aa0: 69 74 65 33 2e 5b 76 73 5d 70 72 6f 70 73 22 0d  ite3.[vs]props".
4ab0: 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20  ...             
4ac0: 20 41 4e 44 20 76 69 61 20 74 68 65 20 22 49 4e   AND via the "IN
4ad0: 54 45 52 4f 50 5f 43 4f 44 45 43 3d 31 22 20 70  TEROP_CODEC=1" p
4ae0: 72 65 70 72 6f 63 65 73 73 6f 72 20 64 65 66 69  reprocessor defi
4af0: 6e 65 20 62 65 69 6e 67 20 70 72 65 73 65 6e 74  ne being present
4b00: 20 69 6e 0d 0a 20 20 20 20 20 20 20 20 20 20 20   in..           
4b10: 20 20 20 74 68 65 20 22 49 4e 54 45 52 4f 50 5f     the "INTEROP_
4b20: 45 58 54 52 41 5f 44 45 46 49 4e 45 53 22 20 6d  EXTRA_DEFINES" m
4b30: 61 63 72 6f 20 69 6e 20 74 68 65 20 62 75 69 6c  acro in the buil
4b40: 64 20 70 72 6f 70 65 72 74 69 65 73 20 66 69 6c  d properties fil
4b50: 65 3a 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20  e:....          
4b60: 20 20 20 20 20 20 20 20 22 53 51 4c 69 74 65 2e          "SQLite.
4b70: 49 6e 74 65 72 6f 70 5c 70 72 6f 70 73 5c 53 51  Interop\props\SQ
4b80: 4c 69 74 65 2e 49 6e 74 65 72 6f 70 2e 32 30 59  Lite.Interop.20Y
4b90: 59 2e 5b 76 73 5d 70 72 6f 70 73 22 0d 0a 0d 0a  Y.[vs]props"....
4ba0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 62 6f                bo
4bb0: 74 68 20 66 6f 72 20 74 68 65 20 63 6f 72 72 65  th for the corre
4bc0: 73 70 6f 6e 64 69 6e 67 20 76 65 72 73 69 6f 6e  sponding version
4bd0: 28 73 29 20 6f 66 20 56 69 73 75 61 6c 20 53 74  (s) of Visual St
4be0: 75 64 69 6f 2e 0d 0a 20 20 20 20 2d 2d 3e 0d 0a  udio...    -->..
4bf0: 20 20 20 20 3c 49 6e 74 65 72 6f 70 43 6f 64 65      <InteropCode
4c00: 63 20 43 6f 6e 64 69 74 69 6f 6e 3d 22 27 24 28  c Condition="'$(
4c10: 49 6e 74 65 72 6f 70 43 6f 64 65 63 29 27 20 3d  InteropCodec)' =
4c20: 3d 20 27 27 22 3e 74 72 75 65 3c 2f 49 6e 74 65  = ''">true</Inte
4c30: 72 6f 70 43 6f 64 65 63 3e 0d 0a 0d 0a 20 20 20  ropCodec>....   
4c40: 20 3c 21 2d 2d 0d 0a 20 20 20 20 20 20 20 20 4e   <!--..        N
4c50: 4f 54 45 3a 20 45 6e 61 62 6c 65 20 69 6e 63 6c  OTE: Enable incl
4c60: 75 64 69 6e 67 20 53 45 45 20 77 69 74 68 20 74  uding SEE with t
4c70: 68 65 20 63 75 73 74 6f 6d 20 62 75 69 6c 74 20  he custom built 
4c80: 69 6e 74 65 72 6f 70 20 44 4c 4c 20 28 69 2e 65  interop DLL (i.e
4c90: 2e 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20  ...             
4ca0: 20 22 53 51 4c 69 74 65 2e 49 6e 74 65 72 6f 70   "SQLite.Interop
4cb0: 2e 64 6c 6c 22 29 3f 20 20 42 79 20 64 65 66 61  .dll")?  By defa
4cc0: 75 6c 74 2c 20 74 68 69 73 20 69 73 20 64 69 73  ult, this is dis
4cd0: 61 62 6c 65 64 2e 20 20 49 66 20 74 68 69 73 20  abled.  If this 
4ce0: 69 73 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20  is..            
4cf0: 20 20 65 6e 61 62 6c 65 64 2c 20 74 68 65 20 22    enabled, the "
4d00: 73 65 65 2e 63 22 20 66 69 6c 65 20 77 69 6c 6c  see.c" file will
4d10: 20 62 65 20 69 6e 63 6c 75 64 65 64 20 66 72 6f   be included fro
4d20: 6d 20 74 68 65 20 65 78 74 65 6e 73 69 6f 6e 73  m the extensions
4d30: 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20  ..              
4d40: 64 69 72 65 63 74 6f 72 79 2e 20 20 49 66 20 74  directory.  If t
4d50: 68 69 73 20 69 73 20 65 6e 61 62 6c 65 64 2c 20  his is enabled, 
4d60: 69 74 20 6d 75 73 74 20 61 6c 73 6f 20 62 65 20  it must also be 
4d70: 65 6e 61 62 6c 65 64 20 76 69 61 20 74 68 65 0d  enabled via the.
4d80: 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22  .              "
4d90: 53 51 4c 49 54 45 5f 48 41 53 5f 43 4f 44 45 43  SQLITE_HAS_CODEC
4da0: 3d 31 22 20 70 72 65 70 72 6f 63 65 73 73 6f 72  =1" preprocessor
4db0: 20 64 65 66 69 6e 65 20 62 65 69 6e 67 20 70 72   define being pr
4dc0: 65 73 65 6e 74 20 69 6e 20 74 68 65 0d 0a 20 20  esent in the..  
4dd0: 20 20 20 20 20 20 20 20 20 20 20 20 22 53 51 4c              "SQL
4de0: 49 54 45 5f 45 58 54 52 41 5f 44 45 46 49 4e 45  ITE_EXTRA_DEFINE
4df0: 53 22 20 6d 61 63 72 6f 20 69 6e 20 74 68 65 20  S" macro in the 
4e00: 62 75 69 6c 64 20 70 72 6f 70 65 72 74 69 65 73  build properties
4e10: 20 66 69 6c 65 3a 0d 0a 0d 0a 20 20 20 20 20 20   file:....      
4e20: 20 20 20 20 20 20 20 20 20 20 20 20 22 53 51 4c              "SQL
4e30: 69 74 65 2e 49 6e 74 65 72 6f 70 5c 70 72 6f 70  ite.Interop\prop
4e40: 73 5c 73 71 6c 69 74 65 33 2e 5b 76 73 5d 70 72  s\sqlite3.[vs]pr
4e50: 6f 70 73 22 0d 0a 0d 0a 20 20 20 20 20 20 20 20  ops"....        
4e60: 20 20 20 20 20 20 41 4e 44 20 76 69 61 20 74 68        AND via th
4e70: 65 20 22 49 4e 54 45 52 4f 50 5f 49 4e 43 4c 55  e "INTEROP_INCLU
4e80: 44 45 5f 53 45 45 3d 31 22 20 70 72 65 70 72 6f  DE_SEE=1" prepro
4e90: 63 65 73 73 6f 72 20 64 65 66 69 6e 65 20 62 65  cessor define be
4ea0: 69 6e 67 0d 0a 20 20 20 20 20 20 20 20 20 20 20  ing..           
4eb0: 20 20 20 70 72 65 73 65 6e 74 20 69 6e 20 74 68     present in th
4ec0: 65 20 22 49 4e 54 45 52 4f 50 5f 45 58 54 52 41  e "INTEROP_EXTRA
4ed0: 5f 44 45 46 49 4e 45 53 22 20 6d 61 63 72 6f 20  _DEFINES" macro 
4ee0: 69 6e 20 74 68 65 20 62 75 69 6c 64 0d 0a 20 20  in the build..  
4ef0: 20 20 20 20 20 20 20 20 20 20 20 20 70 72 6f 70              prop
4f00: 65 72 74 69 65 73 20 66 69 6c 65 3a 0d 0a 0d 0a  erties file:....
4f10: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
4f20: 20 20 22 53 51 4c 69 74 65 2e 49 6e 74 65 72 6f    "SQLite.Intero
4f30: 70 5c 70 72 6f 70 73 5c 53 51 4c 69 74 65 2e 49  p\props\SQLite.I
4f40: 6e 74 65 72 6f 70 2e 32 30 59 59 2e 5b 76 73 5d  nterop.20YY.[vs]
4f50: 70 72 6f 70 73 22 0d 0a 0d 0a 20 20 20 20 20 20  props"....      
4f60: 20 20 20 20 20 20 20 20 62 6f 74 68 20 66 6f 72          both for
4f70: 20 74 68 65 20 63 6f 72 72 65 73 70 6f 6e 64 69   the correspondi
4f80: 6e 67 20 76 65 72 73 69 6f 6e 28 73 29 20 6f 66  ng version(s) of
4f90: 20 56 69 73 75 61 6c 20 53 74 75 64 69 6f 2e 0d   Visual Studio..
4fa0: 0a 20 20 20 20 2d 2d 3e 0d 0a 20 20 20 20 3c 49  .    -->..    <I
4fb0: 6e 74 65 72 6f 70 49 6e 63 6c 75 64 65 53 65 65  nteropIncludeSee
4fc0: 20 43 6f 6e 64 69 74 69 6f 6e 3d 22 27 24 28 49   Condition="'$(I
4fd0: 6e 74 65 72 6f 70 49 6e 63 6c 75 64 65 53 65 65  nteropIncludeSee
4fe0: 29 27 20 3d 3d 20 27 27 22 3e 66 61 6c 73 65 3c  )' == ''">false<
4ff0: 2f 49 6e 74 65 72 6f 70 49 6e 63 6c 75 64 65 53  /InteropIncludeS
5000: 65 65 3e 0d 0a 0d 0a 20 20 20 20 3c 21 2d 2d 0d  ee>....    <!--.
5010: 0a 20 20 20 20 20 20 20 20 4e 4f 54 45 3a 20 45  .        NOTE: E
5020: 6e 61 62 6c 65 20 69 6e 63 6c 75 64 69 6e 67 20  nable including 
5030: 43 45 52 4f 44 20 77 69 74 68 20 74 68 65 20 63  CEROD with the c
5040: 75 73 74 6f 6d 20 62 75 69 6c 74 20 69 6e 74 65  ustom built inte
5050: 72 6f 70 20 44 4c 4c 20 28 69 2e 65 2e 0d 0a 20  rop DLL (i.e... 
5060: 20 20 20 20 20 20 20 20 20 20 20 20 20 22 53 51               "SQ
5070: 4c 69 74 65 2e 49 6e 74 65 72 6f 70 2e 64 6c 6c  Lite.Interop.dll
5080: 22 29 3f 20 20 42 79 20 64 65 66 61 75 6c 74 2c  ")?  By default,
5090: 20 74 68 69 73 20 69 73 20 64 69 73 61 62 6c 65   this is disable
50a0: 64 2e 20 20 49 66 20 74 68 69 73 20 69 73 0d 0a  d.  If this is..
50b0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 65 6e                en
50c0: 61 62 6c 65 64 2c 20 74 68 65 20 22 63 65 72 6f  abled, the "cero
50d0: 64 2e 63 22 20 66 69 6c 65 20 77 69 6c 6c 20 62  d.c" file will b
50e0: 65 20 69 6e 63 6c 75 64 65 64 20 66 72 6f 6d 20  e included from 
50f0: 74 68 65 20 65 78 74 65 6e 73 69 6f 6e 73 0d 0a  the extensions..
5100: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 64 69                di
5110: 72 65 63 74 6f 72 79 2e 20 20 49 66 20 74 68 69  rectory.  If thi
5120: 73 20 69 73 20 65 6e 61 62 6c 65 64 2c 20 69 74  s is enabled, it
5130: 20 6d 75 73 74 20 61 6c 73 6f 20 62 65 20 65 6e   must also be en
5140: 61 62 6c 65 64 20 76 69 61 20 74 68 65 0d 0a 20  abled via the.. 
5150: 20 20 20 20 20 20 20 20 20 20 20 20 20 22 53 51               "SQ
5160: 4c 49 54 45 5f 48 41 53 5f 43 4f 44 45 43 3d 31  LITE_HAS_CODEC=1
5170: 22 20 70 72 65 70 72 6f 63 65 73 73 6f 72 20 64  " preprocessor d
5180: 65 66 69 6e 65 20 62 65 69 6e 67 20 70 72 65 73  efine being pres
5190: 65 6e 74 20 69 6e 20 74 68 65 0d 0a 20 20 20 20  ent in the..    
51a0: 20 20 20 20 20 20 20 20 20 20 22 53 51 4c 49 54            "SQLIT
51b0: 45 5f 45 58 54 52 41 5f 44 45 46 49 4e 45 53 22  E_EXTRA_DEFINES"
51c0: 20 6d 61 63 72 6f 20 69 6e 20 74 68 65 20 62 75   macro in the bu
51d0: 69 6c 64 20 70 72 6f 70 65 72 74 69 65 73 20 66  ild properties f
51e0: 69 6c 65 3a 0d 0a 0d 0a 20 20 20 20 20 20 20 20  ile:....        
51f0: 20 20 20 20 20 20 20 20 20 20 22 53 51 4c 69 74            "SQLit
5200: 65 2e 49 6e 74 65 72 6f 70 5c 70 72 6f 70 73 5c  e.Interop\props\
5210: 73 71 6c 69 74 65 33 2e 5b 76 73 5d 70 72 6f 70  sqlite3.[vs]prop
5220: 73 22 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20  s"....          
5230: 20 20 20 20 41 4e 44 20 76 69 61 20 74 68 65 20      AND via the 
5240: 22 49 4e 54 45 52 4f 50 5f 49 4e 43 4c 55 44 45  "INTEROP_INCLUDE
5250: 5f 43 45 52 4f 44 3d 31 22 20 70 72 65 70 72 6f  _CEROD=1" prepro
5260: 63 65 73 73 6f 72 20 64 65 66 69 6e 65 20 62 65  cessor define be
5270: 69 6e 67 0d 0a 20 20 20 20 20 20 20 20 20 20 20  ing..           
5280: 20 20 20 70 72 65 73 65 6e 74 20 69 6e 20 74 68     present in th
5290: 65 20 22 49 4e 54 45 52 4f 50 5f 45 58 54 52 41  e "INTEROP_EXTRA
52a0: 5f 44 45 46 49 4e 45 53 22 20 6d 61 63 72 6f 20  _DEFINES" macro 
52b0: 69 6e 20 74 68 65 20 62 75 69 6c 64 0d 0a 20 20  in the build..  
52c0: 20 20 20 20 20 20 20 20 20 20 20 20 70 72 6f 70              prop
52d0: 65 72 74 69 65 73 20 66 69 6c 65 3a 0d 0a 0d 0a  erties file:....
52e0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
52f0: 20 20 22 53 51 4c 69 74 65 2e 49 6e 74 65 72 6f    "SQLite.Intero
5300: 70 5c 70 72 6f 70 73 5c 53 51 4c 69 74 65 2e 49  p\props\SQLite.I
5310: 6e 74 65 72 6f 70 2e 32 30 59 59 2e 5b 76 73 5d  nterop.20YY.[vs]
5320: 70 72 6f 70 73 22 0d 0a 0d 0a 20 20 20 20 20 20  props"....      
5330: 20 20 20 20 20 20 20 20 62 6f 74 68 20 66 6f 72          both for
5340: 20 74 68 65 20 63 6f 72 72 65 73 70 6f 6e 64 69   the correspondi
5350: 6e 67 20 76 65 72 73 69 6f 6e 28 73 29 20 6f 66  ng version(s) of
5360: 20 56 69 73 75 61 6c 20 53 74 75 64 69 6f 2e 0d   Visual Studio..
5370: 0a 20 20 20 20 2d 2d 3e 0d 0a 20 20 20 20 3c 49  .    -->..    <I
5380: 6e 74 65 72 6f 70 49 6e 63 6c 75 64 65 43 65 72  nteropIncludeCer
5390: 6f 64 20 43 6f 6e 64 69 74 69 6f 6e 3d 22 27 24  od Condition="'$
53a0: 28 49 6e 74 65 72 6f 70 49 6e 63 6c 75 64 65 43  (InteropIncludeC
53b0: 65 72 6f 64 29 27 20 3d 3d 20 27 27 22 3e 66 61  erod)' == ''">fa
53c0: 6c 73 65 3c 2f 49 6e 74 65 72 6f 70 49 6e 63 6c  lse</InteropIncl
53d0: 75 64 65 43 65 72 6f 64 3e 0d 0a 0d 0a 20 20 20  udeCerod>....   
53e0: 20 3c 21 2d 2d 0d 0a 20 20 20 20 20 20 20 20 4e   <!--..        N
53f0: 4f 54 45 3a 20 45 6e 61 62 6c 65 20 69 6e 63 6c  OTE: Enable incl
5400: 75 64 69 6e 67 20 5a 69 70 56 46 53 20 77 69 74  uding ZipVFS wit
5410: 68 20 74 68 65 20 63 75 73 74 6f 6d 20 62 75 69  h the custom bui
5420: 6c 74 20 69 6e 74 65 72 6f 70 20 44 4c 4c 20 28  lt interop DLL (
5430: 69 2e 65 2e 0d 0a 20 20 20 20 20 20 20 20 20 20  i.e...          
5440: 20 20 20 20 22 53 51 4c 69 74 65 2e 49 6e 74 65      "SQLite.Inte
5450: 72 6f 70 2e 64 6c 6c 22 29 3f 20 20 42 79 20 64  rop.dll")?  By d
5460: 65 66 61 75 6c 74 2c 20 74 68 69 73 20 69 73 20  efault, this is 
5470: 64 69 73 61 62 6c 65 64 2e 20 20 49 66 20 74 68  disabled.  If th
5480: 69 73 20 69 73 0d 0a 20 20 20 20 20 20 20 20 20  is is..         
5490: 20 20 20 20 20 65 6e 61 62 6c 65 64 2c 20 74 68       enabled, th
54a0: 65 20 22 7a 69 70 76 66 73 2e 63 22 20 66 69 6c  e "zipvfs.c" fil
54b0: 65 20 77 69 6c 6c 20 62 65 20 69 6e 63 6c 75 64  e will be includ
54c0: 65 64 20 66 72 6f 6d 20 74 68 65 20 65 78 74 65  ed from the exte
54d0: 6e 73 69 6f 6e 73 0d 0a 20 20 20 20 20 20 20 20  nsions..        
54e0: 20 20 20 20 20 20 64 69 72 65 63 74 6f 72 79 2e        directory.
54f0: 20 20 49 66 20 74 68 69 73 20 69 73 20 65 6e 61    If this is ena
5500: 62 6c 65 64 2c 20 69 74 20 6d 75 73 74 20 61 6c  bled, it must al
5510: 73 6f 20 62 65 20 65 6e 61 62 6c 65 64 20 76 69  so be enabled vi
5520: 61 20 74 68 65 0d 0a 20 20 20 20 20 20 20 20 20  a the..         
5530: 20 20 20 20 20 22 53 51 4c 49 54 45 5f 45 4e 41       "SQLITE_ENA
5540: 42 4c 45 5f 5a 49 50 56 46 53 3d 31 22 20 70 72  BLE_ZIPVFS=1" pr
5550: 65 70 72 6f 63 65 73 73 6f 72 20 64 65 66 69 6e  eprocessor defin
5560: 65 20 62 65 69 6e 67 20 70 72 65 73 65 6e 74 20  e being present 
5570: 69 6e 20 74 68 65 0d 0a 20 20 20 20 20 20 20 20  in the..        
5580: 20 20 20 20 20 20 22 53 51 4c 49 54 45 5f 45 58        "SQLITE_EX
5590: 54 52 41 5f 44 45 46 49 4e 45 53 22 20 6d 61 63  TRA_DEFINES" mac
55a0: 72 6f 20 69 6e 20 74 68 65 20 62 75 69 6c 64 20  ro in the build 
55b0: 70 72 6f 70 65 72 74 69 65 73 20 66 69 6c 65 3a  properties file:
55c0: 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20  ....            
55d0: 20 20 20 20 20 20 22 53 51 4c 69 74 65 2e 49 6e        "SQLite.In
55e0: 74 65 72 6f 70 5c 70 72 6f 70 73 5c 73 71 6c 69  terop\props\sqli
55f0: 74 65 33 2e 5b 76 73 5d 70 72 6f 70 73 22 0d 0a  te3.[vs]props"..
5600: 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20  ..              
5610: 41 4e 44 20 76 69 61 20 74 68 65 20 22 49 4e 54  AND via the "INT
5620: 45 52 4f 50 5f 49 4e 43 4c 55 44 45 5f 5a 49 50  EROP_INCLUDE_ZIP
5630: 56 46 53 3d 31 22 20 70 72 65 70 72 6f 63 65 73  VFS=1" preproces
5640: 73 6f 72 20 64 65 66 69 6e 65 20 62 65 69 6e 67  sor define being
5650: 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20  ..              
5660: 70 72 65 73 65 6e 74 20 69 6e 20 74 68 65 20 22  present in the "
5670: 49 4e 54 45 52 4f 50 5f 45 58 54 52 41 5f 44 45  INTEROP_EXTRA_DE
5680: 46 49 4e 45 53 22 20 6d 61 63 72 6f 20 69 6e 20  FINES" macro in 
5690: 74 68 65 20 62 75 69 6c 64 0d 0a 20 20 20 20 20  the build..     
56a0: 20 20 20 20 20 20 20 20 20 70 72 6f 70 65 72 74           propert
56b0: 69 65 73 20 66 69 6c 65 3a 0d 0a 0d 0a 20 20 20  ies file:....   
56c0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22                 "
56d0: 53 51 4c 69 74 65 2e 49 6e 74 65 72 6f 70 5c 70  SQLite.Interop\p
56e0: 72 6f 70 73 5c 53 51 4c 69 74 65 2e 49 6e 74 65  rops\SQLite.Inte
56f0: 72 6f 70 2e 32 30 59 59 2e 5b 76 73 5d 70 72 6f  rop.20YY.[vs]pro
5700: 70 73 22 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20  ps"....         
5710: 20 20 20 20 20 62 6f 74 68 20 66 6f 72 20 74 68       both for th
5720: 65 20 63 6f 72 72 65 73 70 6f 6e 64 69 6e 67 20  e corresponding 
5730: 76 65 72 73 69 6f 6e 28 73 29 20 6f 66 20 56 69  version(s) of Vi
5740: 73 75 61 6c 20 53 74 75 64 69 6f 2e 0d 0a 20 20  sual Studio...  
5750: 20 20 2d 2d 3e 0d 0a 20 20 20 20 3c 49 6e 74 65    -->..    <Inte
5760: 72 6f 70 49 6e 63 6c 75 64 65 5a 69 70 56 66 73  ropIncludeZipVfs
5770: 20 43 6f 6e 64 69 74 69 6f 6e 3d 22 27 24 28 49   Condition="'$(I
5780: 6e 74 65 72 6f 70 49 6e 63 6c 75 64 65 5a 69 70  nteropIncludeZip
5790: 56 66 73 29 27 20 3d 3d 20 27 27 22 3e 66 61 6c  Vfs)' == ''">fal
57a0: 73 65 3c 2f 49 6e 74 65 72 6f 70 49 6e 63 6c 75  se</InteropInclu
57b0: 64 65 5a 69 70 56 66 73 3e 0d 0a 0d 0a 20 20 20  deZipVfs>....   
57c0: 20 3c 21 2d 2d 0d 0a 20 20 20 20 20 20 20 20 4e   <!--..        N
57d0: 4f 54 45 3a 20 45 6e 61 62 6c 65 20 69 6e 63 6c  OTE: Enable incl
57e0: 75 64 69 6e 67 20 22 65 78 74 72 61 22 20 63 6f  uding "extra" co
57f0: 64 65 20 77 69 74 68 20 74 68 65 20 63 75 73 74  de with the cust
5800: 6f 6d 20 62 75 69 6c 74 20 69 6e 74 65 72 6f 70  om built interop
5810: 20 44 4c 4c 0d 0a 20 20 20 20 20 20 20 20 20 20   DLL..          
5820: 20 20 20 20 28 69 2e 65 2e 20 22 53 51 4c 69 74      (i.e. "SQLit
5830: 65 2e 49 6e 74 65 72 6f 70 2e 64 6c 6c 22 29 3f  e.Interop.dll")?
5840: 20 20 42 79 20 64 65 66 61 75 6c 74 2c 20 74 68    By default, th
5850: 69 73 20 69 73 20 64 69 73 61 62 6c 65 64 2e 20  is is disabled. 
5860: 20 49 66 0d 0a 20 20 20 20 20 20 20 20 20 20 20   If..           
5870: 20 20 20 74 68 69 73 20 69 73 20 65 6e 61 62 6c     this is enabl
5880: 65 64 2c 20 74 68 65 20 22 65 78 74 72 61 2e 63  ed, the "extra.c
5890: 22 20 66 69 6c 65 20 77 69 6c 6c 20 62 65 20 69  " file will be i
58a0: 6e 63 6c 75 64 65 64 20 66 72 6f 6d 20 74 68 65  ncluded from the
58b0: 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20  ..              
58c0: 65 78 74 65 6e 73 69 6f 6e 73 20 64 69 72 65 63  extensions direc
58d0: 74 6f 72 79 2e 20 20 49 66 20 74 68 69 73 20 69  tory.  If this i
58e0: 73 20 65 6e 61 62 6c 65 64 2c 20 69 74 20 6d 75  s enabled, it mu
58f0: 73 74 20 61 6c 73 6f 20 62 65 0d 0a 20 20 20 20  st also be..    
5900: 20 20 20 20 20 20 20 20 20 20 65 6e 61 62 6c 65            enable
5910: 64 20 76 69 61 20 74 68 65 20 22 49 4e 54 45 52  d via the "INTER
5920: 4f 50 5f 49 4e 43 4c 55 44 45 5f 45 58 54 52 41  OP_INCLUDE_EXTRA
5930: 3d 31 22 20 70 72 65 70 72 6f 63 65 73 73 6f 72  =1" preprocessor
5940: 20 64 65 66 69 6e 65 0d 0a 20 20 20 20 20 20 20   define..       
5950: 20 20 20 20 20 20 20 62 65 69 6e 67 20 70 72 65         being pre
5960: 73 65 6e 74 20 69 6e 20 74 68 65 20 22 49 4e 54  sent in the "INT
5970: 45 52 4f 50 5f 45 58 54 52 41 5f 44 45 46 49 4e  EROP_EXTRA_DEFIN
5980: 45 53 22 20 6d 61 63 72 6f 20 69 6e 20 74 68 65  ES" macro in the
5990: 20 62 75 69 6c 64 0d 0a 20 20 20 20 20 20 20 20   build..        
59a0: 20 20 20 20 20 20 70 72 6f 70 65 72 74 69 65 73        properties
59b0: 20 66 69 6c 65 3a 0d 0a 0d 0a 20 20 20 20 20 20   file:....      
59c0: 20 20 20 20 20 20 20 20 20 20 20 20 22 53 51 4c              "SQL
59d0: 69 74 65 2e 49 6e 74 65 72 6f 70 5c 70 72 6f 70  ite.Interop\prop
59e0: 73 5c 53 51 4c 69 74 65 2e 49 6e 74 65 72 6f 70  s\SQLite.Interop
59f0: 2e 32 30 59 59 2e 5b 76 73 5d 70 72 6f 70 73 22  .20YY.[vs]props"
5a00: 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20  ....            
5a10: 20 20 66 6f 72 20 74 68 65 20 63 6f 72 72 65 73    for the corres
5a20: 70 6f 6e 64 69 6e 67 20 76 65 72 73 69 6f 6e 28  ponding version(
5a30: 73 29 20 6f 66 20 56 69 73 75 61 6c 20 53 74 75  s) of Visual Stu
5a40: 64 69 6f 2e 0d 0a 20 20 20 20 2d 2d 3e 0d 0a 20  dio...    -->.. 
5a50: 20 20 20 3c 49 6e 74 65 72 6f 70 49 6e 63 6c 75     <InteropInclu
5a60: 64 65 45 78 74 72 61 20 43 6f 6e 64 69 74 69 6f  deExtra Conditio
5a70: 6e 3d 22 27 24 28 49 6e 74 65 72 6f 70 49 6e 63  n="'$(InteropInc
5a80: 6c 75 64 65 45 78 74 72 61 29 27 20 3d 3d 20 27  ludeExtra)' == '
5a90: 27 22 3e 66 61 6c 73 65 3c 2f 49 6e 74 65 72 6f  '">false</Intero
5aa0: 70 49 6e 63 6c 75 64 65 45 78 74 72 61 3e 0d 0a  pIncludeExtra>..
5ab0: 0d 0a 20 20 20 20 3c 21 2d 2d 0d 0a 20 20 20 20  ..    <!--..    
5ac0: 20 20 20 20 4e 4f 54 45 3a 20 45 6e 61 62 6c 65      NOTE: Enable
5ad0: 20 65 78 74 72 61 20 64 69 61 67 6e 6f 73 74 69   extra diagnosti
5ae0: 63 73 20 66 72 6f 6d 20 74 68 65 20 63 75 73 74  cs from the cust
5af0: 6f 6d 20 62 75 69 6c 74 20 69 6e 74 65 72 6f 70  om built interop
5b00: 20 44 4c 4c 20 28 69 2e 65 2e 0d 0a 20 20 20 20   DLL (i.e...    
5b10: 20 20 20 20 20 20 20 20 20 20 22 53 51 4c 69 74            "SQLit
5b20: 65 2e 49 6e 74 65 72 6f 70 2e 64 6c 6c 22 29 3f  e.Interop.dll")?
5b30: 20 20 42 79 20 64 65 66 61 75 6c 74 2c 20 74 68    By default, th
5b40: 69 73 20 69 73 20 65 6e 61 62 6c 65 64 20 69 6e  is is enabled in
5b50: 20 74 68 65 20 44 65 62 75 67 0d 0a 20 20 20 20   the Debug..    
5b60: 20 20 20 20 20 20 20 20 20 20 62 75 69 6c 64 20            build 
5b70: 63 6f 6e 66 69 67 75 72 61 74 69 6f 6e 2e 20 20  configuration.  
5b80: 49 66 20 74 68 69 73 20 69 73 20 64 69 73 61 62  If this is disab
5b90: 6c 65 64 2c 20 6e 6f 20 65 78 74 72 61 20 64 69  led, no extra di
5ba0: 61 67 6e 6f 73 74 69 63 73 0d 0a 20 20 20 20 20  agnostics..     
5bb0: 20 20 20 20 20 20 20 20 20 77 69 6c 6c 20 62 65           will be
5bc0: 20 65 6d 69 74 74 65 64 2e 20 20 49 66 20 74 68   emitted.  If th
5bd0: 69 73 20 69 73 20 65 6e 61 62 6c 65 64 2c 20 69  is is enabled, i
5be0: 74 20 6d 75 73 74 20 61 6c 73 6f 20 62 65 20 65  t must also be e
5bf0: 6e 61 62 6c 65 64 20 76 69 61 0d 0a 20 20 20 20  nabled via..    
5c00: 20 20 20 20 20 20 20 20 20 20 74 68 65 20 22 49            the "I
5c10: 4e 54 45 52 4f 50 5f 44 45 42 55 47 3d 58 58 22  NTEROP_DEBUG=XX"
5c20: 20 70 72 65 70 72 6f 63 65 73 73 6f 72 20 64 65   preprocessor de
5c30: 66 69 6e 65 20 62 65 69 6e 67 20 70 72 65 73 65  fine being prese
5c40: 6e 74 20 69 6e 20 74 68 65 0d 0a 20 20 20 20 20  nt in the..     
5c50: 20 20 20 20 20 20 20 20 20 22 49 4e 54 45 52 4f           "INTERO
5c60: 50 5f 44 45 42 55 47 5f 44 45 46 49 4e 45 53 22  P_DEBUG_DEFINES"
5c70: 20 6d 61 63 72 6f 20 69 6e 20 74 68 65 20 62 75   macro in the bu
5c80: 69 6c 64 20 70 72 6f 70 65 72 74 69 65 73 20 66  ild properties f
5c90: 69 6c 65 3a 0d 0a 0d 0a 20 20 20 20 20 20 20 20  ile:....        
5ca0: 20 20 20 20 20 20 20 20 20 20 22 53 51 4c 69 74            "SQLit
5cb0: 65 2e 49 6e 74 65 72 6f 70 5c 70 72 6f 70 73 5c  e.Interop\props\
5cc0: 53 51 4c 69 74 65 2e 49 6e 74 65 72 6f 70 2e 32  SQLite.Interop.2
5cd0: 30 59 59 2e 5b 76 73 5d 70 72 6f 70 73 22 0d 0a  0YY.[vs]props"..
5ce0: 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20  ..              
5cf0: 66 6f 72 20 74 68 65 20 63 6f 72 72 65 73 70 6f  for the correspo
5d00: 6e 64 69 6e 67 20 76 65 72 73 69 6f 6e 28 73 29  nding version(s)
5d10: 20 6f 66 20 56 69 73 75 61 6c 20 53 74 75 64 69   of Visual Studi
5d20: 6f 20 77 68 65 72 65 20 74 68 65 20 58 58 20 69  o where the XX i
5d30: 73 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20  s..             
5d40: 20 61 6e 20 69 6e 74 65 67 65 72 20 76 61 6c 75   an integer valu
5d50: 65 20 74 68 61 74 20 72 65 70 72 65 73 65 6e 74  e that represent
5d60: 73 20 61 20 63 6f 6d 62 69 6e 61 74 69 6f 6e 20  s a combination 
5d70: 6f 66 20 6f 6e 65 20 6f 72 20 6d 6f 72 65 20 6f  of one or more o
5d80: 66 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20  f..             
5d90: 20 74 68 65 20 66 6f 6c 6c 6f 77 69 6e 67 20 62   the following b
5da0: 69 74 20 66 6c 61 67 73 20 76 61 6c 75 65 73 20  it flags values 
5db0: 28 69 2e 65 2e 20 74 6f 20 65 6e 61 62 6c 65 20  (i.e. to enable 
5dc0: 65 78 74 72 61 20 64 69 61 67 6e 6f 73 74 69 63  extra diagnostic
5dd0: 73 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20  s..             
5de0: 20 66 6f 72 20 61 20 70 61 72 74 69 63 75 6c 61   for a particula
5df0: 72 20 6e 61 74 69 76 65 20 66 75 6e 63 74 69 6f  r native functio
5e00: 6e 20 63 61 6c 6c 29 3a 0d 0a 0d 0a 20 20 20 20  n call):....    
5e10: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 49 4e                IN
5e20: 54 45 52 4f 50 5f 44 45 42 55 47 5f 43 4c 4f 53  TEROP_DEBUG_CLOS
5e30: 45 20 20 20 20 20 20 20 20 20 20 28 30 78 30 30  E          (0x00
5e40: 30 31 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20  01)..           
5e50: 20 20 20 20 20 20 20 49 4e 54 45 52 4f 50 5f 44         INTEROP_D
5e60: 45 42 55 47 5f 46 49 4e 41 4c 49 5a 45 20 20 20  EBUG_FINALIZE   
5e70: 20 20 20 20 28 30 78 30 30 30 32 29 0d 0a 20 20      (0x0002)..  
5e80: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
5e90: 49 4e 54 45 52 4f 50 5f 44 45 42 55 47 5f 42 41  INTEROP_DEBUG_BA
5ea0: 43 4b 55 50 5f 46 49 4e 49 53 48 20 20 28 30 78  CKUP_FINISH  (0x
5eb0: 30 30 30 34 29 0d 0a 20 20 20 20 20 20 20 20 20  0004)..         
5ec0: 20 20 20 20 20 20 20 20 20 49 4e 54 45 52 4f 50           INTEROP
5ed0: 5f 44 45 42 55 47 5f 4f 50 45 4e 20 20 20 20 20  _DEBUG_OPEN     
5ee0: 20 20 20 20 20 20 28 30 78 30 30 30 38 29 0d 0a        (0x0008)..
5ef0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
5f00: 20 20 49 4e 54 45 52 4f 50 5f 44 45 42 55 47 5f    INTEROP_DEBUG_
5f10: 4f 50 45 4e 31 36 20 20 20 20 20 20 20 20 20 28  OPEN16         (
5f20: 30 78 30 30 31 30 29 0d 0a 20 20 20 20 20 20 20  0x0010)..       
5f30: 20 20 20 20 20 20 20 20 20 20 20 49 4e 54 45 52             INTER
5f40: 4f 50 5f 44 45 42 55 47 5f 50 52 45 50 41 52 45  OP_DEBUG_PREPARE
5f50: 20 20 20 20 20 20 20 20 28 30 78 30 30 32 30 29          (0x0020)
5f60: 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20  ..              
5f70: 20 20 20 20 49 4e 54 45 52 4f 50 5f 44 45 42 55      INTEROP_DEBU
5f80: 47 5f 50 52 45 50 41 52 45 31 36 20 20 20 20 20  G_PREPARE16     
5f90: 20 28 30 78 30 30 34 30 29 0d 0a 20 20 20 20 20   (0x0040)..     
5fa0: 20 20 20 20 20 20 20 20 20 20 20 20 20 49 4e 54               INT
5fb0: 45 52 4f 50 5f 44 45 42 55 47 5f 52 45 53 45 54  EROP_DEBUG_RESET
5fc0: 20 20 20 20 20 20 20 20 20 20 28 30 78 30 30 38            (0x008
5fd0: 30 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20  0)..            
5fe0: 20 20 20 20 20 20 49 4e 54 45 52 4f 50 5f 44 45        INTEROP_DE
5ff0: 42 55 47 5f 43 48 41 4e 47 45 53 20 20 20 20 20  BUG_CHANGES     
6000: 20 20 20 28 30 78 30 31 30 30 29 0d 0a 20 20 20     (0x0100)..   
6010: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 49                 I
6020: 4e 54 45 52 4f 50 5f 44 45 42 55 47 5f 42 52 45  NTEROP_DEBUG_BRE
6030: 41 4b 20 20 20 20 20 20 20 20 20 20 28 30 78 30  AK          (0x0
6040: 32 30 30 29 0d 0a 20 20 20 20 2d 2d 3e 0d 0a 20  200)..    -->.. 
6050: 20 20 20 3c 49 6e 74 65 72 6f 70 44 65 62 75 67     <InteropDebug
6060: 20 43 6f 6e 64 69 74 69 6f 6e 3d 22 27 24 28 49   Condition="'$(I
6070: 6e 74 65 72 6f 70 44 65 62 75 67 29 27 20 3d 3d  nteropDebug)' ==
6080: 20 27 27 20 41 6e 64 20 27 24 28 43 6f 6e 66 69   '' And '$(Confi
6090: 67 75 72 61 74 69 6f 6e 29 27 20 3d 3d 20 27 44  guration)' == 'D
60a0: 65 62 75 67 27 22 3e 74 72 75 65 3c 2f 49 6e 74  ebug'">true</Int
60b0: 65 72 6f 70 44 65 62 75 67 3e 0d 0a 20 20 20 20  eropDebug>..    
60c0: 3c 49 6e 74 65 72 6f 70 44 65 62 75 67 20 43 6f  <InteropDebug Co
60d0: 6e 64 69 74 69 6f 6e 3d 22 27 24 28 49 6e 74 65  ndition="'$(Inte
60e0: 72 6f 70 44 65 62 75 67 29 27 20 3d 3d 20 27 27  ropDebug)' == ''
60f0: 20 41 6e 64 20 27 24 28 43 6f 6e 66 69 67 75 72   And '$(Configur
6100: 61 74 69 6f 6e 29 27 20 21 3d 20 27 44 65 62 75  ation)' != 'Debu
6110: 67 27 22 3e 66 61 6c 73 65 3c 2f 49 6e 74 65 72  g'">false</Inter
6120: 6f 70 44 65 62 75 67 3e 0d 0a 0d 0a 20 20 20 20  opDebug>....    
6130: 3c 21 2d 2d 0d 0a 20 20 20 20 20 20 20 20 4e 4f  <!--..        NO
6140: 54 45 3a 20 44 69 73 61 62 6c 65 20 61 6c 6c 20  TE: Disable all 
6150: 75 73 65 20 6f 66 20 74 68 65 20 73 71 6c 69 74  use of the sqlit
6160: 65 33 5f 63 6c 6f 73 65 5f 76 32 28 29 20 6e 61  e3_close_v2() na
6170: 74 69 76 65 20 41 50 49 20 61 6e 64 20 75 73 65  tive API and use
6180: 20 74 68 65 0d 0a 20 20 20 20 20 20 20 20 20 20   the..          
6190: 20 20 20 20 6c 65 67 61 63 79 20 53 79 73 74 65      legacy Syste
61a0: 6d 2e 44 61 74 61 2e 53 51 4c 69 74 65 20 63 6f  m.Data.SQLite co
61b0: 6e 6e 65 63 74 69 6f 6e 20 63 6c 6f 73 69 6e 67  nnection closing
61c0: 20 61 6c 67 6f 72 69 74 68 6d 20 69 6e 73 74 65   algorithm inste
61d0: 61 64 2e 0d 0a 20 20 20 20 20 20 20 20 20 20 20  ad...           
61e0: 20 20 20 42 79 20 64 65 66 61 75 6c 74 2c 20 74     By default, t
61f0: 68 69 73 20 69 73 20 64 69 73 61 62 6c 65 64 2e  his is disabled.
6200: 20 20 49 66 20 74 68 69 73 20 69 73 20 65 6e 61    If this is ena
6210: 62 6c 65 64 2c 20 69 74 20 6d 75 73 74 20 61 6c  bled, it must al
6220: 73 6f 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20  so..            
6230: 20 20 62 65 20 65 6e 61 62 6c 65 64 20 76 69 61    be enabled via
6240: 20 74 68 65 20 22 49 4e 54 45 52 4f 50 5f 4c 45   the "INTEROP_LE
6250: 47 41 43 59 5f 43 4c 4f 53 45 3d 31 22 20 70 72  GACY_CLOSE=1" pr
6260: 65 70 72 6f 63 65 73 73 6f 72 20 64 65 66 69 6e  eprocessor defin
6270: 65 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20  e..             
6280: 20 62 65 69 6e 67 20 70 72 65 73 65 6e 74 20 69   being present i
6290: 6e 20 74 68 65 20 22 49 4e 54 45 52 4f 50 5f 45  n the "INTEROP_E
62a0: 58 54 52 41 5f 44 45 46 49 4e 45 53 22 20 6d 61  XTRA_DEFINES" ma
62b0: 63 72 6f 20 69 6e 20 74 68 65 20 62 75 69 6c 64  cro in the build
62c0: 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20  ..              
62d0: 70 72 6f 70 65 72 74 69 65 73 20 66 69 6c 65 3a  properties file:
62e0: 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20  ....            
62f0: 20 20 20 20 20 20 22 53 51 4c 69 74 65 2e 49 6e        "SQLite.In
6300: 74 65 72 6f 70 5c 70 72 6f 70 73 5c 53 51 4c 69  terop\props\SQLi
6310: 74 65 2e 49 6e 74 65 72 6f 70 2e 32 30 59 59 2e  te.Interop.20YY.
6320: 5b 76 73 5d 70 72 6f 70 73 22 0d 0a 0d 0a 20 20  [vs]props"....  
6330: 20 20 20 20 20 20 20 20 20 20 20 20 66 6f 72 20              for 
6340: 74 68 65 20 63 6f 72 72 65 73 70 6f 6e 64 69 6e  the correspondin
6350: 67 20 76 65 72 73 69 6f 6e 28 73 29 20 6f 66 20  g version(s) of 
6360: 56 69 73 75 61 6c 20 53 74 75 64 69 6f 2e 0d 0a  Visual Studio...
6370: 20 20 20 20 2d 2d 3e 0d 0a 20 20 20 20 3c 49 6e      -->..    <In
6380: 74 65 72 6f 70 4c 65 67 61 63 79 43 6c 6f 73 65  teropLegacyClose
6390: 20 43 6f 6e 64 69 74 69 6f 6e 3d 22 27 24 28 49   Condition="'$(I
63a0: 6e 74 65 72 6f 70 4c 65 67 61 63 79 43 6c 6f 73  nteropLegacyClos
63b0: 65 29 27 20 3d 3d 20 27 27 22 3e 66 61 6c 73 65  e)' == ''">false
63c0: 3c 2f 49 6e 74 65 72 6f 70 4c 65 67 61 63 79 43  </InteropLegacyC
63d0: 6c 6f 73 65 3e 0d 0a 0d 0a 20 20 20 20 3c 21 2d  lose>....    <!-
63e0: 2d 0d 0a 20 20 20 20 20 20 20 20 4e 4f 54 45 3a  -..        NOTE:
63f0: 20 45 6e 61 62 6c 65 20 74 68 65 20 6c 6f 67 67   Enable the logg
6400: 69 6e 67 20 63 61 6c 6c 62 61 63 6b 20 69 6e 20  ing callback in 
6410: 74 68 65 20 63 75 73 74 6f 6d 20 62 75 69 6c 74  the custom built
6420: 20 69 6e 74 65 72 6f 70 20 44 4c 4c 20 28 69 2e   interop DLL (i.
6430: 65 2e 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20  e...            
6440: 20 20 22 53 51 4c 69 74 65 2e 49 6e 74 65 72 6f    "SQLite.Intero
6450: 70 2e 64 6c 6c 22 29 3f 20 20 42 79 20 64 65 66  p.dll")?  By def
6460: 61 75 6c 74 2c 20 74 68 69 73 20 69 73 20 65 6e  ault, this is en
6470: 61 62 6c 65 64 20 69 6e 20 74 68 65 20 44 65 62  abled in the Deb
6480: 75 67 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20  ug..            
6490: 20 20 62 75 69 6c 64 20 63 6f 6e 66 69 67 75 72    build configur
64a0: 61 74 69 6f 6e 2e 20 20 49 66 20 74 68 69 73 20  ation.  If this 
64b0: 69 73 20 64 69 73 61 62 6c 65 64 2c 20 74 68 65  is disabled, the
64c0: 20 6c 6f 67 67 69 6e 67 20 63 61 6c 6c 62 61 63   logging callbac
64d0: 6b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20  k..             
64e0: 20 77 69 6c 6c 20 62 65 20 75 6e 61 76 61 69 6c   will be unavail
64f0: 61 62 6c 65 20 61 6e 64 20 64 69 61 67 6e 6f 73  able and diagnos
6500: 74 69 63 20 6d 65 73 73 61 67 65 73 20 6d 61 79  tic messages may
6510: 20 6e 6f 74 20 62 65 20 73 65 65 6e 20 69 66 0d   not be seen if.
6520: 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 61  .              a
6530: 6e 6f 74 68 65 72 20 6e 61 74 69 76 65 20 6c 6f  nother native lo
6540: 67 67 69 6e 67 20 63 61 6c 6c 62 61 63 6b 20 69  gging callback i
6550: 73 20 6e 6f 74 20 63 6f 6e 66 69 67 75 72 65 64  s not configured
6560: 2e 20 20 49 66 20 74 68 69 73 20 69 73 0d 0a 20  .  If this is.. 
6570: 20 20 20 20 20 20 20 20 20 20 20 20 20 65 6e 61               ena
6580: 62 6c 65 64 2c 20 69 74 20 6d 75 73 74 20 61 6c  bled, it must al
6590: 73 6f 20 62 65 20 65 6e 61 62 6c 65 64 20 76 69  so be enabled vi
65a0: 61 20 74 68 65 20 22 49 4e 54 45 52 4f 50 5f 4c  a the "INTEROP_L
65b0: 4f 47 3d 31 22 0d 0a 20 20 20 20 20 20 20 20 20  OG=1"..         
65c0: 20 20 20 20 20 70 72 65 70 72 6f 63 65 73 73 6f       preprocesso
65d0: 72 20 64 65 66 69 6e 65 20 62 65 69 6e 67 20 70  r define being p
65e0: 72 65 73 65 6e 74 20 69 6e 20 74 68 65 20 22 49  resent in the "I
65f0: 4e 54 45 52 4f 50 5f 44 45 42 55 47 5f 44 45 46  NTEROP_DEBUG_DEF
6600: 49 4e 45 53 22 0d 0a 20 20 20 20 20 20 20 20 20  INES"..         
6610: 20 20 20 20 20 6d 61 63 72 6f 20 69 6e 20 74 68       macro in th
6620: 65 20 62 75 69 6c 64 20 70 72 6f 70 65 72 74 69  e build properti
6630: 65 73 20 66 69 6c 65 3a 0d 0a 0d 0a 20 20 20 20  es file:....    
6640: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 53                "S
6650: 51 4c 69 74 65 2e 49 6e 74 65 72 6f 70 5c 70 72  QLite.Interop\pr
6660: 6f 70 73 5c 53 51 4c 69 74 65 2e 49 6e 74 65 72  ops\SQLite.Inter
6670: 6f 70 2e 32 30 59 59 2e 5b 76 73 5d 70 72 6f 70  op.20YY.[vs]prop
6680: 73 22 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20  s"....          
6690: 20 20 20 20 66 6f 72 20 74 68 65 20 63 6f 72 72      for the corr
66a0: 65 73 70 6f 6e 64 69 6e 67 20 76 65 72 73 69 6f  esponding versio
66b0: 6e 28 73 29 20 6f 66 20 56 69 73 75 61 6c 20 53  n(s) of Visual S
66c0: 74 75 64 69 6f 2e 0d 0a 20 20 20 20 2d 2d 3e 0d  tudio...    -->.
66d0: 0a 20 20 20 20 3c 49 6e 74 65 72 6f 70 4c 6f 67  .    <InteropLog
66e0: 20 43 6f 6e 64 69 74 69 6f 6e 3d 22 27 24 28 49   Condition="'$(I
66f0: 6e 74 65 72 6f 70 4c 6f 67 29 27 20 3d 3d 20 27  nteropLog)' == '
6700: 27 20 41 6e 64 20 27 24 28 43 6f 6e 66 69 67 75  ' And '$(Configu
6710: 72 61 74 69 6f 6e 29 27 20 3d 3d 20 27 44 65 62  ration)' == 'Deb
6720: 75 67 27 22 3e 74 72 75 65 3c 2f 49 6e 74 65 72  ug'">true</Inter
6730: 6f 70 4c 6f 67 3e 0d 0a 20 20 20 20 3c 49 6e 74  opLog>..    <Int
6740: 65 72 6f 70 4c 6f 67 20 43 6f 6e 64 69 74 69 6f  eropLog Conditio
6750: 6e 3d 22 27 24 28 49 6e 74 65 72 6f 70 4c 6f 67  n="'$(InteropLog
6760: 29 27 20 3d 3d 20 27 27 20 41 6e 64 20 27 24 28  )' == '' And '$(
6770: 43 6f 6e 66 69 67 75 72 61 74 69 6f 6e 29 27 20  Configuration)' 
6780: 21 3d 20 27 44 65 62 75 67 27 22 3e 66 61 6c 73  != 'Debug'">fals
6790: 65 3c 2f 49 6e 74 65 72 6f 70 4c 6f 67 3e 0d 0a  e</InteropLog>..
67a0: 0d 0a 20 20 20 20 3c 21 2d 2d 0d 0a 20 20 20 20  ..    <!--..    
67b0: 20 20 20 20 4e 4f 54 45 3a 20 45 6e 61 62 6c 65      NOTE: Enable
67c0: 20 69 6e 63 6c 75 64 69 6e 67 20 74 68 65 20 76   including the v
67d0: 74 73 68 69 6d 20 6d 6f 64 75 6c 65 20 61 73 20  tshim module as 
67e0: 61 20 73 74 61 74 69 63 61 6c 6c 79 20 61 76 61  a statically ava
67f0: 69 6c 61 62 6c 65 0d 0a 20 20 20 20 20 20 20 20  ilable..        
6800: 20 20 20 20 20 20 65 78 74 65 6e 73 69 6f 6e 3f        extension?
6810: 20 20 54 68 69 73 20 77 69 6c 6c 20 61 6c 6c 6f    This will allo
6820: 77 20 76 69 72 74 75 61 6c 20 74 61 62 6c 65 73  w virtual tables
6830: 20 74 6f 20 62 65 20 69 6d 70 6c 65 6d 65 6e 74   to be implement
6840: 65 64 20 69 6e 0d 0a 20 20 20 20 20 20 20 20 20  ed in..         
6850: 20 20 20 20 20 6d 61 6e 61 67 65 64 20 63 6f 64       managed cod
6860: 65 2e 20 20 42 79 20 64 65 66 61 75 6c 74 2c 20  e.  By default, 
6870: 74 68 69 73 20 69 73 20 65 6e 61 62 6c 65 64 2e  this is enabled.
6880: 20 20 49 66 20 74 68 69 73 20 69 73 20 64 69 73    If this is dis
6890: 61 62 6c 65 64 2c 0d 0a 20 20 20 20 20 20 20 20  abled,..        
68a0: 20 20 20 20 20 20 73 75 70 70 6f 72 74 20 66 6f        support fo
68b0: 72 20 69 6d 70 6c 65 6d 65 6e 74 69 6e 67 20 76  r implementing v
68c0: 69 72 74 75 61 6c 20 74 61 62 6c 65 73 20 69 6e  irtual tables in
68d0: 20 6d 61 6e 61 67 65 64 20 63 6f 64 65 20 77 69   managed code wi
68e0: 6c 6c 20 62 65 0d 0a 20 20 20 20 20 20 20 20 20  ll be..         
68f0: 20 20 20 20 20 75 6e 61 76 61 69 6c 61 62 6c 65       unavailable
6900: 2e 20 20 49 66 20 74 68 69 73 20 69 73 20 65 6e  .  If this is en
6910: 61 62 6c 65 64 2c 20 69 74 20 6d 75 73 74 20 61  abled, it must a
6920: 6c 73 6f 20 62 65 20 65 6e 61 62 6c 65 64 20 76  lso be enabled v
6930: 69 61 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20  ia..            
6940: 20 20 74 68 65 20 22 49 4e 54 45 52 4f 50 5f 56    the "INTEROP_V
6950: 49 52 54 55 41 4c 5f 54 41 42 4c 45 3d 31 22 20  IRTUAL_TABLE=1" 
6960: 70 72 65 70 72 6f 63 65 73 73 6f 72 20 64 65 66  preprocessor def
6970: 69 6e 65 20 62 65 69 6e 67 20 70 72 65 73 65 6e  ine being presen
6980: 74 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20  t..             
6990: 20 69 6e 20 74 68 65 20 22 49 4e 54 45 52 4f 50   in the "INTEROP
69a0: 5f 45 58 54 52 41 5f 44 45 46 49 4e 45 53 22 20  _EXTRA_DEFINES" 
69b0: 6d 61 63 72 6f 20 69 6e 20 74 68 65 20 62 75 69  macro in the bui
69c0: 6c 64 20 70 72 6f 70 65 72 74 69 65 73 0d 0a 20  ld properties.. 
69d0: 20 20 20 20 20 20 20 20 20 20 20 20 20 66 69 6c               fil
69e0: 65 3a 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20  e:....          
69f0: 20 20 20 20 20 20 20 20 22 53 51 4c 69 74 65 2e          "SQLite.
6a00: 49 6e 74 65 72 6f 70 5c 70 72 6f 70 73 5c 53 51  Interop\props\SQ
6a10: 4c 69 74 65 2e 49 6e 74 65 72 6f 70 2e 32 30 59  Lite.Interop.20Y
6a20: 59 2e 5b 76 73 5d 70 72 6f 70 73 22 0d 0a 0d 0a  Y.[vs]props"....
6a30: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 62 6f                bo
6a40: 74 68 20 66 6f 72 20 74 68 65 20 63 6f 72 72 65  th for the corre
6a50: 73 70 6f 6e 64 69 6e 67 20 76 65 72 73 69 6f 6e  sponding version
6a60: 28 73 29 20 6f 66 20 56 69 73 75 61 6c 20 53 74  (s) of Visual St
6a70: 75 64 69 6f 2e 0d 0a 20 20 20 20 2d 2d 3e 0d 0a  udio...    -->..
6a80: 20 20 20 20 3c 49 6e 74 65 72 6f 70 56 69 72 74      <InteropVirt
6a90: 75 61 6c 54 61 62 6c 65 20 43 6f 6e 64 69 74 69  ualTable Conditi
6aa0: 6f 6e 3d 22 27 24 28 49 6e 74 65 72 6f 70 56 69  on="'$(InteropVi
6ab0: 72 74 75 61 6c 54 61 62 6c 65 29 27 20 3d 3d 20  rtualTable)' == 
6ac0: 27 27 22 3e 74 72 75 65 3c 2f 49 6e 74 65 72 6f  ''">true</Intero
6ad0: 70 56 69 72 74 75 61 6c 54 61 62 6c 65 3e 0d 0a  pVirtualTable>..
6ae0: 0d 0a 20 20 20 20 3c 21 2d 2d 0d 0a 20 20 20 20  ..    <!--..    
6af0: 20 20 20 20 4e 4f 54 45 3a 20 45 6e 61 62 6c 65      NOTE: Enable
6b00: 20 74 68 65 20 75 73 65 20 6f 66 20 6e 61 74 69   the use of nati
6b10: 76 65 20 57 69 6e 64 6f 77 73 20 41 50 49 73 2c  ve Windows APIs,
6b20: 20 77 68 65 6e 20 61 76 61 69 6c 61 62 6c 65 3f   when available?
6b30: 20 20 42 79 0d 0a 20 20 20 20 20 20 20 20 20 20    By..          
6b40: 20 20 20 20 64 65 66 61 75 6c 74 2c 20 74 68 69      default, thi
6b50: 73 20 69 73 20 65 6e 61 62 6c 65 64 2e 20 20 49  s is enabled.  I
6b60: 66 20 74 68 69 73 20 69 73 20 64 69 73 61 62 6c  f this is disabl
6b70: 65 64 2c 20 61 6c 6c 20 66 65 61 74 75 72 65 73  ed, all features
6b80: 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20  ..              
6b90: 74 68 61 74 20 72 65 71 75 69 72 65 20 74 68 65  that require the
6ba0: 20 75 73 65 20 6f 66 20 6e 61 74 69 76 65 20 57   use of native W
6bb0: 69 6e 64 6f 77 73 20 41 50 49 73 20 77 69 6c 6c  indows APIs will
6bc0: 20 62 65 20 75 6e 61 76 61 69 6c 61 62 6c 65 2e   be unavailable.
6bd0: 0d 0a 20 20 20 20 2d 2d 3e 0d 0a 20 20 20 20 3c  ..    -->..    <
6be0: 55 73 65 57 69 6e 64 6f 77 73 20 43 6f 6e 64 69  UseWindows Condi
6bf0: 74 69 6f 6e 3d 22 27 24 28 55 73 65 57 69 6e 64  tion="'$(UseWind
6c00: 6f 77 73 29 27 20 3d 3d 20 27 27 22 3e 74 72 75  ows)' == ''">tru
6c10: 65 3c 2f 55 73 65 57 69 6e 64 6f 77 73 3e 0d 0a  e</UseWindows>..
6c20: 0d 0a 20 20 20 20 3c 21 2d 2d 0d 0a 20 20 20 20  ..    <!--..    
6c30: 20 20 20 20 4e 4f 54 45 3a 20 46 6f 72 20 69 6e      NOTE: For in
6c40: 74 65 72 61 63 74 69 6f 6e 20 77 69 74 68 20 74  teraction with t
6c50: 68 65 20 45 6e 74 69 74 79 20 46 72 61 6d 65 77  he Entity Framew
6c60: 6f 72 6b 2c 20 61 73 73 75 6d 65 20 76 65 72 73  ork, assume vers
6c70: 69 6f 6e 20 36 20 6f 72 0d 0a 20 20 20 20 20 20  ion 6 or..      
6c80: 20 20 20 20 20 20 20 20 68 69 67 68 65 72 3f 20          higher? 
6c90: 20 42 79 20 64 65 66 61 75 6c 74 2c 20 74 68 69   By default, thi
6ca0: 73 20 69 73 20 64 69 73 61 62 6c 65 64 2e 20 20  s is disabled.  
6cb0: 49 66 20 74 68 69 73 20 69 73 20 65 6e 61 62 6c  If this is enabl
6cc0: 65 64 2c 20 74 68 65 0d 0a 20 20 20 20 20 20 20  ed, the..       
6cd0: 20 20 20 20 20 20 20 22 53 79 73 74 65 6d 2e 44         "System.D
6ce0: 61 74 61 2e 53 51 4c 69 74 65 2e 4c 69 6e 71 22  ata.SQLite.Linq"
6cf0: 20 61 73 73 65 6d 62 6c 79 20 77 69 6c 6c 20 6e   assembly will n
6d00: 6f 74 20 77 6f 72 6b 20 77 69 74 68 20 61 6e 79  ot work with any
6d10: 20 45 6e 74 69 74 79 0d 0a 20 20 20 20 20 20 20   Entity..       
6d20: 20 20 20 20 20 20 20 46 72 61 6d 65 77 6f 72 6b         Framework
6d30: 20 70 72 69 6f 72 20 74 6f 20 76 65 72 73 69 6f   prior to versio
6d40: 6e 20 36 2e 0d 0a 20 20 20 20 2d 2d 3e 0d 0a 20  n 6...    -->.. 
6d50: 20 20 20 3c 55 73 65 45 6e 74 69 74 79 46 72 61     <UseEntityFra
6d60: 6d 65 77 6f 72 6b 36 20 43 6f 6e 64 69 74 69 6f  mework6 Conditio
6d70: 6e 3d 22 27 24 28 55 73 65 45 6e 74 69 74 79 46  n="'$(UseEntityF
6d80: 72 61 6d 65 77 6f 72 6b 36 29 27 20 3d 3d 20 27  ramework6)' == '
6d90: 27 22 3e 66 61 6c 73 65 3c 2f 55 73 65 45 6e 74  '">false</UseEnt
6da0: 69 74 79 46 72 61 6d 65 77 6f 72 6b 36 3e 0d 0a  ityFramework6>..
6db0: 20 20 3c 2f 50 72 6f 70 65 72 74 79 47 72 6f 75    </PropertyGrou
6dc0: 70 3e 0d 0a 0d 0a 20 20 3c 21 2d 2d 0d 0a 20 20  p>....  <!--..  
6dd0: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a  ****************
6de0: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a  ****************
6df0: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a  ****************
6e00: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a  ****************
6e10: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 0d 0a  **************..
6e20: 20 20 2a 2a 20 20 20 20 20 20 20 20 20 20 20 20    **            
6e30: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
6e40: 20 54 72 61 63 65 20 50 72 6f 70 65 72 74 69 65   Trace Propertie
6e50: 73 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  s               
6e60: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2a 2a                **
6e70: 0d 0a 20 20 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a  ..  ************
6e80: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a  ****************
6e90: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a  ****************
6ea0: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a  ****************
6eb0: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a  ****************
6ec0: 2a 2a 0d 0a 20 20 2d 2d 3e 0d 0a 0d 0a 20 20 3c  **..  -->....  <
6ed0: 50 72 6f 70 65 72 74 79 47 72 6f 75 70 3e 0d 0a  PropertyGroup>..
6ee0: 20 20 20 20 3c 21 2d 2d 0d 0a 20 20 20 20 20 20      <!--..      
6ef0: 20 20 4e 4f 54 45 3a 20 45 6e 61 62 6c 65 20 74    NOTE: Enable t
6f00: 72 61 63 69 6e 67 20 6f 66 20 65 76 65 6e 74 73  racing of events
6f10: 20 72 65 6c 61 74 65 64 20 74 6f 20 63 6f 6e 6e   related to conn
6f20: 65 63 74 69 6f 6e 20 68 61 6e 64 6c 69 6e 67 3f  ection handling?
6f30: 20 20 42 79 0d 0a 20 20 20 20 20 20 20 20 20 20    By..          
6f40: 20 20 20 20 64 65 66 61 75 6c 74 2c 20 74 68 69      default, thi
6f50: 73 20 69 73 20 64 69 73 61 62 6c 65 64 2e 0d 0a  s is disabled...
6f60: 20 20 20 20 2d 2d 3e 0d 0a 20 20 20 20 3c 54 72      -->..    <Tr
6f70: 61 63 65 43 6f 6e 6e 65 63 74 69 6f 6e 20 43 6f  aceConnection Co
6f80: 6e 64 69 74 69 6f 6e 3d 22 27 24 28 54 72 61 63  ndition="'$(Trac
6f90: 65 43 6f 6e 6e 65 63 74 69 6f 6e 29 27 20 3d 3d  eConnection)' ==
6fa0: 20 27 27 22 3e 66 61 6c 73 65 3c 2f 54 72 61 63   ''">false</Trac
6fb0: 65 43 6f 6e 6e 65 63 74 69 6f 6e 3e 0d 0a 0d 0a  eConnection>....
6fc0: 20 20 20 20 3c 21 2d 2d 0d 0a 20 20 20 20 20 20      <!--..      
6fd0: 20 20 4e 4f 54 45 3a 20 45 6e 61 62 6c 65 20 74    NOTE: Enable t
6fe0: 72 61 63 69 6e 67 20 6f 66 20 65 76 65 6e 74 73  racing of events
6ff0: 20 72 65 6c 61 74 65 64 20 74 6f 20 61 75 74 6f   related to auto
7000: 6d 61 74 69 63 20 64 65 74 65 63 74 69 6f 6e 20  matic detection 
7010: 6f 66 20 74 68 65 0d 0a 20 20 20 20 20 20 20 20  of the..        
7020: 20 20 20 20 20 20 6e 61 74 69 76 65 20 6c 69 62        native lib
7030: 72 61 72 79 20 64 69 72 65 63 74 6f 72 79 20 77  rary directory w
7040: 69 74 68 69 6e 20 74 68 65 20 6e 61 74 69 76 65  ithin the native
7050: 20 6c 69 62 72 61 72 79 20 70 72 65 2d 6c 6f 61   library pre-loa
7060: 64 69 6e 67 0d 0a 20 20 20 20 20 20 20 20 20 20  ding..          
7070: 20 20 20 20 63 6f 64 65 3f 20 20 42 79 20 64 65      code?  By de
7080: 66 61 75 6c 74 2c 20 74 68 69 73 20 69 73 20 64  fault, this is d
7090: 69 73 61 62 6c 65 64 2e 0d 0a 20 20 20 20 2d 2d  isabled...    --
70a0: 3e 0d 0a 20 20 20 20 3c 54 72 61 63 65 44 65 74  >..    <TraceDet
70b0: 65 63 74 69 6f 6e 20 43 6f 6e 64 69 74 69 6f 6e  ection Condition
70c0: 3d 22 27 24 28 54 72 61 63 65 44 65 74 65 63 74  ="'$(TraceDetect
70d0: 69 6f 6e 29 27 20 3d 3d 20 27 27 22 3e 66 61 6c  ion)' == ''">fal
70e0: 73 65 3c 2f 54 72 61 63 65 44 65 74 65 63 74 69  se</TraceDetecti
70f0: 6f 6e 3e 0d 0a 0d 0a 20 20 20 20 3c 21 2d 2d 0d  on>....    <!--.
7100: 0a 20 20 20 20 20 20 20 20 4e 4f 54 45 3a 20 45  .        NOTE: E
7110: 6e 61 62 6c 65 20 74 72 61 63 69 6e 67 20 6f 66  nable tracing of
7120: 20 65 76 65 6e 74 73 20 72 65 6c 61 74 65 64 20   events related 
7130: 74 6f 20 43 72 69 74 69 63 61 6c 48 61 6e 64 6c  to CriticalHandl
7140: 65 20 68 61 6e 64 6c 69 6e 67 3f 20 20 42 79 0d  e handling?  By.
7150: 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 64  .              d
7160: 65 66 61 75 6c 74 2c 20 74 68 69 73 20 69 73 20  efault, this is 
7170: 64 69 73 61 62 6c 65 64 2e 0d 0a 20 20 20 20 2d  disabled...    -
7180: 2d 3e 0d 0a 20 20 20 20 3c 54 72 61 63 65 48 61  ->..    <TraceHa
7190: 6e 64 6c 65 20 43 6f 6e 64 69 74 69 6f 6e 3d 22  ndle Condition="
71a0: 27 24 28 54 72 61 63 65 48 61 6e 64 6c 65 29 27  '$(TraceHandle)'
71b0: 20 3d 3d 20 27 27 22 3e 66 61 6c 73 65 3c 2f 54   == ''">false</T
71c0: 72 61 63 65 48 61 6e 64 6c 65 3e 0d 0a 0d 0a 20  raceHandle>.... 
71d0: 20 20 20 3c 21 2d 2d 0d 0a 20 20 20 20 20 20 20     <!--..       
71e0: 20 4e 4f 54 45 3a 20 45 6e 61 62 6c 65 20 74 72   NOTE: Enable tr
71f0: 61 63 69 6e 67 20 6f 66 20 65 76 65 6e 74 73 20  acing of events 
7200: 72 65 6c 61 74 65 64 20 74 6f 20 74 68 65 20 6e  related to the n
7210: 61 74 69 76 65 20 6c 69 62 72 61 72 79 20 70 72  ative library pr
7220: 65 2d 6c 6f 61 64 69 6e 67 0d 0a 20 20 20 20 20  e-loading..     
7230: 20 20 20 20 20 20 20 20 20 63 6f 64 65 3f 20 20           code?  
7240: 42 79 20 64 65 66 61 75 6c 74 2c 20 74 68 69 73  By default, this
7250: 20 69 73 20 65 6e 61 62 6c 65 64 2e 0d 0a 20 20   is enabled...  
7260: 20 20 2d 2d 3e 0d 0a 20 20 20 20 3c 54 72 61 63    -->..    <Trac
7270: 65 50 72 65 4c 6f 61 64 20 43 6f 6e 64 69 74 69  ePreLoad Conditi
7280: 6f 6e 3d 22 27 24 28 54 72 61 63 65 50 72 65 4c  on="'$(TracePreL
7290: 6f 61 64 29 27 20 3d 3d 20 27 27 22 3e 74 72 75  oad)' == ''">tru
72a0: 65 3c 2f 54 72 61 63 65 50 72 65 4c 6f 61 64 3e  e</TracePreLoad>
72b0: 0d 0a 0d 0a 20 20 20 20 3c 21 2d 2d 0d 0a 20 20  ....    <!--..  
72c0: 20 20 20 20 20 20 4e 4f 54 45 3a 20 45 6e 61 62        NOTE: Enab
72d0: 6c 65 20 74 72 61 63 69 6e 67 20 6f 66 20 65 76  le tracing of ev
72e0: 65 6e 74 73 20 72 65 6c 61 74 65 64 20 74 6f 20  ents related to 
72f0: 74 68 65 20 73 68 61 72 65 64 20 6e 61 74 69 76  the shared nativ
7300: 65 20 6c 69 62 72 61 72 79 0d 0a 20 20 20 20 20  e library..     
7310: 20 20 20 20 20 20 20 20 20 70 72 65 2d 6c 6f 61           pre-loa
7320: 64 69 6e 67 20 63 6f 64 65 3f 20 20 42 79 20 64  ding code?  By d
7330: 65 66 61 75 6c 74 2c 20 74 68 69 73 20 69 73 20  efault, this is 
7340: 65 6e 61 62 6c 65 64 2e 0d 0a 20 20 20 20 2d 2d  enabled...    --
7350: 3e 0d 0a 20 20 20 20 3c 54 72 61 63 65 53 68 61  >..    <TraceSha
7360: 72 65 64 20 43 6f 6e 64 69 74 69 6f 6e 3d 22 27  red Condition="'
7370: 24 28 54 72 61 63 65 53 68 61 72 65 64 29 27 20  $(TraceShared)' 
7380: 3d 3d 20 27 27 22 3e 74 72 75 65 3c 2f 54 72 61  == ''">true</Tra
7390: 63 65 53 68 61 72 65 64 3e 0d 0a 0d 0a 20 20 20  ceShared>....   
73a0: 20 3c 21 2d 2d 0d 0a 20 20 20 20 20 20 20 20 4e   <!--..        N
73b0: 4f 54 45 3a 20 45 6e 61 62 6c 65 20 74 72 61 63  OTE: Enable trac
73c0: 69 6e 67 20 6f 66 20 65 76 65 6e 74 73 20 72 65  ing of events re
73d0: 6c 61 74 65 64 20 74 6f 20 74 68 65 20 70 72 65  lated to the pre
73e0: 70 61 72 65 64 20 73 74 61 74 65 6d 65 6e 74 73  pared statements
73f0: 3f 20 20 42 79 0d 0a 20 20 20 20 20 20 20 20 20  ?  By..         
7400: 20 20 20 20 20 64 65 66 61 75 6c 74 2c 20 74 68       default, th
7410: 69 73 20 69 73 20 64 69 73 61 62 6c 65 64 2e 0d  is is disabled..
7420: 0a 20 20 20 20 2d 2d 3e 0d 0a 20 20 20 20 3c 54  .    -->..    <T
7430: 72 61 63 65 53 74 61 74 65 6d 65 6e 74 20 43 6f  raceStatement Co
7440: 6e 64 69 74 69 6f 6e 3d 22 27 24 28 54 72 61 63  ndition="'$(Trac
7450: 65 53 74 61 74 65 6d 65 6e 74 29 27 20 3d 3d 20  eStatement)' == 
7460: 27 27 22 3e 66 61 6c 73 65 3c 2f 54 72 61 63 65  ''">false</Trace
7470: 53 74 61 74 65 6d 65 6e 74 3e 0d 0a 0d 0a 20 20  Statement>....  
7480: 20 20 3c 21 2d 2d 0d 0a 20 20 20 20 20 20 20 20    <!--..        
7490: 4e 4f 54 45 3a 20 45 6e 61 62 6c 65 20 74 72 61  NOTE: Enable tra
74a0: 63 69 6e 67 20 6f 66 20 70 6f 74 65 6e 74 69 61  cing of potentia
74b0: 6c 6c 79 20 69 6d 70 6f 72 74 61 6e 74 2c 20 62  lly important, b
74c0: 75 74 20 6e 6f 6e 2d 66 61 74 61 6c 20 65 72 72  ut non-fatal err
74d0: 6f 72 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20  or..            
74e0: 20 20 63 6f 6e 64 69 74 69 6f 6e 73 20 74 68 61    conditions tha
74f0: 74 20 63 61 6e 6e 6f 74 20 62 65 20 72 65 70 6f  t cannot be repo
7500: 72 74 65 64 20 61 6e 6f 74 68 65 72 20 77 61 79  rted another way
7510: 3f 20 20 42 79 20 64 65 66 61 75 6c 74 2c 20 74  ?  By default, t
7520: 68 69 73 0d 0a 20 20 20 20 20 20 20 20 20 20 20  his..           
7530: 20 20 20 69 73 20 65 6e 61 62 6c 65 64 2e 0d 0a     is enabled...
7540: 20 20 20 20 2d 2d 3e 0d 0a 20 20 20 20 3c 54 72      -->..    <Tr
7550: 61 63 65 57 61 72 6e 69 6e 67 20 43 6f 6e 64 69  aceWarning Condi
7560: 74 69 6f 6e 3d 22 27 24 28 54 72 61 63 65 57 61  tion="'$(TraceWa
7570: 72 6e 69 6e 67 29 27 20 3d 3d 20 27 27 22 3e 74  rning)' == ''">t
7580: 72 75 65 3c 2f 54 72 61 63 65 57 61 72 6e 69 6e  rue</TraceWarnin
7590: 67 3e 0d 0a 20 20 3c 2f 50 72 6f 70 65 72 74 79  g>..  </Property
75a0: 47 72 6f 75 70 3e 0d 0a 0d 0a 20 20 3c 21 2d 2d  Group>....  <!--
75b0: 0d 0a 20 20 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a  ..  ************
75c0: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a  ****************
75d0: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a  ****************
75e0: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a  ****************
75f0: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a  ****************
7600: 2a 2a 0d 0a 20 20 2a 2a 20 20 20 20 20 20 20 20  **..  **        
7610: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
7620: 20 20 20 20 57 61 72 6e 69 6e 67 20 50 72 6f 70      Warning Prop
7630: 65 72 74 69 65 73 20 20 20 20 20 20 20 20 20 20  erties          
7640: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
7650: 20 20 2a 2a 0d 0a 20 20 2a 2a 2a 2a 2a 2a 2a 2a    **..  ********
7660: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a  ****************
7670: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a  ****************
7680: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a  ****************
7690: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a  ****************
76a0: 2a 2a 2a 2a 2a 2a 0d 0a 20 20 2d 2d 3e 0d 0a 0d  ******..  -->...
76b0: 0a 20 20 3c 50 72 6f 70 65 72 74 79 47 72 6f 75  .  <PropertyGrou
76c0: 70 20 43 6f 6e 64 69 74 69 6f 6e 3d 22 27 24 28  p Condition="'$(
76d0: 43 6f 6e 66 69 67 75 72 61 74 69 6f 6e 29 27 20  Configuration)' 
76e0: 3d 3d 20 27 44 65 62 75 67 27 22 3e 0d 0a 20 20  == 'Debug'">..  
76f0: 20 20 3c 21 2d 2d 0d 0a 20 20 20 20 20 20 20 20    <!--..        
7700: 4e 4f 54 45 3a 20 44 65 62 75 67 20 62 75 69 6c  NOTE: Debug buil
7710: 64 2e 20 20 53 65 74 20 74 68 65 20 77 61 72 6e  d.  Set the warn
7720: 69 6e 67 20 6c 65 76 65 6c 20 74 6f 20 6d 61 78  ing level to max
7730: 69 6d 75 6d 2e 20 20 41 6c 73 6f 2c 20 64 69 73  imum.  Also, dis
7740: 61 62 6c 65 0d 0a 20 20 20 20 20 20 20 20 20 20  able..          
7750: 20 20 20 20 77 61 72 6e 69 6e 67 73 20 74 68 61      warnings tha
7760: 74 20 74 65 6e 64 20 74 6f 20 63 61 75 73 65 20  t tend to cause 
7770: 74 6f 6f 20 6d 75 63 68 20 6e 6f 69 73 65 2e 0d  too much noise..
7780: 0a 20 20 20 20 2d 2d 3e 0d 0a 20 20 20 20 3c 57  .    -->..    <W
7790: 61 72 6e 69 6e 67 4c 65 76 65 6c 3e 34 3c 2f 57  arningLevel>4</W
77a0: 61 72 6e 69 6e 67 4c 65 76 65 6c 3e 0d 0a 20 20  arningLevel>..  
77b0: 20 20 3c 4e 6f 57 61 72 6e 3e 36 31 38 2c 31 35    <NoWarn>618,15
77c0: 39 31 3b 33 30 30 31 3c 2f 4e 6f 57 61 72 6e 3e  91;3001</NoWarn>
77d0: 0d 0a 20 20 3c 2f 50 72 6f 70 65 72 74 79 47 72  ..  </PropertyGr
77e0: 6f 75 70 3e 0d 0a 0d 0a 20 20 3c 50 72 6f 70 65  oup>....  <Prope
77f0: 72 74 79 47 72 6f 75 70 20 43 6f 6e 64 69 74 69  rtyGroup Conditi
7800: 6f 6e 3d 22 27 24 28 43 6f 6e 66 69 67 75 72 61  on="'$(Configura
7810: 74 69 6f 6e 29 27 20 3d 3d 20 27 52 65 6c 65 61  tion)' == 'Relea
7820: 73 65 27 22 3e 0d 0a 20 20 20 20 3c 21 2d 2d 0d  se'">..    <!--.
7830: 0a 20 20 20 20 20 20 20 20 4e 4f 54 45 3a 20 52  .        NOTE: R
7840: 65 6c 65 61 73 65 20 62 75 69 6c 64 2e 20 20 53  elease build.  S
7850: 65 74 20 74 68 65 20 77 61 72 6e 69 6e 67 20 6c  et the warning l
7860: 65 76 65 6c 20 74 6f 20 6d 61 78 69 6d 75 6d 2e  evel to maximum.
7870: 20 20 41 6c 73 6f 2c 20 64 69 73 61 62 6c 65 0d    Also, disable.
7880: 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 77  .              w
7890: 61 72 6e 69 6e 67 73 20 74 68 61 74 20 74 65 6e  arnings that ten
78a0: 64 20 74 6f 20 63 61 75 73 65 20 74 6f 6f 20 6d  d to cause too m
78b0: 75 63 68 20 6e 6f 69 73 65 2e 0d 0a 20 20 20 20  uch noise...    
78c0: 2d 2d 3e 0d 0a 20 20 20 20 3c 57 61 72 6e 69 6e  -->..    <Warnin
78d0: 67 4c 65 76 65 6c 3e 34 3c 2f 57 61 72 6e 69 6e  gLevel>4</Warnin
78e0: 67 4c 65 76 65 6c 3e 0d 0a 20 20 20 20 3c 4e 6f  gLevel>..    <No
78f0: 57 61 72 6e 3e 36 31 38 2c 31 35 39 31 3b 33 30  Warn>618,1591;30
7900: 30 31 3c 2f 4e 6f 57 61 72 6e 3e 0d 0a 20 20 3c  01</NoWarn>..  <
7910: 2f 50 72 6f 70 65 72 74 79 47 72 6f 75 70 3e 0d  /PropertyGroup>.
7920: 0a 0d 0a 20 20 3c 21 2d 2d 0d 0a 20 20 2a 2a 2a  ...  <!--..  ***
7930: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a  ****************
7940: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a  ****************
7950: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a  ****************
7960: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a  ****************
7970: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 0d 0a 20 20 2a  ***********..  *
7980: 2a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  *               
7990: 20 20 20 20 20 20 20 42 75 69 6c 64 20 43 6f 6e         Build Con
79a0: 66 69 67 75 72 61 74 69 6f 6e 20 50 72 6f 70 65  figuration Prope
79b0: 72 74 69 65 73 20 20 20 20 20 20 20 20 20 20 20  rties           
79c0: 20 20 20 20 20 20 20 20 20 20 20 2a 2a 0d 0a 20             **.. 
79d0: 20 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a   ***************
79e0: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a  ****************
79f0: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a  ****************
7a00: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a  ****************
7a10: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 0d  ***************.
7a20: 0a 20 20 2d 2d 3e 0d 0a 0d 0a 20 20 3c 50 72 6f  .  -->....  <Pro
7a30: 70 65 72 74 79 47 72 6f 75 70 3e 0d 0a 20 20 20  pertyGroup>..   
7a40: 20 3c 21 2d 2d 0d 0a 20 20 20 20 20 20 20 20 4e   <!--..        N
7a50: 4f 54 45 3a 20 54 68 65 20 73 75 66 66 69 78 20  OTE: The suffix 
7a60: 66 6f 72 20 74 68 65 20 6e 61 6d 65 20 6f 66 20  for the name of 
7a70: 74 68 65 20 62 75 69 6c 64 20 63 6f 6e 66 69 67  the build config
7a80: 75 72 61 74 69 6f 6e 20 64 69 72 65 63 74 6f 72  uration director
7a90: 79 20 2e 20 20 42 79 0d 0a 20 20 20 20 20 20 20  y .  By..       
7aa0: 20 20 20 20 20 20 20 64 65 66 61 75 6c 74 2c 20         default, 
7ab0: 74 68 69 73 20 69 73 20 61 6e 20 65 6d 70 74 79  this is an empty
7ac0: 20 73 74 72 69 6e 67 2e 0d 0a 20 20 20 20 2d 2d   string...    --
7ad0: 3e 0d 0a 20 20 20 20 3c 43 6f 6e 66 69 67 75 72  >..    <Configur
7ae0: 61 74 69 6f 6e 53 75 66 66 69 78 20 43 6f 6e 64  ationSuffix Cond
7af0: 69 74 69 6f 6e 3d 22 27 24 28 43 6f 6e 66 69 67  ition="'$(Config
7b00: 75 72 61 74 69 6f 6e 53 75 66 66 69 78 29 27 20  urationSuffix)' 
7b10: 3d 3d 20 27 27 22 3e 3c 2f 43 6f 6e 66 69 67 75  == ''"></Configu
7b20: 72 61 74 69 6f 6e 53 75 66 66 69 78 3e 0d 0a 20  rationSuffix>.. 
7b30: 20 3c 2f 50 72 6f 70 65 72 74 79 47 72 6f 75 70   </PropertyGroup
7b40: 3e 0d 0a 0d 0a 20 20 3c 21 2d 2d 0d 0a 20 20 2a  >....  <!--..  *
7b50: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a  ****************
7b60: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a  ****************
7b70: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a  ****************
7b80: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a  ****************
7b90: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 0d 0a 20  *************.. 
7ba0: 20 2a 2a 20 20 20 20 20 20 20 20 20 20 20 20 20   **             
7bb0: 20 20 20 20 20 20 20 20 20 20 20 20 52 65 6c 61              Rela
7bc0: 74 69 76 65 20 50 61 74 68 20 50 72 6f 70 65 72  tive Path Proper
7bd0: 74 69 65 73 20 20 20 20 20 20 20 20 20 20 20 20  ties            
7be0: 20 20 20 20 20 20 20 20 20 20 20 20 20 2a 2a 0d               **.
7bf0: 0a 20 20 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a  .  *************
7c00: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a  ****************
7c10: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a  ****************
7c20: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a  ****************
7c30: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a  ****************
7c40: 2a 0d 0a 20 20 2d 2d 3e 0d 0a 0d 0a 20 20 3c 50  *..  -->....  <P
7c50: 72 6f 70 65 72 74 79 47 72 6f 75 70 20 43 6f 6e  ropertyGroup Con
7c60: 64 69 74 69 6f 6e 3d 22 27 24 28 53 51 4c 69 74  dition="'$(SQLit
7c70: 65 4e 65 74 44 69 72 29 27 20 21 3d 20 27 27 22  eNetDir)' != ''"
7c80: 3e 0d 0a 20 20 20 20 3c 21 2d 2d 0d 0a 20 20 20  >..    <!--..   
7c90: 20 20 20 20 20 4e 4f 54 45 3a 20 4b 65 65 70 20       NOTE: Keep 
7ca0: 61 6c 6c 20 74 68 65 20 69 6e 74 65 72 6d 65 64  all the intermed
7cb0: 69 61 74 65 20 66 69 6c 65 73 20 69 6e 20 6f 6e  iate files in on
7cc0: 65 20 70 6c 61 63 65 2e 20 20 54 68 65 20 56 69  e place.  The Vi
7cd0: 73 75 61 6c 20 53 74 75 64 69 6f 0d 0a 20 20 20  sual Studio..   
7ce0: 20 20 20 20 20 20 20 20 20 20 20 49 44 45 20 73             IDE s
7cf0: 65 65 6d 73 20 74 6f 20 68 61 76 65 20 61 20 6e  eems to have a n
7d00: 61 73 74 79 20 68 61 62 69 74 20 6f 66 20 69 67  asty habit of ig
7d10: 6e 6f 72 69 6e 67 20 74 68 69 73 20 73 65 74 74  noring this sett
7d20: 69 6e 67 2e 20 20 54 68 65 0d 0a 20 20 20 20 20  ing.  The..     
7d30: 20 20 20 20 20 20 20 20 20 56 69 73 75 61 6c 20           Visual 
7d40: 53 74 75 64 69 6f 20 49 44 45 20 74 68 65 6e 20  Studio IDE then 
7d50: 66 61 69 6c 73 20 74 6f 20 62 75 69 6c 64 20 74  fails to build t
7d60: 68 65 20 70 72 6f 6a 65 63 74 28 73 29 20 70 72  he project(s) pr
7d70: 6f 70 65 72 6c 79 20 77 68 65 6e 0d 0a 20 20 20  operly when..   
7d80: 20 20 20 20 20 20 20 20 20 20 20 74 68 65 20 6f             the o
7d90: 75 74 70 75 74 20 64 6f 65 73 20 6e 6f 74 20 65  utput does not e
7da0: 6e 64 20 75 70 20 77 68 65 72 65 20 69 74 20 65  nd up where it e
7db0: 78 70 65 63 74 73 20 74 68 65 20 6f 75 74 70 75  xpects the outpu
7dc0: 74 20 74 6f 20 62 65 2e 20 20 54 68 65 0d 0a 20  t to be.  The.. 
7dd0: 20 20 20 20 20 20 20 20 20 20 20 20 20 76 61 6c               val
7de0: 75 65 20 6f 66 20 74 68 69 73 20 70 72 6f 70 65  ue of this prope
7df0: 72 74 79 20 6d 75 73 74 20 68 61 76 65 20 61 20  rty must have a 
7e00: 74 72 61 69 6c 69 6e 67 20 62 61 63 6b 73 6c 61  trailing backsla
7e10: 73 68 2e 0d 0a 20 20 20 20 2d 2d 3e 0d 0a 20 20  sh...    -->..  
7e20: 20 20 3c 42 61 73 65 49 6e 74 65 72 6d 65 64 69    <BaseIntermedi
7e30: 61 74 65 4f 75 74 70 75 74 50 61 74 68 20 43 6f  ateOutputPath Co
7e40: 6e 64 69 74 69 6f 6e 3d 22 27 24 28 43 6f 6e 66  ndition="'$(Conf
7e50: 69 67 75 72 61 74 69 6f 6e 53 75 66 66 69 78 29  igurationSuffix)
7e60: 27 20 3d 3d 20 27 27 22 3e 24 28 53 51 4c 69 74  ' == ''">$(SQLit
7e70: 65 4e 65 74 44 69 72 29 5c 6f 62 6a 5c 24 28 43  eNetDir)\obj\$(C
7e80: 6f 6e 66 69 67 75 72 61 74 69 6f 6e 59 65 61 72  onfigurationYear
7e90: 29 5c 3c 2f 42 61 73 65 49 6e 74 65 72 6d 65 64  )\</BaseIntermed
7ea0: 69 61 74 65 4f 75 74 70 75 74 50 61 74 68 3e 0d  iateOutputPath>.
7eb0: 0a 20 20 20 20 3c 42 61 73 65 49 6e 74 65 72 6d  .    <BaseInterm
7ec0: 65 64 69 61 74 65 4f 75 74 70 75 74 50 61 74 68  ediateOutputPath
7ed0: 20 43 6f 6e 64 69 74 69 6f 6e 3d 22 27 24 28 43   Condition="'$(C
7ee0: 6f 6e 66 69 67 75 72 61 74 69 6f 6e 53 75 66 66  onfigurationSuff
7ef0: 69 78 29 27 20 21 3d 20 27 27 22 3e 24 28 53 51  ix)' != ''">$(SQ
7f00: 4c 69 74 65 4e 65 74 44 69 72 29 5c 6f 62 6a 5c  LiteNetDir)\obj\
7f10: 24 28 43 6f 6e 66 69 67 75 72 61 74 69 6f 6e 59  $(ConfigurationY
7f20: 65 61 72 29 5c 24 28 43 6f 6e 66 69 67 75 72 61  ear)\$(Configura
7f30: 74 69 6f 6e 53 75 66 66 69 78 29 5c 3c 2f 42 61  tionSuffix)\</Ba
7f40: 73 65 49 6e 74 65 72 6d 65 64 69 61 74 65 4f 75  seIntermediateOu
7f50: 74 70 75 74 50 61 74 68 3e 0d 0a 20 20 3c 2f 50  tputPath>..  </P
7f60: 72 6f 70 65 72 74 79 47 72 6f 75 70 3e 0d 0a 0d  ropertyGroup>...
7f70: 0a 20 20 3c 21 2d 2d 0d 0a 20 20 2a 2a 2a 2a 2a  .  <!--..  *****
7f80: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a  ****************
7f90: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a  ****************
7fa0: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a  ****************
7fb0: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a  ****************
7fc0: 2a 2a 2a 2a 2a 2a 2a 2a 2a 0d 0a 20 20 2a 2a 20  *********..  ** 
7fd0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 50                 P
7fe0: 65 72 2d 43 6f 6e 66 69 67 75 72 61 74 69 6f 6e  er-Configuration
7ff0: 20 52 65 6c 61 74 69 76 65 20 50 61 74 68 20 50   Relative Path P
8000: 72 6f 70 65 72 74 69 65 73 20 20 20 20 20 20 20  roperties       
8010: 20 20 20 20 20 20 20 20 20 2a 2a 0d 0a 20 20 2a           **..  *
8020: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a  ****************
8030: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a  ****************
8040: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a  ****************
8050: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a  ****************
8060: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 0d 0a 20  *************.. 
8070: 20 2d 2d 3e 0d 0a 0d 0a 20 20 3c 50 72 6f 70 65   -->....  <Prope
8080: 72 74 79 47 72 6f 75 70 20 43 6f 6e 64 69 74 69  rtyGroup Conditi
8090: 6f 6e 3d 22 27 24 28 53 51 4c 69 74 65 4e 65 74  on="'$(SQLiteNet
80a0: 44 69 72 29 27 20 21 3d 20 27 27 20 41 6e 64 20  Dir)' != '' And 
80b0: 27 24 28 43 6f 6e 66 69 67 75 72 61 74 69 6f 6e  '$(Configuration
80c0: 29 27 20 21 3d 20 27 27 22 3e 0d 0a 20 20 20 20  )' != ''">..    
80d0: 3c 21 2d 2d 0d 0a 20 20 20 20 20 20 20 20 4e 4f  <!--..        NO
80e0: 54 45 3a 20 54 68 65 20 66 69 6e 61 6c 20 6f 75  TE: The final ou
80f0: 74 70 75 74 20 66 69 6c 65 73 20 6e 65 65 64 20  tput files need 
8100: 74 6f 20 65 6e 64 20 75 70 20 69 6e 20 6f 6e 65  to end up in one
8110: 20 70 6c 61 63 65 2e 20 20 54 68 65 20 76 61 6c   place.  The val
8120: 75 65 20 6f 66 0d 0a 20 20 20 20 20 20 20 20 20  ue of..         
8130: 20 20 20 20 20 74 68 69 73 20 70 72 6f 70 65 72       this proper
8140: 74 79 20 6d 75 73 74 20 68 61 76 65 20 61 20 74  ty must have a t
8150: 72 61 69 6c 69 6e 67 20 62 61 63 6b 73 6c 61 73  railing backslas
8160: 68 2e 0d 0a 20 20 20 20 2d 2d 3e 0d 0a 20 20 20  h...    -->..   
8170: 20 3c 42 69 6e 61 72 79 4f 75 74 70 75 74 50 61   <BinaryOutputPa
8180: 74 68 20 43 6f 6e 64 69 74 69 6f 6e 3d 22 27 24  th Condition="'$
8190: 28 42 69 6e 61 72 79 4f 75 74 70 75 74 50 61 74  (BinaryOutputPat
81a0: 68 29 27 20 3d 3d 20 27 27 22 3e 24 28 53 51 4c  h)' == ''">$(SQL
81b0: 69 74 65 4e 65 74 44 69 72 29 5c 62 69 6e 5c 24  iteNetDir)\bin\$
81c0: 28 43 6f 6e 66 69 67 75 72 61 74 69 6f 6e 59 65  (ConfigurationYe
81d0: 61 72 29 5c 24 28 43 6f 6e 66 69 67 75 72 61 74  ar)\$(Configurat
81e0: 69 6f 6e 29 24 28 43 6f 6e 66 69 67 75 72 61 74  ion)$(Configurat
81f0: 69 6f 6e 53 75 66 66 69 78 29 5c 62 69 6e 5c 3c  ionSuffix)\bin\<
8200: 2f 42 69 6e 61 72 79 4f 75 74 70 75 74 50 61 74  /BinaryOutputPat
8210: 68 3e 0d 0a 20 20 3c 2f 50 72 6f 70 65 72 74 79  h>..  </Property
8220: 47 72 6f 75 70 3e 0d 0a 0d 0a 20 20 3c 21 2d 2d  Group>....  <!--
8230: 0d 0a 20 20 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a  ..  ************
8240: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a  ****************
8250: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a  ****************
8260: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a  ****************
8270: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a  ****************
8280: 2a 2a 0d 0a 20 20 2a 2a 20 20 20 20 20 20 20 20  **..  **        
8290: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 53 74                St
82a0: 72 6f 6e 67 20 4e 61 6d 65 20 53 69 67 6e 69 6e  rong Name Signin
82b0: 67 20 50 72 6f 70 65 72 74 69 65 73 20 20 20 20  g Properties    
82c0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
82d0: 20 20 2a 2a 0d 0a 20 20 2a 2a 2a 2a 2a 2a 2a 2a    **..  ********
82e0: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a  ****************
82f0: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a  ****************
8300: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a  ****************
8310: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a  ****************
8320: 2a 2a 2a 2a 2a 2a 0d 0a 20 20 2d 2d 3e 0d 0a 0d  ******..  -->...
8330: 0a 20 20 3c 50 72 6f 70 65 72 74 79 47 72 6f 75  .  <PropertyGrou
8340: 70 20 43 6f 6e 64 69 74 69 6f 6e 3d 22 27 24 28  p Condition="'$(
8350: 53 51 4c 69 74 65 4e 65 74 44 69 72 29 27 20 21  SQLiteNetDir)' !
8360: 3d 20 27 27 20 41 6e 64 0d 0a 20 20 20 20 20 20  = '' And..      
8370: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
8380: 20 20 20 20 20 20 21 48 61 73 54 72 61 69 6c 69        !HasTraili
8390: 6e 67 53 6c 61 73 68 28 27 24 28 53 51 4c 69 74  ngSlash('$(SQLit
83a0: 65 4e 65 74 44 69 72 29 27 29 20 41 6e 64 0d 0a  eNetDir)') And..
83b0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
83c0: 20 20 20 20 20 20 20 20 20 20 20 20 28 28 27 24              (('$
83d0: 28 49 73 43 6f 6d 70 61 63 74 46 72 61 6d 65 77  (IsCompactFramew
83e0: 6f 72 6b 29 27 20 3d 3d 20 27 66 61 6c 73 65 27  ork)' == 'false'
83f0: 20 41 6e 64 20 45 78 69 73 74 73 28 27 24 28 53   And Exists('$(S
8400: 51 4c 69 74 65 4e 65 74 44 69 72 29 5c 4b 65 79  QLiteNetDir)\Key
8410: 73 5c 53 79 73 74 65 6d 2e 44 61 74 61 2e 53 51  s\System.Data.SQ
8420: 4c 69 74 65 2e 73 6e 6b 27 29 29 20 4f 72 0d 0a  Lite.snk')) Or..
8430: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
8440: 20 20 20 20 20 20 20 20 20 20 20 20 20 28 27 24               ('$
8450: 28 49 73 43 6f 6d 70 61 63 74 46 72 61 6d 65 77  (IsCompactFramew
8460: 6f 72 6b 29 27 20 21 3d 20 27 66 61 6c 73 65 27  ork)' != 'false'
8470: 20 41 6e 64 20 45 78 69 73 74 73 28 27 24 28 53   And Exists('$(S
8480: 51 4c 69 74 65 4e 65 74 44 69 72 29 5c 4b 65 79  QLiteNetDir)\Key
8490: 73 5c 53 79 73 74 65 6d 2e 44 61 74 61 2e 53 51  s\System.Data.SQ
84a0: 4c 69 74 65 2e 43 46 2e 73 6e 6b 27 29 29 29 22  Lite.CF.snk')))"
84b0: 3e 0d 0a 20 20 20 20 3c 21 2d 2d 0d 0a 20 20 20  >..    <!--..   
84c0: 20 20 20 20 20 4e 4f 54 45 3a 20 53 69 67 6e 20       NOTE: Sign 
84d0: 74 68 65 20 61 73 73 65 6d 62 6c 79 3f 20 20 42  the assembly?  B
84e0: 79 20 64 65 66 61 75 6c 74 2c 20 74 68 69 73 20  y default, this 
84f0: 69 73 20 65 6e 61 62 6c 65 64 2e 0d 0a 20 20 20  is enabled...   
8500: 20 2d 2d 3e 0d 0a 20 20 20 20 3c 53 69 67 6e 41   -->..    <SignA
8510: 73 73 65 6d 62 6c 79 20 43 6f 6e 64 69 74 69 6f  ssembly Conditio
8520: 6e 3d 22 27 24 28 53 69 67 6e 41 73 73 65 6d 62  n="'$(SignAssemb
8530: 6c 79 29 27 20 3d 3d 20 27 27 22 3e 74 72 75 65  ly)' == ''">true
8540: 3c 2f 53 69 67 6e 41 73 73 65 6d 62 6c 79 3e 0d  </SignAssembly>.
8550: 0a 0d 0a 20 20 20 20 3c 21 2d 2d 0d 0a 20 20 20  ...    <!--..   
8560: 20 20 20 20 20 4e 4f 54 45 3a 20 55 73 65 20 64       NOTE: Use d
8570: 65 6c 61 79 20 73 69 67 6e 69 6e 67 3f 20 20 42  elay signing?  B
8580: 79 20 64 65 66 61 75 6c 74 2c 20 74 68 69 73 20  y default, this 
8590: 69 73 20 64 69 73 61 62 6c 65 64 20 62 65 63 61  is disabled beca
85a0: 75 73 65 20 74 68 65 0d 0a 20 20 20 20 20 20 20  use the..       
85b0: 20 20 20 20 20 20 20 64 65 66 61 75 6c 74 20 73         default s
85c0: 74 72 6f 6e 67 20 6e 61 6d 65 20 6b 65 79 20 70  trong name key p
85d0: 61 69 72 20 69 73 20 69 6e 63 6c 75 64 65 64 20  air is included 
85e0: 77 69 74 68 20 74 68 65 20 73 6f 75 72 63 65 20  with the source 
85f0: 63 6f 64 65 2e 0d 0a 20 20 20 20 2d 2d 3e 0d 0a  code...    -->..
8600: 20 20 20 20 3c 44 65 6c 61 79 53 69 67 6e 20 43      <DelaySign C
8610: 6f 6e 64 69 74 69 6f 6e 3d 22 27 24 28 44 65 6c  ondition="'$(Del
8620: 61 79 53 69 67 6e 29 27 20 3d 3d 20 27 27 22 3e  aySign)' == ''">
8630: 66 61 6c 73 65 3c 2f 44 65 6c 61 79 53 69 67 6e  false</DelaySign
8640: 3e 0d 0a 0d 0a 20 20 20 20 3c 21 2d 2d 0d 0a 20  >....    <!--.. 
8650: 20 20 20 20 20 20 20 4e 4f 54 45 3a 20 54 68 65         NOTE: The
8660: 20 66 75 6c 6c 20 70 61 74 68 20 61 6e 64 20 66   full path and f
8670: 69 6c 65 20 6e 61 6d 65 20 66 6f 72 20 74 68 65  ile name for the
8680: 20 73 74 72 6f 6e 67 20 6e 61 6d 65 20 6b 65 79   strong name key
8690: 20 70 61 69 72 20 74 6f 20 75 73 65 2e 0d 0a 20   pair to use... 
86a0: 20 20 20 2d 2d 3e 0d 0a 20 20 20 20 3c 41 73 73     -->..    <Ass
86b0: 65 6d 62 6c 79 4f 72 69 67 69 6e 61 74 6f 72 4b  emblyOriginatorK
86c0: 65 79 46 69 6c 65 20 43 6f 6e 64 69 74 69 6f 6e  eyFile Condition
86d0: 3d 22 27 24 28 41 73 73 65 6d 62 6c 79 4f 72 69  ="'$(AssemblyOri
86e0: 67 69 6e 61 74 6f 72 4b 65 79 46 69 6c 65 29 27  ginatorKeyFile)'
86f0: 20 3d 3d 20 27 27 20 41 6e 64 20 27 24 28 49 73   == '' And '$(Is
8700: 43 6f 6d 70 61 63 74 46 72 61 6d 65 77 6f 72 6b  CompactFramework
8710: 29 27 20 3d 3d 20 27 66 61 6c 73 65 27 22 3e 24  )' == 'false'">$
8720: 28 53 51 4c 69 74 65 4e 65 74 44 69 72 29 5c 4b  (SQLiteNetDir)\K
8730: 65 79 73 5c 53 79 73 74 65 6d 2e 44 61 74 61 2e  eys\System.Data.
8740: 53 51 4c 69 74 65 2e 73 6e 6b 3c 2f 41 73 73 65  SQLite.snk</Asse
8750: 6d 62 6c 79 4f 72 69 67 69 6e 61 74 6f 72 4b 65  mblyOriginatorKe
8760: 79 46 69 6c 65 3e 0d 0a 20 20 20 20 3c 41 73 73  yFile>..    <Ass
8770: 65 6d 62 6c 79 4f 72 69 67 69 6e 61 74 6f 72 4b  emblyOriginatorK
8780: 65 79 46 69 6c 65 20 43 6f 6e 64 69 74 69 6f 6e  eyFile Condition
8790: 3d 22 27 24 28 41 73 73 65 6d 62 6c 79 4f 72 69  ="'$(AssemblyOri
87a0: 67 69 6e 61 74 6f 72 4b 65 79 46 69 6c 65 29 27  ginatorKeyFile)'
87b0: 20 3d 3d 20 27 27 20 41 6e 64 20 27 24 28 49 73   == '' And '$(Is
87c0: 43 6f 6d 70 61 63 74 46 72 61 6d 65 77 6f 72 6b  CompactFramework
87d0: 29 27 20 21 3d 20 27 66 61 6c 73 65 27 22 3e 24  )' != 'false'">$
87e0: 28 53 51 4c 69 74 65 4e 65 74 44 69 72 29 5c 4b  (SQLiteNetDir)\K
87f0: 65 79 73 5c 53 79 73 74 65 6d 2e 44 61 74 61 2e  eys\System.Data.
8800: 53 51 4c 69 74 65 2e 43 46 2e 73 6e 6b 3c 2f 41  SQLite.CF.snk</A
8810: 73 73 65 6d 62 6c 79 4f 72 69 67 69 6e 61 74 6f  ssemblyOriginato
8820: 72 4b 65 79 46 69 6c 65 3e 0d 0a 20 20 3c 2f 50  rKeyFile>..  </P
8830: 72 6f 70 65 72 74 79 47 72 6f 75 70 3e 0d 0a 3c  ropertyGroup>..<
8840: 2f 50 72 6f 6a 65 63 74 3e 0d 0a                 /Project>..