System.Data.SQLite
Hex Artifact Content
Not logged in

Artifact 4fd7ce3802be4e5a0d23ea98d3187357a8465289:


0000: 75 73 69 6e 67 20 6e 61 6d 65 73 70 61 63 65 20  using namespace 
0010: 53 79 73 74 65 6d 3a 3a 52 65 66 6c 65 63 74 69  System::Reflecti
0020: 6f 6e 3b 0a 75 73 69 6e 67 20 6e 61 6d 65 73 70  on;.using namesp
0030: 61 63 65 20 53 79 73 74 65 6d 3a 3a 52 75 6e 74  ace System::Runt
0040: 69 6d 65 3a 3a 43 6f 6d 70 69 6c 65 72 53 65 72  ime::CompilerSer
0050: 76 69 63 65 73 3b 0a 75 73 69 6e 67 20 6e 61 6d  vices;.using nam
0060: 65 73 70 61 63 65 20 53 79 73 74 65 6d 3a 3a 52  espace System::R
0070: 75 6e 74 69 6d 65 3a 3a 49 6e 74 65 72 6f 70 53  untime::InteropS
0080: 65 72 76 69 63 65 73 3b 0a 0a 2f 2f 0a 2f 2f 20  ervices;..//.// 
0090: 47 65 6e 65 72 61 6c 20 49 6e 66 6f 72 6d 61 74  General Informat
00a0: 69 6f 6e 20 61 62 6f 75 74 20 61 6e 20 61 73 73  ion about an ass
00b0: 65 6d 62 6c 79 20 69 73 20 63 6f 6e 74 72 6f 6c  embly is control
00c0: 6c 65 64 20 74 68 72 6f 75 67 68 20 74 68 65 20  led through the 
00d0: 66 6f 6c 6c 6f 77 69 6e 67 0a 2f 2f 20 73 65 74  following.// set
00e0: 20 6f 66 20 61 74 74 72 69 62 75 74 65 73 2e 20   of attributes. 
00f0: 43 68 61 6e 67 65 20 74 68 65 73 65 20 61 74 74  Change these att
0100: 72 69 62 75 74 65 20 76 61 6c 75 65 73 20 74 6f  ribute values to
0110: 20 6d 6f 64 69 66 79 20 74 68 65 20 69 6e 66 6f   modify the info
0120: 72 6d 61 74 69 6f 6e 0a 2f 2f 20 61 73 73 6f 63  rmation.// assoc
0130: 69 61 74 65 64 20 77 69 74 68 20 61 6e 20 61 73  iated with an as
0140: 73 65 6d 62 6c 79 2e 0a 2f 2f 0a 5b 61 73 73 65  sembly..//.[asse
0150: 6d 62 6c 79 3a 41 73 73 65 6d 62 6c 79 54 69 74  mbly:AssemblyTit
0160: 6c 65 41 74 74 72 69 62 75 74 65 28 22 53 79 73  leAttribute("Sys
0170: 74 65 6d 2e 44 61 74 61 2e 53 51 4c 69 74 65 22  tem.Data.SQLite"
0180: 29 5d 3b 0a 5b 61 73 73 65 6d 62 6c 79 3a 41 73  )];.[assembly:As
0190: 73 65 6d 62 6c 79 44 65 73 63 72 69 70 74 69 6f  semblyDescriptio
01a0: 6e 41 74 74 72 69 62 75 74 65 28 22 68 74 74 70  nAttribute("http
01b0: 3a 2f 2f 73 6f 75 72 63 65 66 6f 72 67 65 2e 6e  ://sourceforge.n
01c0: 65 74 2f 70 72 6f 6a 65 63 74 73 2f 73 71 6c 69  et/projects/sqli
01d0: 74 65 2d 64 6f 74 6e 65 74 32 22 29 5d 3b 0a 5b  te-dotnet2")];.[
01e0: 61 73 73 65 6d 62 6c 79 3a 41 73 73 65 6d 62 6c  assembly:Assembl
01f0: 79 43 6f 6e 66 69 67 75 72 61 74 69 6f 6e 41 74  yConfigurationAt
0200: 74 72 69 62 75 74 65 28 22 22 29 5d 3b 0a 5b 61  tribute("")];.[a
0210: 73 73 65 6d 62 6c 79 3a 41 73 73 65 6d 62 6c 79  ssembly:Assembly
0220: 43 6f 6d 70 61 6e 79 41 74 74 72 69 62 75 74 65  CompanyAttribute
0230: 28 22 22 29 5d 3b 0a 5b 61 73 73 65 6d 62 6c 79  ("")];.[assembly
0240: 3a 41 73 73 65 6d 62 6c 79 50 72 6f 64 75 63 74  :AssemblyProduct
0250: 41 74 74 72 69 62 75 74 65 28 22 53 79 73 74 65  Attribute("Syste
0260: 6d 2e 44 61 74 61 2e 53 51 4c 69 74 65 22 29 5d  m.Data.SQLite")]
0270: 3b 0a 5b 61 73 73 65 6d 62 6c 79 3a 41 73 73 65  ;.[assembly:Asse
0280: 6d 62 6c 79 43 6f 70 79 72 69 67 68 74 41 74 74  mblyCopyrightAtt
0290: 72 69 62 75 74 65 28 22 52 65 6c 65 61 73 65 64  ribute("Released
02a0: 20 74 6f 20 74 68 65 20 70 75 62 6c 69 63 20 64   to the public d
02b0: 6f 6d 61 69 6e 22 29 5d 3b 0a 5b 61 73 73 65 6d  omain")];.[assem
02c0: 62 6c 79 3a 41 73 73 65 6d 62 6c 79 54 72 61 64  bly:AssemblyTrad
02d0: 65 6d 61 72 6b 41 74 74 72 69 62 75 74 65 28 22  emarkAttribute("
02e0: 22 29 5d 3b 0a 5b 61 73 73 65 6d 62 6c 79 3a 41  ")];.[assembly:A
02f0: 73 73 65 6d 62 6c 79 43 75 6c 74 75 72 65 41 74  ssemblyCultureAt
0300: 74 72 69 62 75 74 65 28 22 22 29 5d 3b 0a 0a 2f  tribute("")];../
0310: 2f 0a 2f 2f 20 56 65 72 73 69 6f 6e 20 69 6e 66  /.// Version inf
0320: 6f 72 6d 61 74 69 6f 6e 20 66 6f 72 20 61 6e 20  ormation for an 
0330: 61 73 73 65 6d 62 6c 79 20 63 6f 6e 73 69 73 74  assembly consist
0340: 73 20 6f 66 20 74 68 65 20 66 6f 6c 6c 6f 77 69  s of the followi
0350: 6e 67 20 66 6f 75 72 20 76 61 6c 75 65 73 3a 0a  ng four values:.
0360: 2f 2f 0a 2f 2f 20 20 20 20 20 20 4d 61 6a 6f 72  //.//      Major
0370: 20 56 65 72 73 69 6f 6e 0a 2f 2f 20 20 20 20 20   Version.//     
0380: 20 4d 69 6e 6f 72 20 56 65 72 73 69 6f 6e 0a 2f   Minor Version./
0390: 2f 20 20 20 20 20 20 42 75 69 6c 64 20 4e 75 6d  /      Build Num
03a0: 62 65 72 0a 2f 2f 20 20 20 20 20 20 52 65 76 69  ber.//      Revi
03b0: 73 69 6f 6e 0a 2f 2f 0a 2f 2f 20 59 6f 75 20 63  sion.//.// You c
03c0: 61 6e 20 73 70 65 63 69 66 79 20 61 6c 6c 20 74  an specify all t
03d0: 68 65 20 76 61 6c 75 65 20 6f 72 20 79 6f 75 20  he value or you 
03e0: 63 61 6e 20 64 65 66 61 75 6c 74 20 74 68 65 20  can default the 
03f0: 52 65 76 69 73 69 6f 6e 20 61 6e 64 20 42 75 69  Revision and Bui
0400: 6c 64 20 4e 75 6d 62 65 72 73 0a 2f 2f 20 62 79  ld Numbers.// by
0410: 20 75 73 69 6e 67 20 74 68 65 20 27 2a 27 20 61   using the '*' a
0420: 73 20 73 68 6f 77 6e 20 62 65 6c 6f 77 3a 0a 0a  s shown below:..
0430: 5b 61 73 73 65 6d 62 6c 79 3a 41 73 73 65 6d 62  [assembly:Assemb
0440: 6c 79 56 65 72 73 69 6f 6e 41 74 74 72 69 62 75  lyVersionAttribu
0450: 74 65 28 22 31 2e 30 2e 31 37 2e 30 22 29 5d 3b  te("1.0.17.0")];
0460: 0a 5b 61 73 73 65 6d 62 6c 79 3a 41 73 73 65 6d  .[assembly:Assem
0470: 62 6c 79 46 69 6c 65 56 65 72 73 69 6f 6e 41 74  blyFileVersionAt
0480: 74 72 69 62 75 74 65 28 22 31 2e 30 2e 31 37 2e  tribute("1.0.17.
0490: 30 22 29 5d 3b 0a 0a 2f 2f 0a 2f 2f 20 49 6e 20  0")];..//.// In 
04a0: 6f 72 64 65 72 20 74 6f 20 73 69 67 6e 20 79 6f  order to sign yo
04b0: 75 72 20 61 73 73 65 6d 62 6c 79 20 79 6f 75 20  ur assembly you 
04c0: 6d 75 73 74 20 73 70 65 63 69 66 79 20 61 20 6b  must specify a k
04d0: 65 79 20 74 6f 20 75 73 65 2e 20 52 65 66 65 72  ey to use. Refer
04e0: 20 74 6f 20 74 68 65 0a 2f 2f 20 4d 69 63 72 6f   to the.// Micro
04f0: 73 6f 66 74 20 43 4c 52 20 46 72 61 6d 65 77 6f  soft CLR Framewo
0500: 72 6b 20 64 6f 63 75 6d 65 6e 74 61 74 69 6f 6e  rk documentation
0510: 20 66 6f 72 20 6d 6f 72 65 20 69 6e 66 6f 72 6d   for more inform
0520: 61 74 69 6f 6e 20 6f 6e 20 61 73 73 65 6d 62 6c  ation on assembl
0530: 79 20 73 69 67 6e 69 6e 67 2e 0a 2f 2f 0a 2f 2f  y signing..//.//
0540: 20 59 6f 75 20 63 61 6e 20 75 73 65 20 74 68 65   You can use the
0550: 20 61 74 74 72 69 62 75 74 65 73 20 62 65 6c 6f   attributes belo
0560: 77 20 74 6f 20 63 6f 6e 74 72 6f 6c 20 77 68 69  w to control whi
0570: 63 68 20 6b 65 79 20 69 73 20 75 73 65 64 20 66  ch key is used f
0580: 6f 72 20 73 69 67 6e 69 6e 67 2e 0a 2f 2f 20 59  or signing..// Y
0590: 6f 75 20 63 61 6e 20 61 6c 73 6f 20 75 73 65 20  ou can also use 
05a0: 74 68 65 20 70 72 6f 6a 65 63 74 20 70 72 6f 70  the project prop
05b0: 65 72 74 79 20 70 61 67 65 20 66 6f 72 20 73 69  erty page for si
05c0: 67 6e 69 6e 67 20 75 6e 64 65 72 20 43 6f 6d 6d  gning under Comm
05d0: 6f 6e 20 50 72 6f 70 65 72 74 69 65 73 0a 2f 2f  on Properties.//
05e0: 20 74 6f 20 73 65 74 20 74 68 65 20 73 61 6d 65   to set the same
05f0: 20 69 6e 66 6f 72 6d 61 74 69 6f 6e 2e 0a 2f 2f   information..//
0600: 0a 2f 2f 20 4e 6f 74 65 73 3a 0a 2f 2f 20 20 20  .// Notes:.//   
0610: 28 2a 29 20 49 66 20 6e 6f 20 6b 65 79 20 69 73  (*) If no key is
0620: 20 73 70 65 63 69 66 69 65 64 2c 20 74 68 65 20   specified, the 
0630: 61 73 73 65 6d 62 6c 79 20 69 73 20 6e 6f 74 20  assembly is not 
0640: 73 69 67 6e 65 64 2e 0a 2f 2f 20 20 20 28 2a 29  signed..//   (*)
0650: 20 4b 65 79 4e 61 6d 65 20 72 65 66 65 72 73 20   KeyName refers 
0660: 74 6f 20 61 20 6b 65 79 20 74 68 61 74 20 68 61  to a key that ha
0670: 73 20 62 65 65 6e 20 69 6e 73 74 61 6c 6c 65 64  s been installed
0680: 20 69 6e 20 74 68 65 20 43 72 79 70 74 6f 20 53   in the Crypto S
0690: 65 72 76 69 63 65 0a 2f 2f 20 20 20 20 20 20 20  ervice.//       
06a0: 50 72 6f 76 69 64 65 72 20 28 43 53 50 29 20 6f  Provider (CSP) o
06b0: 6e 20 79 6f 75 72 20 6d 61 63 68 69 6e 65 2e 20  n your machine. 
06c0: 4b 65 79 46 69 6c 65 20 72 65 66 65 72 73 20 74  KeyFile refers t
06d0: 6f 20 61 20 66 69 6c 65 20 77 68 69 63 68 20 63  o a file which c
06e0: 6f 6e 74 61 69 6e 73 0a 2f 2f 20 20 20 20 20 20  ontains.//      
06f0: 20 61 20 6b 65 79 2e 0a 2f 2f 20 20 20 28 2a 29   a key..//   (*)
0700: 20 49 66 20 74 68 65 20 4b 65 79 46 69 6c 65 20   If the KeyFile 
0710: 61 6e 64 20 74 68 65 20 4b 65 79 4e 61 6d 65 20  and the KeyName 
0720: 76 61 6c 75 65 73 20 61 72 65 20 62 6f 74 68 20  values are both 
0730: 73 70 65 63 69 66 69 65 64 2c 20 74 68 65 0a 2f  specified, the./
0740: 2f 20 20 20 20 20 20 20 66 6f 6c 6c 6f 77 69 6e  /       followin
0750: 67 20 70 72 6f 63 65 73 73 69 6e 67 20 6f 63 63  g processing occ
0760: 75 72 73 3a 0a 2f 2f 20 20 20 20 20 20 20 28 31  urs:.//       (1
0770: 29 20 49 66 20 74 68 65 20 4b 65 79 4e 61 6d 65  ) If the KeyName
0780: 20 63 61 6e 20 62 65 20 66 6f 75 6e 64 20 69 6e   can be found in
0790: 20 74 68 65 20 43 53 50 2c 20 74 68 61 74 20 6b   the CSP, that k
07a0: 65 79 20 69 73 20 75 73 65 64 2e 0a 2f 2f 20 20  ey is used..//  
07b0: 20 20 20 20 20 28 32 29 20 49 66 20 74 68 65 20       (2) If the 
07c0: 4b 65 79 4e 61 6d 65 20 64 6f 65 73 20 6e 6f 74  KeyName does not
07d0: 20 65 78 69 73 74 20 61 6e 64 20 74 68 65 20 4b   exist and the K
07e0: 65 79 46 69 6c 65 20 64 6f 65 73 20 65 78 69 73  eyFile does exis
07f0: 74 2c 20 74 68 65 20 6b 65 79 0a 2f 2f 20 20 20  t, the key.//   
0800: 20 20 20 20 20 20 20 20 69 6e 20 74 68 65 20 4b          in the K
0810: 65 79 46 69 6c 65 20 69 73 20 69 6e 73 74 61 6c  eyFile is instal
0820: 6c 65 64 20 69 6e 74 6f 20 74 68 65 20 43 53 50  led into the CSP
0830: 20 61 6e 64 20 75 73 65 64 2e 0a 2f 2f 20 20 20   and used..//   
0840: 28 2a 29 20 49 6e 20 6f 72 64 65 72 20 74 6f 20  (*) In order to 
0850: 63 72 65 61 74 65 20 61 20 4b 65 79 46 69 6c 65  create a KeyFile
0860: 2c 20 79 6f 75 20 63 61 6e 20 75 73 65 20 74 68  , you can use th
0870: 65 20 73 6e 2e 65 78 65 20 28 53 74 72 6f 6e 67  e sn.exe (Strong
0880: 20 4e 61 6d 65 29 20 75 74 69 6c 69 74 79 2e 0a   Name) utility..
0890: 2f 2f 20 20 20 20 20 20 20 20 57 68 65 6e 20 73  //        When s
08a0: 70 65 63 69 66 79 69 6e 67 20 74 68 65 20 4b 65  pecifying the Ke
08b0: 79 46 69 6c 65 2c 20 74 68 65 20 6c 6f 63 61 74  yFile, the locat
08c0: 69 6f 6e 20 6f 66 20 74 68 65 20 4b 65 79 46 69  ion of the KeyFi
08d0: 6c 65 20 73 68 6f 75 6c 64 20 62 65 0a 2f 2f 20  le should be.// 
08e0: 20 20 20 20 20 20 20 72 65 6c 61 74 69 76 65 20         relative 
08f0: 74 6f 20 74 68 65 20 70 72 6f 6a 65 63 74 20 64  to the project d
0900: 69 72 65 63 74 6f 72 79 2e 0a 2f 2f 20 20 20 28  irectory..//   (
0910: 2a 29 20 44 65 6c 61 79 20 53 69 67 6e 69 6e 67  *) Delay Signing
0920: 20 69 73 20 61 6e 20 61 64 76 61 6e 63 65 64 20   is an advanced 
0930: 6f 70 74 69 6f 6e 20 2d 20 73 65 65 20 74 68 65  option - see the
0940: 20 4d 69 63 72 6f 73 6f 66 74 20 43 4c 52 20 46   Microsoft CLR F
0950: 72 61 6d 65 77 6f 72 6b 0a 2f 2f 20 20 20 20 20  ramework.//     
0960: 20 20 64 6f 63 75 6d 65 6e 74 61 74 69 6f 6e 20    documentation 
0970: 66 6f 72 20 6d 6f 72 65 20 69 6e 66 6f 72 6d 61  for more informa
0980: 74 69 6f 6e 20 6f 6e 20 74 68 69 73 2e 0a 2f 2f  tion on this..//
0990: 0a 5b 61 73 73 65 6d 62 6c 79 3a 41 73 73 65 6d  .[assembly:Assem
09a0: 62 6c 79 44 65 6c 61 79 53 69 67 6e 41 74 74 72  blyDelaySignAttr
09b0: 69 62 75 74 65 28 66 61 6c 73 65 29 5d 3b 0a 0a  ibute(false)];..
09c0: 23 69 66 64 65 66 20 5f 57 49 4e 36 34 0a 23 69  #ifdef _WIN64.#i
09d0: 66 64 65 66 20 5f 4d 5f 49 41 36 34 20 2f 2f 20  fdef _M_IA64 // 
09e0: 49 74 61 6e 69 75 6d 0a 5b 61 73 73 65 6d 62 6c  Itanium.[assembl
09f0: 79 3a 41 73 73 65 6d 62 6c 79 4b 65 79 46 69 6c  y:AssemblyKeyFil
0a00: 65 41 74 74 72 69 62 75 74 65 28 22 2e 2e 5c 5c  eAttribute("..\\
0a10: 53 79 73 74 65 6d 2e 44 61 74 61 2e 53 51 4c 69  System.Data.SQLi
0a20: 74 65 5c 5c 53 79 73 74 65 6d 2e 44 61 74 61 2e  te\\System.Data.
0a30: 53 51 4c 69 74 65 2e 49 41 36 34 2e 73 6e 6b 22  SQLite.IA64.snk"
0a40: 29 5d 3b 0a 23 65 6c 73 65 20 2f 2f 20 41 4d 44  )];.#else // AMD
0a50: 36 34 0a 5b 61 73 73 65 6d 62 6c 79 3a 41 73 73  64.[assembly:Ass
0a60: 65 6d 62 6c 79 4b 65 79 46 69 6c 65 41 74 74 72  emblyKeyFileAttr
0a70: 69 62 75 74 65 28 22 2e 2e 5c 5c 53 79 73 74 65  ibute("..\\Syste
0a80: 6d 2e 44 61 74 61 2e 53 51 4c 69 74 65 5c 5c 53  m.Data.SQLite\\S
0a90: 79 73 74 65 6d 2e 44 61 74 61 2e 53 51 4c 69 74  ystem.Data.SQLit
0aa0: 65 2e 58 36 34 2e 73 6e 6b 22 29 5d 3b 0a 23 65  e.X64.snk")];.#e
0ab0: 6e 64 69 66 0a 23 65 6c 73 65 0a 5b 61 73 73 65  ndif.#else.[asse
0ac0: 6d 62 6c 79 3a 41 73 73 65 6d 62 6c 79 4b 65 79  mbly:AssemblyKey
0ad0: 46 69 6c 65 41 74 74 72 69 62 75 74 65 28 22 2e  FileAttribute(".
0ae0: 2e 5c 5c 53 79 73 74 65 6d 2e 44 61 74 61 2e 53  .\\System.Data.S
0af0: 51 4c 69 74 65 5c 5c 53 79 73 74 65 6d 2e 44 61  QLite\\System.Da
0b00: 74 61 2e 53 51 4c 69 74 65 2e 73 6e 6b 22 29 5d  ta.SQLite.snk")]
0b10: 3b 0a 23 65 6e 64 69 66 0a 5b 61 73 73 65 6d 62  ;.#endif.[assemb
0b20: 6c 79 3a 41 73 73 65 6d 62 6c 79 4b 65 79 4e 61  ly:AssemblyKeyNa
0b30: 6d 65 41 74 74 72 69 62 75 74 65 28 22 22 29 5d  meAttribute("")]
0b40: 3b 0a 0a 5b 61 73 73 65 6d 62 6c 79 3a 43 6f 6d  ;..[assembly:Com
0b50: 56 69 73 69 62 6c 65 28 66 61 6c 73 65 29 5d 3b  Visible(false)];
0b60: 0a 0a                                            ..