System.Data.SQLite
Hex Artifact Content
Not logged in

Artifact bafc25f5fe9efad0bbcb9bd35e566f5a0a0c7234:


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 74 61 72 67 65 74 73 20  ite.NET.targets 
0020: 2d 0d 0a 20 2a 0d 0a 20 2a 20 57 72 69 74 74 65  -.. *.. * Writte
0030: 6e 20 62 79 20 4a 6f 65 20 4d 69 73 74 61 63 68  n by Joe Mistach
0040: 6b 69 6e 2e 0d 0a 20 2a 20 52 65 6c 65 61 73 65  kin... * Release
0050: 64 20 74 6f 20 74 68 65 20 70 75 62 6c 69 63 20  d to the public 
0060: 64 6f 6d 61 69 6e 2c 20 75 73 65 20 61 74 20 79  domain, use at y
0070: 6f 75 72 20 6f 77 6e 20 72 69 73 6b 21 0d 0a 20  our own risk!.. 
0080: 2a 0d 0a 2d 2d 3e 0d 0a 3c 50 72 6f 6a 65 63 74  *..-->..<Project
0090: 20 78 6d 6c 6e 73 3d 22 68 74 74 70 3a 2f 2f 73   xmlns="http://s
00a0: 63 68 65 6d 61 73 2e 6d 69 63 72 6f 73 6f 66 74  chemas.microsoft
00b0: 2e 63 6f 6d 2f 64 65 76 65 6c 6f 70 65 72 2f 6d  .com/developer/m
00c0: 73 62 75 69 6c 64 2f 32 30 30 33 22 3e 0d 0a 20  sbuild/2003">.. 
00d0: 20 3c 21 2d 2d 0d 0a 20 20 2a 2a 2a 2a 2a 2a 2a   <!--..  *******
00e0: 2a 2a 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 0d 0a 20 20 2a 2a 20 20 20  *******..  **   
0130: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
0140: 20 20 20 20 20 20 20 4c 6f 61 64 20 50 65 72 2d         Load Per-
0150: 55 73 65 72 20 53 65 74 74 69 6e 67 73 20 20 20  User Settings   
0160: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
0170: 20 20 20 20 20 20 20 2a 2a 0d 0a 20 20 2a 2a 2a         **..  ***
0180: 2a 2a 2a 2a 2a 2a 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 0d 0a 20 20 2d  ***********..  -
01d0: 2d 3e 0d 0a 0d 0a 20 20 3c 21 2d 2d 0d 0a 20 20  ->....  <!--..  
01e0: 20 20 20 20 4e 4f 54 45 3a 20 49 66 20 74 68 65      NOTE: If the
01f0: 20 70 65 72 2d 75 73 65 72 20 73 65 74 74 69 6e   per-user settin
0200: 67 73 20 66 69 6c 65 20 65 78 69 73 74 73 2c 20  gs file exists, 
0210: 69 6d 70 6f 72 74 20 69 74 20 6e 6f 77 2e 20 20  import it now.  
0220: 54 68 65 20 63 6f 6e 74 61 69 6e 65 64 0d 0a 20  The contained.. 
0230: 20 20 20 20 20 20 20 20 20 20 20 73 65 74 74 69             setti
0240: 6e 67 73 2c 20 69 66 20 61 6e 79 2c 20 77 69 6c  ngs, if any, wil
0250: 6c 20 6f 76 65 72 72 69 64 65 20 74 68 65 20 64  l override the d
0260: 65 66 61 75 6c 74 20 6f 6e 65 73 20 70 72 6f 76  efault ones prov
0270: 69 64 65 64 20 62 65 6c 6f 77 2e 0d 0a 20 20 2d  ided below...  -
0280: 2d 3e 0d 0a 20 20 3c 49 6d 70 6f 72 74 20 50 72  ->..  <Import Pr
0290: 6f 6a 65 63 74 3d 22 24 28 53 51 4c 69 74 65 4e  oject="$(SQLiteN
02a0: 65 74 44 69 72 29 5c 54 61 72 67 65 74 73 5c 53  etDir)\Targets\S
02b0: 51 4c 69 74 65 2e 4e 45 54 2e 74 61 72 67 65 74  QLite.NET.target
02c0: 73 2e 75 73 65 72 22 0d 0a 20 20 20 20 20 20 20  s.user"..       
02d0: 20 20 20 43 6f 6e 64 69 74 69 6f 6e 3d 22 45 78     Condition="Ex
02e0: 69 73 74 73 28 27 24 28 53 51 4c 69 74 65 4e 65  ists('$(SQLiteNe
02f0: 74 44 69 72 29 5c 54 61 72 67 65 74 73 5c 53 51  tDir)\Targets\SQ
0300: 4c 69 74 65 2e 4e 45 54 2e 74 61 72 67 65 74 73  Lite.NET.targets
0310: 2e 75 73 65 72 27 29 22 20 2f 3e 0d 0a 0d 0a 20  .user')" />.... 
0320: 20 3c 21 2d 2d 0d 0a 20 20 2a 2a 2a 2a 2a 2a 2a   <!--..  *******
0330: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a  ****************
0340: 2a 2a 2a 2a 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 0d 0a 20 20 2a 2a 20 20 20  *******..  **   
0380: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
0390: 20 20 20 20 20 20 5b 46 61 69 72 6c 79 5d 20 47        [Fairly] G
03a0: 65 6e 65 72 69 63 20 54 61 72 67 65 74 73 20 20  eneric Targets  
03b0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
03c0: 20 20 20 20 20 20 20 2a 2a 0d 0a 20 20 2a 2a 2a         **..  ***
03d0: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a  ****************
03e0: 2a 2a 2a 2a 2a 2a 2a 2a 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 0d 0a 20 20 2d  ***********..  -
0420: 2d 3e 0d 0a 0d 0a 20 20 3c 54 61 72 67 65 74 20  ->....  <Target 
0430: 4e 61 6d 65 3d 22 45 6d 62 65 64 45 78 65 4d 61  Name="EmbedExeMa
0440: 6e 69 66 65 73 74 22 0d 0a 20 20 20 20 20 20 20  nifest"..       
0450: 20 20 20 43 6f 6e 64 69 74 69 6f 6e 3d 22 27 24     Condition="'$
0460: 28 45 6d 62 65 64 45 78 65 4d 61 6e 69 66 65 73  (EmbedExeManifes
0470: 74 29 27 20 21 3d 20 27 66 61 6c 73 65 27 20 41  t)' != 'false' A
0480: 6e 64 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20  nd..            
0490: 20 20 20 20 20 20 20 20 20 27 24 28 4d 53 42 75           '$(MSBu
04a0: 69 6c 64 50 72 6f 6a 65 63 74 44 69 72 65 63 74  ildProjectDirect
04b0: 6f 72 79 29 27 20 21 3d 20 27 27 20 41 6e 64 0d  ory)' != '' And.
04c0: 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  .               
04d0: 20 20 20 20 20 20 45 78 69 73 74 73 28 27 24 28        Exists('$(
04e0: 4d 53 42 75 69 6c 64 50 72 6f 6a 65 63 74 44 69  MSBuildProjectDi
04f0: 72 65 63 74 6f 72 79 29 5c 52 65 73 6f 75 72 63  rectory)\Resourc
0500: 65 73 5c 6d 61 6e 69 66 65 73 74 2e 78 6d 6c 27  es\manifest.xml'
0510: 29 22 0d 0a 20 20 20 20 20 20 20 20 20 20 49 6e  )"..          In
0520: 70 75 74 73 3d 22 24 28 54 61 72 67 65 74 50 61  puts="$(TargetPa
0530: 74 68 29 3b 24 28 4d 53 42 75 69 6c 64 50 72 6f  th);$(MSBuildPro
0540: 6a 65 63 74 44 69 72 65 63 74 6f 72 79 29 5c 52  jectDirectory)\R
0550: 65 73 6f 75 72 63 65 73 5c 6d 61 6e 69 66 65 73  esources\manifes
0560: 74 2e 78 6d 6c 22 0d 0a 20 20 20 20 20 20 20 20  t.xml"..        
0570: 20 20 4f 75 74 70 75 74 73 3d 22 24 28 54 61 72    Outputs="$(Tar
0580: 67 65 74 50 61 74 68 29 2e 45 6d 62 65 64 45 78  getPath).EmbedEx
0590: 65 4d 61 6e 69 66 65 73 74 2e 64 6f 6e 65 22 3e  eManifest.done">
05a0: 0d 0a 20 20 20 20 3c 47 65 74 46 72 61 6d 65 77  ..    <GetFramew
05b0: 6f 72 6b 53 44 4b 50 61 74 68 3e 0d 0a 20 20 20  orkSDKPath>..   
05c0: 20 20 20 3c 4f 75 74 70 75 74 20 54 61 73 6b 50     <Output TaskP
05d0: 61 72 61 6d 65 74 65 72 3d 22 50 61 74 68 22 0d  arameter="Path".
05e0: 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 50  .              P
05f0: 72 6f 70 65 72 74 79 4e 61 6d 65 3d 22 44 69 72  ropertyName="Dir
0600: 46 6f 72 4d 61 6e 69 66 65 73 74 54 6f 6f 6c 22  ForManifestTool"
0610: 20 2f 3e 0d 0a 20 20 20 20 3c 2f 47 65 74 46 72   />..    </GetFr
0620: 61 6d 65 77 6f 72 6b 53 44 4b 50 61 74 68 3e 0d  ameworkSDKPath>.
0630: 0a 0d 0a 20 20 20 20 3c 45 78 65 63 20 43 6f 6e  ...    <Exec Con
0640: 64 69 74 69 6f 6e 3d 22 27 24 28 44 69 72 46 6f  dition="'$(DirFo
0650: 72 4d 61 6e 69 66 65 73 74 54 6f 6f 6c 29 27 20  rManifestTool)' 
0660: 21 3d 20 27 27 20 41 6e 64 0d 0a 20 20 20 20 20  != '' And..     
0670: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
0680: 48 61 73 54 72 61 69 6c 69 6e 67 53 6c 61 73 68  HasTrailingSlash
0690: 28 27 24 28 44 69 72 46 6f 72 4d 61 6e 69 66 65  ('$(DirForManife
06a0: 73 74 54 6f 6f 6c 29 27 29 20 41 6e 64 0d 0a 20  stTool)') And.. 
06b0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
06c0: 20 20 20 20 45 78 69 73 74 73 28 27 24 28 44 69      Exists('$(Di
06d0: 72 46 6f 72 4d 61 6e 69 66 65 73 74 54 6f 6f 6c  rForManifestTool
06e0: 29 62 69 6e 5c 6d 74 2e 65 78 65 27 29 22 0d 0a  )bin\mt.exe')"..
06f0: 20 20 20 20 20 20 20 20 20 20 43 6f 6d 6d 61 6e            Comman
0700: 64 3d 22 26 71 75 6f 74 3b 24 28 44 69 72 46 6f  d="&quot;$(DirFo
0710: 72 4d 61 6e 69 66 65 73 74 54 6f 6f 6c 29 62 69  rManifestTool)bi
0720: 6e 5c 6d 74 2e 65 78 65 26 71 75 6f 74 3b 20 2d  n\mt.exe&quot; -
0730: 6d 61 6e 69 66 65 73 74 20 26 71 75 6f 74 3b 24  manifest &quot;$
0740: 28 4d 53 42 75 69 6c 64 50 72 6f 6a 65 63 74 44  (MSBuildProjectD
0750: 69 72 65 63 74 6f 72 79 29 5c 52 65 73 6f 75 72  irectory)\Resour
0760: 63 65 73 5c 6d 61 6e 69 66 65 73 74 2e 78 6d 6c  ces\manifest.xml
0770: 26 71 75 6f 74 3b 20 2d 6f 75 74 70 75 74 72 65  &quot; -outputre
0780: 73 6f 75 72 63 65 3a 26 71 75 6f 74 3b 24 28 54  source:&quot;$(T
0790: 61 72 67 65 74 50 61 74 68 29 26 71 75 6f 74 3b  argetPath)&quot;
07a0: 3b 31 22 20 2f 3e 0d 0a 0d 0a 20 20 20 20 3c 54  ;1" />....    <T
07b0: 6f 75 63 68 20 41 6c 77 61 79 73 43 72 65 61 74  ouch AlwaysCreat
07c0: 65 3d 22 74 72 75 65 22 0d 0a 20 20 20 20 20 20  e="true"..      
07d0: 20 20 20 20 20 46 69 6c 65 73 3d 22 24 28 54 61       Files="$(Ta
07e0: 72 67 65 74 50 61 74 68 29 2e 45 6d 62 65 64 45  rgetPath).EmbedE
07f0: 78 65 4d 61 6e 69 66 65 73 74 2e 64 6f 6e 65 22  xeManifest.done"
0800: 20 2f 3e 0d 0a 20 20 3c 2f 54 61 72 67 65 74 3e   />..  </Target>
0810: 0d 0a 0d 0a 20 20 3c 21 2d 2d 0d 0a 20 20 2a 2a  ....  <!--..  **
0820: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a  ****************
0830: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a  ****************
0840: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a  ****************
0850: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a  ****************
0860: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 0d 0a 20 20  ************..  
0870: 2d 2d 3e 0d 0a 0d 0a 20 20 3c 54 61 72 67 65 74  -->....  <Target
0880: 20 4e 61 6d 65 3d 22 53 74 72 6f 6e 67 4e 61 6d   Name="StrongNam
0890: 65 53 69 67 6e 46 72 61 6d 65 77 6f 72 6b 54 61  eSignFrameworkTa
08a0: 72 67 65 74 50 61 74 68 22 0d 0a 20 20 20 20 20  rgetPath"..     
08b0: 20 20 20 20 20 43 6f 6e 64 69 74 69 6f 6e 3d 22       Condition="
08c0: 27 24 28 53 74 72 6f 6e 67 4e 61 6d 65 53 69 67  '$(StrongNameSig
08d0: 6e 46 72 61 6d 65 77 6f 72 6b 54 61 72 67 65 74  nFrameworkTarget
08e0: 50 61 74 68 29 27 20 21 3d 20 27 66 61 6c 73 65  Path)' != 'false
08f0: 27 20 41 6e 64 0d 0a 20 20 20 20 20 20 20 20 20  ' And..         
0900: 20 20 20 20 20 20 20 20 20 20 20 20 27 24 28 53              '$(S
0910: 69 67 6e 41 73 73 65 6d 62 6c 79 29 27 20 21 3d  ignAssembly)' !=
0920: 20 27 66 61 6c 73 65 27 20 41 6e 64 0d 0a 20 20   'false' And..  
0930: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
0940: 20 20 20 45 78 69 73 74 73 28 27 24 28 41 73 73     Exists('$(Ass
0950: 65 6d 62 6c 79 4f 72 69 67 69 6e 61 74 6f 72 4b  emblyOriginatorK
0960: 65 79 46 69 6c 65 29 27 29 22 0d 0a 20 20 20 20  eyFile)')"..    
0970: 20 20 20 20 20 20 49 6e 70 75 74 73 3d 22 24 28        Inputs="$(
0980: 54 61 72 67 65 74 50 61 74 68 29 22 0d 0a 20 20  TargetPath)"..  
0990: 20 20 20 20 20 20 20 20 4f 75 74 70 75 74 73 3d          Outputs=
09a0: 22 24 28 54 61 72 67 65 74 50 61 74 68 29 2e 53  "$(TargetPath).S
09b0: 74 72 6f 6e 67 4e 61 6d 65 53 69 67 6e 2e 64 6f  trongNameSign.do
09c0: 6e 65 22 3e 0d 0a 20 20 20 20 3c 47 65 74 46 72  ne">..    <GetFr
09d0: 61 6d 65 77 6f 72 6b 53 44 4b 50 61 74 68 3e 0d  ameworkSDKPath>.
09e0: 0a 20 20 20 20 20 20 3c 4f 75 74 70 75 74 20 54  .      <Output T
09f0: 61 73 6b 50 61 72 61 6d 65 74 65 72 3d 22 50 61  askParameter="Pa
0a00: 74 68 22 0d 0a 20 20 20 20 20 20 20 20 20 20 20  th"..           
0a10: 20 20 20 50 72 6f 70 65 72 74 79 4e 61 6d 65 3d     PropertyName=
0a20: 22 44 69 72 46 6f 72 53 74 72 6f 6e 67 4e 61 6d  "DirForStrongNam
0a30: 65 22 20 2f 3e 0d 0a 20 20 20 20 3c 2f 47 65 74  e" />..    </Get
0a40: 46 72 61 6d 65 77 6f 72 6b 53 44 4b 50 61 74 68  FrameworkSDKPath
0a50: 3e 0d 0a 0d 0a 20 20 20 20 3c 45 78 65 63 20 43  >....    <Exec C
0a60: 6f 6e 64 69 74 69 6f 6e 3d 22 27 24 28 44 69 72  ondition="'$(Dir
0a70: 46 6f 72 53 74 72 6f 6e 67 4e 61 6d 65 29 27 20  ForStrongName)' 
0a80: 21 3d 20 27 27 20 41 6e 64 0d 0a 20 20 20 20 20  != '' And..     
0a90: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
0aa0: 48 61 73 54 72 61 69 6c 69 6e 67 53 6c 61 73 68  HasTrailingSlash
0ab0: 28 27 24 28 44 69 72 46 6f 72 53 74 72 6f 6e 67  ('$(DirForStrong
0ac0: 4e 61 6d 65 29 27 29 20 41 6e 64 0d 0a 20 20 20  Name)') And..   
0ad0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
0ae0: 20 20 45 78 69 73 74 73 28 27 24 28 44 69 72 46    Exists('$(DirF
0af0: 6f 72 53 74 72 6f 6e 67 4e 61 6d 65 29 62 69 6e  orStrongName)bin
0b00: 5c 73 6e 2e 65 78 65 27 29 22 0d 0a 20 20 20 20  \sn.exe')"..    
0b10: 20 20 20 20 20 20 43 6f 6d 6d 61 6e 64 3d 22 26        Command="&
0b20: 71 75 6f 74 3b 24 28 44 69 72 46 6f 72 53 74 72  quot;$(DirForStr
0b30: 6f 6e 67 4e 61 6d 65 29 62 69 6e 5c 73 6e 2e 65  ongName)bin\sn.e
0b40: 78 65 26 71 75 6f 74 3b 20 2d 52 61 20 26 71 75  xe&quot; -Ra &qu
0b50: 6f 74 3b 24 28 54 61 72 67 65 74 50 61 74 68 29  ot;$(TargetPath)
0b60: 26 71 75 6f 74 3b 20 26 71 75 6f 74 3b 24 28 41  &quot; &quot;$(A
0b70: 73 73 65 6d 62 6c 79 4f 72 69 67 69 6e 61 74 6f  ssemblyOriginato
0b80: 72 4b 65 79 46 69 6c 65 29 26 71 75 6f 74 3b 22  rKeyFile)&quot;"
0b90: 20 2f 3e 0d 0a 0d 0a 20 20 20 20 3c 54 6f 75 63   />....    <Touc
0ba0: 68 20 43 6f 6e 64 69 74 69 6f 6e 3d 22 27 24 28  h Condition="'$(
0bb0: 44 69 72 46 6f 72 53 74 72 6f 6e 67 4e 61 6d 65  DirForStrongName
0bc0: 29 27 20 21 3d 20 27 27 20 41 6e 64 0d 0a 20 20  )' != '' And..  
0bd0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
0be0: 20 20 20 20 48 61 73 54 72 61 69 6c 69 6e 67 53      HasTrailingS
0bf0: 6c 61 73 68 28 27 24 28 44 69 72 46 6f 72 53 74  lash('$(DirForSt
0c00: 72 6f 6e 67 4e 61 6d 65 29 27 29 20 41 6e 64 0d  rongName)') And.
0c10: 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  .               
0c20: 20 20 20 20 20 20 20 45 78 69 73 74 73 28 27 24         Exists('$
0c30: 28 44 69 72 46 6f 72 53 74 72 6f 6e 67 4e 61 6d  (DirForStrongNam
0c40: 65 29 62 69 6e 5c 73 6e 2e 65 78 65 27 29 22 0d  e)bin\sn.exe')".
0c50: 0a 20 20 20 20 20 20 20 20 20 20 20 41 6c 77 61  .           Alwa
0c60: 79 73 43 72 65 61 74 65 3d 22 74 72 75 65 22 0d  ysCreate="true".
0c70: 0a 20 20 20 20 20 20 20 20 20 20 20 46 69 6c 65  .           File
0c80: 73 3d 22 24 28 54 61 72 67 65 74 50 61 74 68 29  s="$(TargetPath)
0c90: 2e 53 74 72 6f 6e 67 4e 61 6d 65 53 69 67 6e 2e  .StrongNameSign.
0ca0: 64 6f 6e 65 22 20 2f 3e 0d 0a 20 20 3c 2f 54 61  done" />..  </Ta
0cb0: 72 67 65 74 3e 0d 0a 0d 0a 20 20 3c 21 2d 2d 0d  rget>....  <!--.
0cc0: 0a 20 20 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a  .  *************
0cd0: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a  ****************
0ce0: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a  ****************
0cf0: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a  ****************
0d00: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a  ****************
0d10: 2a 0d 0a 20 20 2d 2d 3e 0d 0a 0d 0a 20 20 3c 54  *..  -->....  <T
0d20: 61 72 67 65 74 20 4e 61 6d 65 3d 22 53 74 72 6f  arget Name="Stro
0d30: 6e 67 4e 61 6d 65 53 69 67 6e 53 64 6b 54 6f 6f  ngNameSignSdkToo
0d40: 6c 73 54 61 72 67 65 74 50 61 74 68 22 0d 0a 20  lsTargetPath".. 
0d50: 20 20 20 20 20 20 20 20 20 43 6f 6e 64 69 74 69           Conditi
0d60: 6f 6e 3d 22 27 24 28 53 74 72 6f 6e 67 4e 61 6d  on="'$(StrongNam
0d70: 65 53 69 67 6e 53 64 6b 54 6f 6f 6c 73 54 61 72  eSignSdkToolsTar
0d80: 67 65 74 50 61 74 68 29 27 20 21 3d 20 27 66 61  getPath)' != 'fa
0d90: 6c 73 65 27 20 41 6e 64 0d 0a 20 20 20 20 20 20  lse' And..      
0da0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 27                 '
0db0: 24 28 53 69 67 6e 41 73 73 65 6d 62 6c 79 29 27  $(SignAssembly)'
0dc0: 20 21 3d 20 27 66 61 6c 73 65 27 20 41 6e 64 0d   != 'false' And.
0dd0: 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  .               
0de0: 20 20 20 20 20 20 45 78 69 73 74 73 28 27 24 28        Exists('$(
0df0: 41 73 73 65 6d 62 6c 79 4f 72 69 67 69 6e 61 74  AssemblyOriginat
0e00: 6f 72 4b 65 79 46 69 6c 65 29 27 29 22 0d 0a 20  orKeyFile)')".. 
0e10: 20 20 20 20 20 20 20 20 20 49 6e 70 75 74 73 3d           Inputs=
0e20: 22 24 28 54 61 72 67 65 74 50 61 74 68 29 22 0d  "$(TargetPath)".
0e30: 0a 20 20 20 20 20 20 20 20 20 20 4f 75 74 70 75  .          Outpu
0e40: 74 73 3d 22 24 28 54 61 72 67 65 74 50 61 74 68  ts="$(TargetPath
0e50: 29 2e 53 74 72 6f 6e 67 4e 61 6d 65 53 69 67 6e  ).StrongNameSign
0e60: 2e 64 6f 6e 65 22 3e 0d 0a 20 20 20 20 3c 45 78  .done">..    <Ex
0e70: 65 63 20 43 6f 6e 64 69 74 69 6f 6e 3d 22 27 24  ec Condition="'$
0e80: 28 54 61 72 67 65 74 46 72 61 6d 65 77 6f 72 6b  (TargetFramework
0e90: 53 44 4b 54 6f 6f 6c 73 44 69 72 65 63 74 6f 72  SDKToolsDirector
0ea0: 79 29 27 20 21 3d 20 27 27 20 41 6e 64 0d 0a 20  y)' != '' And.. 
0eb0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
0ec0: 20 20 20 20 48 61 73 54 72 61 69 6c 69 6e 67 53      HasTrailingS
0ed0: 6c 61 73 68 28 27 24 28 54 61 72 67 65 74 46 72  lash('$(TargetFr
0ee0: 61 6d 65 77 6f 72 6b 53 44 4b 54 6f 6f 6c 73 44  ameworkSDKToolsD
0ef0: 69 72 65 63 74 6f 72 79 29 27 29 20 41 6e 64 0d  irectory)') And.
0f00: 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  .               
0f10: 20 20 20 20 20 20 45 78 69 73 74 73 28 27 24 28        Exists('$(
0f20: 54 61 72 67 65 74 46 72 61 6d 65 77 6f 72 6b 53  TargetFrameworkS
0f30: 44 4b 54 6f 6f 6c 73 44 69 72 65 63 74 6f 72 79  DKToolsDirectory
0f40: 29 73 6e 2e 65 78 65 27 29 22 0d 0a 20 20 20 20  )sn.exe')"..    
0f50: 20 20 20 20 20 20 43 6f 6d 6d 61 6e 64 3d 22 26        Command="&
0f60: 71 75 6f 74 3b 24 28 54 61 72 67 65 74 46 72 61  quot;$(TargetFra
0f70: 6d 65 77 6f 72 6b 53 44 4b 54 6f 6f 6c 73 44 69  meworkSDKToolsDi
0f80: 72 65 63 74 6f 72 79 29 73 6e 2e 65 78 65 26 71  rectory)sn.exe&q
0f90: 75 6f 74 3b 20 2d 52 61 20 26 71 75 6f 74 3b 24  uot; -Ra &quot;$
0fa0: 28 54 61 72 67 65 74 50 61 74 68 29 26 71 75 6f  (TargetPath)&quo
0fb0: 74 3b 20 26 71 75 6f 74 3b 24 28 41 73 73 65 6d  t; &quot;$(Assem
0fc0: 62 6c 79 4f 72 69 67 69 6e 61 74 6f 72 4b 65 79  blyOriginatorKey
0fd0: 46 69 6c 65 29 26 71 75 6f 74 3b 22 20 2f 3e 0d  File)&quot;" />.
0fe0: 0a 0d 0a 20 20 20 20 3c 54 6f 75 63 68 20 43 6f  ...    <Touch Co
0ff0: 6e 64 69 74 69 6f 6e 3d 22 27 24 28 54 61 72 67  ndition="'$(Targ
1000: 65 74 46 72 61 6d 65 77 6f 72 6b 53 44 4b 54 6f  etFrameworkSDKTo
1010: 6f 6c 73 44 69 72 65 63 74 6f 72 79 29 27 20 21  olsDirectory)' !
1020: 3d 20 27 27 20 41 6e 64 0d 0a 20 20 20 20 20 20  = '' And..      
1030: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
1040: 48 61 73 54 72 61 69 6c 69 6e 67 53 6c 61 73 68  HasTrailingSlash
1050: 28 27 24 28 54 61 72 67 65 74 46 72 61 6d 65 77  ('$(TargetFramew
1060: 6f 72 6b 53 44 4b 54 6f 6f 6c 73 44 69 72 65 63  orkSDKToolsDirec
1070: 74 6f 72 79 29 27 29 20 41 6e 64 0d 0a 20 20 20  tory)') And..   
1080: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
1090: 20 20 20 45 78 69 73 74 73 28 27 24 28 54 61 72     Exists('$(Tar
10a0: 67 65 74 46 72 61 6d 65 77 6f 72 6b 53 44 4b 54  getFrameworkSDKT
10b0: 6f 6f 6c 73 44 69 72 65 63 74 6f 72 79 29 73 6e  oolsDirectory)sn
10c0: 2e 65 78 65 27 29 22 0d 0a 20 20 20 20 20 20 20  .exe')"..       
10d0: 20 20 20 20 41 6c 77 61 79 73 43 72 65 61 74 65      AlwaysCreate
10e0: 3d 22 74 72 75 65 22 0d 0a 20 20 20 20 20 20 20  ="true"..       
10f0: 20 20 20 20 46 69 6c 65 73 3d 22 24 28 54 61 72      Files="$(Tar
1100: 67 65 74 50 61 74 68 29 2e 53 74 72 6f 6e 67 4e  getPath).StrongN
1110: 61 6d 65 53 69 67 6e 2e 64 6f 6e 65 22 20 2f 3e  ameSign.done" />
1120: 0d 0a 20 20 3c 2f 54 61 72 67 65 74 3e 0d 0a 0d  ..  </Target>...
1130: 0a 20 20 3c 21 2d 2d 0d 0a 20 20 2a 2a 2a 2a 2a  .  <!--..  *****
1140: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a  ****************
1150: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a  ****************
1160: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a  ****************
1170: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a  ****************
1180: 2a 2a 2a 2a 2a 2a 2a 2a 2a 0d 0a 20 20 2d 2d 3e  *********..  -->
1190: 0d 0a 0d 0a 20 20 3c 54 61 72 67 65 74 20 4e 61  ....  <Target Na
11a0: 6d 65 3d 22 43 6c 6f 6e 65 41 6e 64 4d 61 72 6b  me="CloneAndMark
11b0: 33 32 42 69 74 4f 6e 6c 79 46 72 61 6d 65 77 6f  32BitOnlyFramewo
11c0: 72 6b 54 61 72 67 65 74 4e 61 6d 65 33 32 22 0d  rkTargetName32".
11d0: 0a 20 20 20 20 20 20 20 20 20 20 43 6f 6e 64 69  .          Condi
11e0: 74 69 6f 6e 3d 22 27 24 28 43 6c 6f 6e 65 41 6e  tion="'$(CloneAn
11f0: 64 4d 61 72 6b 33 32 42 69 74 4f 6e 6c 79 46 72  dMark32BitOnlyFr
1200: 61 6d 65 77 6f 72 6b 54 61 72 67 65 74 4e 61 6d  ameworkTargetNam
1210: 65 33 32 29 27 20 21 3d 20 27 66 61 6c 73 65 27  e32)' != 'false'
1220: 22 0d 0a 20 20 20 20 20 20 20 20 20 20 49 6e 70  "..          Inp
1230: 75 74 73 3d 22 24 28 54 61 72 67 65 74 50 61 74  uts="$(TargetPat
1240: 68 29 22 0d 0a 20 20 20 20 20 20 20 20 20 20 4f  h)"..          O
1250: 75 74 70 75 74 73 3d 22 24 28 54 61 72 67 65 74  utputs="$(Target
1260: 50 61 74 68 29 2e 43 6c 6f 6e 65 41 6e 64 4d 61  Path).CloneAndMa
1270: 72 6b 33 32 42 69 74 4f 6e 6c 79 2e 64 6f 6e 65  rk32BitOnly.done
1280: 22 3e 0d 0a 20 20 20 20 3c 47 65 74 46 72 61 6d  ">..    <GetFram
1290: 65 77 6f 72 6b 53 44 4b 50 61 74 68 3e 0d 0a 20  eworkSDKPath>.. 
12a0: 20 20 20 20 20 3c 4f 75 74 70 75 74 20 54 61 73       <Output Tas
12b0: 6b 50 61 72 61 6d 65 74 65 72 3d 22 50 61 74 68  kParameter="Path
12c0: 22 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20  "..             
12d0: 20 50 72 6f 70 65 72 74 79 4e 61 6d 65 3d 22 44   PropertyName="D
12e0: 69 72 46 6f 72 43 6c 6f 6e 65 41 6e 64 4d 61 72  irForCloneAndMar
12f0: 6b 33 32 42 69 74 4f 6e 6c 79 22 20 2f 3e 0d 0a  k32BitOnly" />..
1300: 20 20 20 20 3c 2f 47 65 74 46 72 61 6d 65 77 6f      </GetFramewo
1310: 72 6b 53 44 4b 50 61 74 68 3e 0d 0a 0d 0a 20 20  rkSDKPath>....  
1320: 20 20 3c 43 6f 70 79 20 53 6f 75 72 63 65 46 69    <Copy SourceFi
1330: 6c 65 73 3d 22 24 28 54 61 72 67 65 74 50 61 74  les="$(TargetPat
1340: 68 29 22 0d 0a 20 20 20 20 20 20 20 20 20 20 44  h)"..          D
1350: 65 73 74 69 6e 61 74 69 6f 6e 46 69 6c 65 73 3d  estinationFiles=
1360: 22 24 28 54 61 72 67 65 74 44 69 72 29 24 28 54  "$(TargetDir)$(T
1370: 61 72 67 65 74 4e 61 6d 65 29 33 32 24 28 54 61  argetName)32$(Ta
1380: 72 67 65 74 45 78 74 29 22 20 2f 3e 0d 0a 0d 0a  rgetExt)" />....
1390: 20 20 20 20 3c 43 6f 70 79 20 53 6f 75 72 63 65      <Copy Source
13a0: 46 69 6c 65 73 3d 22 24 28 54 61 72 67 65 74 50  Files="$(TargetP
13b0: 61 74 68 29 2e 63 6f 6e 66 69 67 22 0d 0a 20 20  ath).config"..  
13c0: 20 20 20 20 20 20 20 20 44 65 73 74 69 6e 61 74          Destinat
13d0: 69 6f 6e 46 69 6c 65 73 3d 22 24 28 54 61 72 67  ionFiles="$(Targ
13e0: 65 74 44 69 72 29 24 28 54 61 72 67 65 74 4e 61  etDir)$(TargetNa
13f0: 6d 65 29 33 32 24 28 54 61 72 67 65 74 45 78 74  me)32$(TargetExt
1400: 29 2e 63 6f 6e 66 69 67 22 0d 0a 20 20 20 20 20  ).config"..     
1410: 20 20 20 20 20 43 6f 6e 64 69 74 69 6f 6e 3d 22       Condition="
1420: 45 78 69 73 74 73 28 27 24 28 54 61 72 67 65 74  Exists('$(Target
1430: 50 61 74 68 29 2e 63 6f 6e 66 69 67 27 29 22 20  Path).config')" 
1440: 2f 3e 0d 0a 0d 0a 20 20 20 20 3c 45 78 65 63 20  />....    <Exec 
1450: 43 6f 6e 64 69 74 69 6f 6e 3d 22 27 24 28 44 69  Condition="'$(Di
1460: 72 46 6f 72 43 6c 6f 6e 65 41 6e 64 4d 61 72 6b  rForCloneAndMark
1470: 33 32 42 69 74 4f 6e 6c 79 29 27 20 21 3d 20 27  32BitOnly)' != '
1480: 27 20 41 6e 64 0d 0a 20 20 20 20 20 20 20 20 20  ' And..         
1490: 20 20 20 20 20 20 20 20 20 20 20 20 48 61 73 54              HasT
14a0: 72 61 69 6c 69 6e 67 53 6c 61 73 68 28 27 24 28  railingSlash('$(
14b0: 44 69 72 46 6f 72 43 6c 6f 6e 65 41 6e 64 4d 61  DirForCloneAndMa
14c0: 72 6b 33 32 42 69 74 4f 6e 6c 79 29 27 29 20 41  rk32BitOnly)') A
14d0: 6e 64 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20  nd..            
14e0: 20 20 20 20 20 20 20 20 20 45 78 69 73 74 73 28           Exists(
14f0: 27 24 28 44 69 72 46 6f 72 43 6c 6f 6e 65 41 6e  '$(DirForCloneAn
1500: 64 4d 61 72 6b 33 32 42 69 74 4f 6e 6c 79 29 62  dMark32BitOnly)b
1510: 69 6e 5c 43 6f 72 46 6c 61 67 73 2e 65 78 65 27  in\CorFlags.exe'
1520: 29 22 0d 0a 20 20 20 20 20 20 20 20 20 20 43 6f  )"..          Co
1530: 6d 6d 61 6e 64 3d 22 26 71 75 6f 74 3b 24 28 44  mmand="&quot;$(D
1540: 69 72 46 6f 72 43 6c 6f 6e 65 41 6e 64 4d 61 72  irForCloneAndMar
1550: 6b 33 32 42 69 74 4f 6e 6c 79 29 62 69 6e 5c 43  k32BitOnly)bin\C
1560: 6f 72 46 6c 61 67 73 2e 65 78 65 26 71 75 6f 74  orFlags.exe&quot
1570: 3b 20 26 71 75 6f 74 3b 24 28 54 61 72 67 65 74  ; &quot;$(Target
1580: 44 69 72 29 24 28 54 61 72 67 65 74 4e 61 6d 65  Dir)$(TargetName
1590: 29 33 32 24 28 54 61 72 67 65 74 45 78 74 29 26  )32$(TargetExt)&
15a0: 71 75 6f 74 3b 20 2f 33 32 42 49 54 2b 20 2f 46  quot; /32BIT+ /F
15b0: 6f 72 63 65 20 31 26 67 74 3b 4e 55 4c 22 20 2f  orce 1&gt;NUL" /
15c0: 3e 0d 0a 0d 0a 20 20 20 20 3c 45 78 65 63 20 43  >....    <Exec C
15d0: 6f 6e 64 69 74 69 6f 6e 3d 22 27 24 28 44 69 72  ondition="'$(Dir
15e0: 46 6f 72 43 6c 6f 6e 65 41 6e 64 4d 61 72 6b 33  ForCloneAndMark3
15f0: 32 42 69 74 4f 6e 6c 79 29 27 20 21 3d 20 27 27  2BitOnly)' != ''
1600: 20 41 6e 64 0d 0a 20 20 20 20 20 20 20 20 20 20   And..          
1610: 20 20 20 20 20 20 20 20 20 20 20 48 61 73 54 72             HasTr
1620: 61 69 6c 69 6e 67 53 6c 61 73 68 28 27 24 28 44  ailingSlash('$(D
1630: 69 72 46 6f 72 43 6c 6f 6e 65 41 6e 64 4d 61 72  irForCloneAndMar
1640: 6b 33 32 42 69 74 4f 6e 6c 79 29 27 29 20 41 6e  k32BitOnly)') An
1650: 64 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20  d..             
1660: 20 20 20 20 20 20 20 20 45 78 69 73 74 73 28 27          Exists('
1670: 24 28 44 69 72 46 6f 72 43 6c 6f 6e 65 41 6e 64  $(DirForCloneAnd
1680: 4d 61 72 6b 33 32 42 69 74 4f 6e 6c 79 29 62 69  Mark32BitOnly)bi
1690: 6e 5c 73 6e 2e 65 78 65 27 29 22 0d 0a 20 20 20  n\sn.exe')"..   
16a0: 20 20 20 20 20 20 20 43 6f 6d 6d 61 6e 64 3d 22         Command="
16b0: 26 71 75 6f 74 3b 24 28 44 69 72 46 6f 72 43 6c  &quot;$(DirForCl
16c0: 6f 6e 65 41 6e 64 4d 61 72 6b 33 32 42 69 74 4f  oneAndMark32BitO
16d0: 6e 6c 79 29 62 69 6e 5c 73 6e 2e 65 78 65 26 71  nly)bin\sn.exe&q
16e0: 75 6f 74 3b 20 2d 52 61 20 26 71 75 6f 74 3b 24  uot; -Ra &quot;$
16f0: 28 54 61 72 67 65 74 44 69 72 29 24 28 54 61 72  (TargetDir)$(Tar
1700: 67 65 74 4e 61 6d 65 29 33 32 24 28 54 61 72 67  getName)32$(Targ
1710: 65 74 45 78 74 29 26 71 75 6f 74 3b 20 26 71 75  etExt)&quot; &qu
1720: 6f 74 3b 24 28 41 73 73 65 6d 62 6c 79 4f 72 69  ot;$(AssemblyOri
1730: 67 69 6e 61 74 6f 72 4b 65 79 46 69 6c 65 29 26  ginatorKeyFile)&
1740: 71 75 6f 74 3b 22 20 2f 3e 0d 0a 0d 0a 20 20 20  quot;" />....   
1750: 20 3c 54 6f 75 63 68 20 43 6f 6e 64 69 74 69 6f   <Touch Conditio
1760: 6e 3d 22 27 24 28 44 69 72 46 6f 72 43 6c 6f 6e  n="'$(DirForClon
1770: 65 41 6e 64 4d 61 72 6b 33 32 42 69 74 4f 6e 6c  eAndMark32BitOnl
1780: 79 29 27 20 21 3d 20 27 27 20 41 6e 64 0d 0a 20  y)' != '' And.. 
1790: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
17a0: 20 20 20 20 20 48 61 73 54 72 61 69 6c 69 6e 67       HasTrailing
17b0: 53 6c 61 73 68 28 27 24 28 44 69 72 46 6f 72 43  Slash('$(DirForC
17c0: 6c 6f 6e 65 41 6e 64 4d 61 72 6b 33 32 42 69 74  loneAndMark32Bit
17d0: 4f 6e 6c 79 29 27 29 20 41 6e 64 0d 0a 20 20 20  Only)') And..   
17e0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
17f0: 20 20 20 45 78 69 73 74 73 28 27 24 28 44 69 72     Exists('$(Dir
1800: 46 6f 72 43 6c 6f 6e 65 41 6e 64 4d 61 72 6b 33  ForCloneAndMark3
1810: 32 42 69 74 4f 6e 6c 79 29 62 69 6e 5c 43 6f 72  2BitOnly)bin\Cor
1820: 46 6c 61 67 73 2e 65 78 65 27 29 20 41 6e 64 0d  Flags.exe') And.
1830: 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  .               
1840: 20 20 20 20 20 20 20 45 78 69 73 74 73 28 27 24         Exists('$
1850: 28 44 69 72 46 6f 72 43 6c 6f 6e 65 41 6e 64 4d  (DirForCloneAndM
1860: 61 72 6b 33 32 42 69 74 4f 6e 6c 79 29 62 69 6e  ark32BitOnly)bin
1870: 5c 73 6e 2e 65 78 65 27 29 22 0d 0a 20 20 20 20  \sn.exe')"..    
1880: 20 20 20 20 20 20 20 41 6c 77 61 79 73 43 72 65         AlwaysCre
1890: 61 74 65 3d 22 74 72 75 65 22 0d 0a 20 20 20 20  ate="true"..    
18a0: 20 20 20 20 20 20 20 46 69 6c 65 73 3d 22 24 28         Files="$(
18b0: 54 61 72 67 65 74 50 61 74 68 29 2e 43 6c 6f 6e  TargetPath).Clon
18c0: 65 41 6e 64 4d 61 72 6b 33 32 42 69 74 4f 6e 6c  eAndMark32BitOnl
18d0: 79 2e 64 6f 6e 65 22 20 2f 3e 0d 0a 20 20 3c 2f  y.done" />..  </
18e0: 54 61 72 67 65 74 3e 0d 0a 0d 0a 20 20 3c 21 2d  Target>....  <!-
18f0: 2d 0d 0a 20 20 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a  -..  ***********
1900: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a  ****************
1910: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a  ****************
1920: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a  ****************
1930: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a  ****************
1940: 2a 2a 2a 0d 0a 20 20 2d 2d 3e 0d 0a 0d 0a 20 20  ***..  -->....  
1950: 3c 54 61 72 67 65 74 20 4e 61 6d 65 3d 22 43 6c  <Target Name="Cl
1960: 6f 6e 65 41 6e 64 4d 61 72 6b 33 32 42 69 74 4f  oneAndMark32BitO
1970: 6e 6c 79 53 64 6b 54 6f 6f 6c 73 54 61 72 67 65  nlySdkToolsTarge
1980: 74 4e 61 6d 65 33 32 22 0d 0a 20 20 20 20 20 20  tName32"..      
1990: 20 20 20 20 43 6f 6e 64 69 74 69 6f 6e 3d 22 27      Condition="'
19a0: 24 28 43 6c 6f 6e 65 41 6e 64 4d 61 72 6b 33 32  $(CloneAndMark32
19b0: 42 69 74 4f 6e 6c 79 53 64 6b 54 6f 6f 6c 73 54  BitOnlySdkToolsT
19c0: 61 72 67 65 74 4e 61 6d 65 33 32 29 27 20 21 3d  argetName32)' !=
19d0: 20 27 66 61 6c 73 65 27 22 0d 0a 20 20 20 20 20   'false'"..     
19e0: 20 20 20 20 20 49 6e 70 75 74 73 3d 22 24 28 54       Inputs="$(T
19f0: 61 72 67 65 74 50 61 74 68 29 22 0d 0a 20 20 20  argetPath)"..   
1a00: 20 20 20 20 20 20 20 4f 75 74 70 75 74 73 3d 22         Outputs="
1a10: 24 28 54 61 72 67 65 74 50 61 74 68 29 2e 43 6c  $(TargetPath).Cl
1a20: 6f 6e 65 41 6e 64 4d 61 72 6b 33 32 42 69 74 4f  oneAndMark32BitO
1a30: 6e 6c 79 2e 64 6f 6e 65 22 3e 0d 0a 20 20 20 20  nly.done">..    
1a40: 3c 43 6f 70 79 20 53 6f 75 72 63 65 46 69 6c 65  <Copy SourceFile
1a50: 73 3d 22 24 28 54 61 72 67 65 74 50 61 74 68 29  s="$(TargetPath)
1a60: 22 0d 0a 20 20 20 20 20 20 20 20 20 20 44 65 73  "..          Des
1a70: 74 69 6e 61 74 69 6f 6e 46 69 6c 65 73 3d 22 24  tinationFiles="$
1a80: 28 54 61 72 67 65 74 44 69 72 29 24 28 54 61 72  (TargetDir)$(Tar
1a90: 67 65 74 4e 61 6d 65 29 33 32 24 28 54 61 72 67  getName)32$(Targ
1aa0: 65 74 45 78 74 29 22 20 2f 3e 0d 0a 0d 0a 20 20  etExt)" />....  
1ab0: 20 20 3c 43 6f 70 79 20 53 6f 75 72 63 65 46 69    <Copy SourceFi
1ac0: 6c 65 73 3d 22 24 28 54 61 72 67 65 74 50 61 74  les="$(TargetPat
1ad0: 68 29 2e 63 6f 6e 66 69 67 22 0d 0a 20 20 20 20  h).config"..    
1ae0: 20 20 20 20 20 20 44 65 73 74 69 6e 61 74 69 6f        Destinatio
1af0: 6e 46 69 6c 65 73 3d 22 24 28 54 61 72 67 65 74  nFiles="$(Target
1b00: 44 69 72 29 24 28 54 61 72 67 65 74 4e 61 6d 65  Dir)$(TargetName
1b10: 29 33 32 24 28 54 61 72 67 65 74 45 78 74 29 2e  )32$(TargetExt).
1b20: 63 6f 6e 66 69 67 22 0d 0a 20 20 20 20 20 20 20  config"..       
1b30: 20 20 20 43 6f 6e 64 69 74 69 6f 6e 3d 22 45 78     Condition="Ex
1b40: 69 73 74 73 28 27 24 28 54 61 72 67 65 74 50 61  ists('$(TargetPa
1b50: 74 68 29 2e 63 6f 6e 66 69 67 27 29 22 20 2f 3e  th).config')" />
1b60: 0d 0a 0d 0a 20 20 20 20 3c 45 78 65 63 20 43 6f  ....    <Exec Co
1b70: 6e 64 69 74 69 6f 6e 3d 22 27 24 28 54 61 72 67  ndition="'$(Targ
1b80: 65 74 46 72 61 6d 65 77 6f 72 6b 53 44 4b 54 6f  etFrameworkSDKTo
1b90: 6f 6c 73 44 69 72 65 63 74 6f 72 79 29 27 20 21  olsDirectory)' !
1ba0: 3d 20 27 27 20 41 6e 64 0d 0a 20 20 20 20 20 20  = '' And..      
1bb0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 48                 H
1bc0: 61 73 54 72 61 69 6c 69 6e 67 53 6c 61 73 68 28  asTrailingSlash(
1bd0: 27 24 28 54 61 72 67 65 74 46 72 61 6d 65 77 6f  '$(TargetFramewo
1be0: 72 6b 53 44 4b 54 6f 6f 6c 73 44 69 72 65 63 74  rkSDKToolsDirect
1bf0: 6f 72 79 29 27 29 20 41 6e 64 0d 0a 20 20 20 20  ory)') And..    
1c00: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
1c10: 20 45 78 69 73 74 73 28 27 24 28 54 61 72 67 65   Exists('$(Targe
1c20: 74 46 72 61 6d 65 77 6f 72 6b 53 44 4b 54 6f 6f  tFrameworkSDKToo
1c30: 6c 73 44 69 72 65 63 74 6f 72 79 29 43 6f 72 46  lsDirectory)CorF
1c40: 6c 61 67 73 2e 65 78 65 27 29 22 0d 0a 20 20 20  lags.exe')"..   
1c50: 20 20 20 20 20 20 20 43 6f 6d 6d 61 6e 64 3d 22         Command="
1c60: 26 71 75 6f 74 3b 24 28 54 61 72 67 65 74 46 72  &quot;$(TargetFr
1c70: 61 6d 65 77 6f 72 6b 53 44 4b 54 6f 6f 6c 73 44  ameworkSDKToolsD
1c80: 69 72 65 63 74 6f 72 79 29 43 6f 72 46 6c 61 67  irectory)CorFlag
1c90: 73 2e 65 78 65 26 71 75 6f 74 3b 20 26 71 75 6f  s.exe&quot; &quo
1ca0: 74 3b 24 28 54 61 72 67 65 74 44 69 72 29 24 28  t;$(TargetDir)$(
1cb0: 54 61 72 67 65 74 4e 61 6d 65 29 33 32 24 28 54  TargetName)32$(T
1cc0: 61 72 67 65 74 45 78 74 29 26 71 75 6f 74 3b 20  argetExt)&quot; 
1cd0: 2f 33 32 42 49 54 2b 20 2f 46 6f 72 63 65 20 31  /32BIT+ /Force 1
1ce0: 26 67 74 3b 4e 55 4c 22 20 2f 3e 0d 0a 0d 0a 20  &gt;NUL" />.... 
1cf0: 20 20 20 3c 45 78 65 63 20 43 6f 6e 64 69 74 69     <Exec Conditi
1d00: 6f 6e 3d 22 27 24 28 54 61 72 67 65 74 46 72 61  on="'$(TargetFra
1d10: 6d 65 77 6f 72 6b 53 44 4b 54 6f 6f 6c 73 44 69  meworkSDKToolsDi
1d20: 72 65 63 74 6f 72 79 29 27 20 21 3d 20 27 27 20  rectory)' != '' 
1d30: 41 6e 64 0d 0a 20 20 20 20 20 20 20 20 20 20 20  And..           
1d40: 20 20 20 20 20 20 20 20 20 20 48 61 73 54 72 61            HasTra
1d50: 69 6c 69 6e 67 53 6c 61 73 68 28 27 24 28 54 61  ilingSlash('$(Ta
1d60: 72 67 65 74 46 72 61 6d 65 77 6f 72 6b 53 44 4b  rgetFrameworkSDK
1d70: 54 6f 6f 6c 73 44 69 72 65 63 74 6f 72 79 29 27  ToolsDirectory)'
1d80: 29 20 41 6e 64 0d 0a 20 20 20 20 20 20 20 20 20  ) And..         
1d90: 20 20 20 20 20 20 20 20 20 20 20 20 45 78 69 73              Exis
1da0: 74 73 28 27 24 28 54 61 72 67 65 74 46 72 61 6d  ts('$(TargetFram
1db0: 65 77 6f 72 6b 53 44 4b 54 6f 6f 6c 73 44 69 72  eworkSDKToolsDir
1dc0: 65 63 74 6f 72 79 29 73 6e 2e 65 78 65 27 29 22  ectory)sn.exe')"
1dd0: 0d 0a 20 20 20 20 20 20 20 20 20 20 43 6f 6d 6d  ..          Comm
1de0: 61 6e 64 3d 22 26 71 75 6f 74 3b 24 28 54 61 72  and="&quot;$(Tar
1df0: 67 65 74 46 72 61 6d 65 77 6f 72 6b 53 44 4b 54  getFrameworkSDKT
1e00: 6f 6f 6c 73 44 69 72 65 63 74 6f 72 79 29 73 6e  oolsDirectory)sn
1e10: 2e 65 78 65 26 71 75 6f 74 3b 20 2d 52 61 20 26  .exe&quot; -Ra &
1e20: 71 75 6f 74 3b 24 28 54 61 72 67 65 74 44 69 72  quot;$(TargetDir
1e30: 29 24 28 54 61 72 67 65 74 4e 61 6d 65 29 33 32  )$(TargetName)32
1e40: 24 28 54 61 72 67 65 74 45 78 74 29 26 71 75 6f  $(TargetExt)&quo
1e50: 74 3b 20 26 71 75 6f 74 3b 24 28 41 73 73 65 6d  t; &quot;$(Assem
1e60: 62 6c 79 4f 72 69 67 69 6e 61 74 6f 72 4b 65 79  blyOriginatorKey
1e70: 46 69 6c 65 29 26 71 75 6f 74 3b 22 20 2f 3e 0d  File)&quot;" />.
1e80: 0a 0d 0a 20 20 20 20 3c 54 6f 75 63 68 20 43 6f  ...    <Touch Co
1e90: 6e 64 69 74 69 6f 6e 3d 22 27 24 28 54 61 72 67  ndition="'$(Targ
1ea0: 65 74 46 72 61 6d 65 77 6f 72 6b 53 44 4b 54 6f  etFrameworkSDKTo
1eb0: 6f 6c 73 44 69 72 65 63 74 6f 72 79 29 27 20 21  olsDirectory)' !
1ec0: 3d 20 27 27 20 41 6e 64 0d 0a 20 20 20 20 20 20  = '' And..      
1ed0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
1ee0: 48 61 73 54 72 61 69 6c 69 6e 67 53 6c 61 73 68  HasTrailingSlash
1ef0: 28 27 24 28 54 61 72 67 65 74 46 72 61 6d 65 77  ('$(TargetFramew
1f00: 6f 72 6b 53 44 4b 54 6f 6f 6c 73 44 69 72 65 63  orkSDKToolsDirec
1f10: 74 6f 72 79 29 27 29 20 41 6e 64 0d 0a 20 20 20  tory)') And..   
1f20: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
1f30: 20 20 20 45 78 69 73 74 73 28 27 24 28 54 61 72     Exists('$(Tar
1f40: 67 65 74 46 72 61 6d 65 77 6f 72 6b 53 44 4b 54  getFrameworkSDKT
1f50: 6f 6f 6c 73 44 69 72 65 63 74 6f 72 79 29 43 6f  oolsDirectory)Co
1f60: 72 46 6c 61 67 73 2e 65 78 65 27 29 20 41 6e 64  rFlags.exe') And
1f70: 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20  ..              
1f80: 20 20 20 20 20 20 20 20 45 78 69 73 74 73 28 27          Exists('
1f90: 24 28 54 61 72 67 65 74 46 72 61 6d 65 77 6f 72  $(TargetFramewor
1fa0: 6b 53 44 4b 54 6f 6f 6c 73 44 69 72 65 63 74 6f  kSDKToolsDirecto
1fb0: 72 79 29 73 6e 2e 65 78 65 27 29 22 0d 0a 20 20  ry)sn.exe')"..  
1fc0: 20 20 20 20 20 20 20 20 20 41 6c 77 61 79 73 43           AlwaysC
1fd0: 72 65 61 74 65 3d 22 74 72 75 65 22 0d 0a 20 20  reate="true"..  
1fe0: 20 20 20 20 20 20 20 20 20 46 69 6c 65 73 3d 22           Files="
1ff0: 24 28 54 61 72 67 65 74 50 61 74 68 29 2e 43 6c  $(TargetPath).Cl
2000: 6f 6e 65 41 6e 64 4d 61 72 6b 33 32 42 69 74 4f  oneAndMark32BitO
2010: 6e 6c 79 2e 64 6f 6e 65 22 20 2f 3e 0d 0a 20 20  nly.done" />..  
2020: 3c 2f 54 61 72 67 65 74 3e 0d 0a 0d 0a 20 20 3c  </Target>....  <
2030: 21 2d 2d 0d 0a 20 20 2a 2a 2a 2a 2a 2a 2a 2a 2a  !--..  *********
2040: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a  ****************
2050: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a  ****************
2060: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a  ****************
2070: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a  ****************
2080: 2a 2a 2a 2a 2a 0d 0a 20 20 2d 2d 3e 0d 0a 0d 0a  *****..  -->....
2090: 20 20 3c 54 61 72 67 65 74 20 4e 61 6d 65 3d 22    <Target Name="
20a0: 43 6c 65 61 6e 43 6f 6e 66 69 67 75 72 61 74 69  CleanConfigurati
20b0: 6f 6e 73 22 0d 0a 20 20 20 20 20 20 20 20 20 20  ons"..          
20c0: 43 6f 6e 64 69 74 69 6f 6e 3d 22 27 24 28 4f 75  Condition="'$(Ou
20d0: 74 70 75 74 50 61 74 68 29 27 20 21 3d 20 27 27  tputPath)' != ''
20e0: 20 41 6e 64 0d 0a 20 20 20 20 20 20 20 20 20 20   And..          
20f0: 20 20 20 20 20 20 20 20 20 20 20 48 61 73 54 72             HasTr
2100: 61 69 6c 69 6e 67 53 6c 61 73 68 28 27 24 28 4f  ailingSlash('$(O
2110: 75 74 70 75 74 50 61 74 68 29 27 29 20 41 6e 64  utputPath)') And
2120: 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20  ..              
2130: 20 20 20 20 20 20 20 45 78 69 73 74 73 28 27 24         Exists('$
2140: 28 4f 75 74 70 75 74 50 61 74 68 29 27 29 22 3e  (OutputPath)')">
2150: 0d 0a 20 20 20 20 3c 43 72 65 61 74 65 49 74 65  ..    <CreateIte
2160: 6d 20 49 6e 63 6c 75 64 65 3d 22 24 28 4f 75 74  m Include="$(Out
2170: 70 75 74 50 61 74 68 29 2a 2e 63 6f 6e 66 69 67  putPath)*.config
2180: 22 3e 0d 0a 20 20 20 20 20 20 3c 4f 75 74 70 75  ">..      <Outpu
2190: 74 20 49 74 65 6d 4e 61 6d 65 3d 22 43 6f 6e 66  t ItemName="Conf
21a0: 69 67 75 72 61 74 69 6f 6e 46 69 6c 65 73 22 20  igurationFiles" 
21b0: 54 61 73 6b 50 61 72 61 6d 65 74 65 72 3d 22 49  TaskParameter="I
21c0: 6e 63 6c 75 64 65 22 20 2f 3e 0d 0a 20 20 20 20  nclude" />..    
21d0: 3c 2f 43 72 65 61 74 65 49 74 65 6d 3e 0d 0a 0d  </CreateItem>...
21e0: 0a 20 20 20 20 3c 44 65 6c 65 74 65 20 43 6f 6e  .    <Delete Con
21f0: 64 69 74 69 6f 6e 3d 22 27 40 28 43 6f 6e 66 69  dition="'@(Confi
2200: 67 75 72 61 74 69 6f 6e 46 69 6c 65 73 29 27 20  gurationFiles)' 
2210: 21 3d 20 27 27 22 0d 0a 20 20 20 20 20 20 20 20  != ''"..        
2220: 20 20 20 20 46 69 6c 65 73 3d 22 40 28 43 6f 6e      Files="@(Con
2230: 66 69 67 75 72 61 74 69 6f 6e 46 69 6c 65 73 29  figurationFiles)
2240: 22 20 2f 3e 0d 0a 20 20 3c 2f 54 61 72 67 65 74  " />..  </Target
2250: 3e 0d 0a 0d 0a 20 20 3c 21 2d 2d 0d 0a 20 20 2a  >....  <!--..  *
2260: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a  ****************
2270: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a  ****************
2280: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a  ****************
2290: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a  ****************
22a0: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 0d 0a 20  *************.. 
22b0: 20 2d 2d 3e 0d 0a 0d 0a 20 20 3c 54 61 72 67 65   -->....  <Targe
22c0: 74 20 4e 61 6d 65 3d 22 43 6f 70 79 43 6f 6e 66  t Name="CopyConf
22d0: 69 67 75 72 61 74 69 6f 6e 73 22 0d 0a 20 20 20  igurations"..   
22e0: 20 20 20 20 20 20 20 43 6f 6e 64 69 74 69 6f 6e         Condition
22f0: 3d 22 27 24 28 43 6f 70 79 43 6f 6e 66 69 67 75  ="'$(CopyConfigu
2300: 72 61 74 69 6f 6e 73 29 27 20 21 3d 20 27 66 61  rations)' != 'fa
2310: 6c 73 65 27 20 41 6e 64 0d 0a 20 20 20 20 20 20  lse' And..      
2320: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 27                 '
2330: 24 28 4f 75 74 70 75 74 50 61 74 68 29 27 20 21  $(OutputPath)' !
2340: 3d 20 27 27 20 41 6e 64 0d 0a 20 20 20 20 20 20  = '' And..      
2350: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 48                 H
2360: 61 73 54 72 61 69 6c 69 6e 67 53 6c 61 73 68 28  asTrailingSlash(
2370: 27 24 28 4f 75 74 70 75 74 50 61 74 68 29 27 29  '$(OutputPath)')
2380: 20 41 6e 64 0d 0a 20 20 20 20 20 20 20 20 20 20   And..          
2390: 20 20 20 20 20 20 20 20 20 20 20 45 78 69 73 74             Exist
23a0: 73 28 27 24 28 4f 75 74 70 75 74 50 61 74 68 29  s('$(OutputPath)
23b0: 27 29 22 0d 0a 20 20 20 20 20 20 20 20 20 20 49  ')"..          I
23c0: 6e 70 75 74 73 3d 22 24 28 54 61 72 67 65 74 50  nputs="$(TargetP
23d0: 61 74 68 29 22 0d 0a 20 20 20 20 20 20 20 20 20  ath)"..         
23e0: 20 4f 75 74 70 75 74 73 3d 22 24 28 54 61 72 67   Outputs="$(Targ
23f0: 65 74 50 61 74 68 29 2e 43 6f 70 79 43 6f 6e 66  etPath).CopyConf
2400: 69 67 75 72 61 74 69 6f 6e 73 2e 64 6f 6e 65 22  igurations.done"
2410: 3e 0d 0a 20 20 20 20 3c 43 72 65 61 74 65 49 74  >..    <CreateIt
2420: 65 6d 20 49 6e 63 6c 75 64 65 3d 22 43 6f 6e 66  em Include="Conf
2430: 69 67 75 72 61 74 69 6f 6e 73 5c 2a 2e 63 6f 6e  igurations\*.con
2440: 66 69 67 22 20 45 78 63 6c 75 64 65 3d 22 43 6f  fig" Exclude="Co
2450: 6e 66 69 67 75 72 61 74 69 6f 6e 73 5c 6e 6f 5f  nfigurations\no_
2460: 2a 22 3e 0d 0a 20 20 20 20 20 20 3c 4f 75 74 70  *">..      <Outp
2470: 75 74 20 49 74 65 6d 4e 61 6d 65 3d 22 43 6f 6e  ut ItemName="Con
2480: 66 69 67 75 72 61 74 69 6f 6e 46 69 6c 65 73 22  figurationFiles"
2490: 20 54 61 73 6b 50 61 72 61 6d 65 74 65 72 3d 22   TaskParameter="
24a0: 49 6e 63 6c 75 64 65 22 20 2f 3e 0d 0a 20 20 20  Include" />..   
24b0: 20 3c 2f 43 72 65 61 74 65 49 74 65 6d 3e 0d 0a   </CreateItem>..
24c0: 0d 0a 20 20 20 20 3c 43 6f 70 79 20 53 6f 75 72  ..    <Copy Sour
24d0: 63 65 46 69 6c 65 73 3d 22 40 28 43 6f 6e 66 69  ceFiles="@(Confi
24e0: 67 75 72 61 74 69 6f 6e 46 69 6c 65 73 29 22 0d  gurationFiles)".
24f0: 0a 20 20 20 20 20 20 20 20 20 20 44 65 73 74 69  .          Desti
2500: 6e 61 74 69 6f 6e 46 6f 6c 64 65 72 3d 22 24 28  nationFolder="$(
2510: 4f 75 74 70 75 74 50 61 74 68 29 22 20 2f 3e 0d  OutputPath)" />.
2520: 0a 0d 0a 20 20 20 20 3c 54 6f 75 63 68 20 41 6c  ...    <Touch Al
2530: 77 61 79 73 43 72 65 61 74 65 3d 22 74 72 75 65  waysCreate="true
2540: 22 0d 0a 20 20 20 20 20 20 20 20 20 20 20 46 69  "..           Fi
2550: 6c 65 73 3d 22 24 28 54 61 72 67 65 74 50 61 74  les="$(TargetPat
2560: 68 29 2e 43 6f 70 79 43 6f 6e 66 69 67 75 72 61  h).CopyConfigura
2570: 74 69 6f 6e 73 2e 64 6f 6e 65 22 20 2f 3e 0d 0a  tions.done" />..
2580: 20 20 3c 2f 54 61 72 67 65 74 3e 0d 0a 0d 0a 20    </Target>.... 
2590: 20 3c 21 2d 2d 0d 0a 20 20 2a 2a 2a 2a 2a 2a 2a   <!--..  *******
25a0: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a  ****************
25b0: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a  ****************
25c0: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a  ****************
25d0: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a  ****************
25e0: 2a 2a 2a 2a 2a 2a 2a 0d 0a 20 20 2d 2d 3e 0d 0a  *******..  -->..
25f0: 0d 0a 20 20 3c 54 61 72 67 65 74 20 4e 61 6d 65  ..  <Target Name
2600: 3d 22 57 72 6f 6e 67 4e 65 74 46 78 22 0d 0a 20  ="WrongNetFx".. 
2610: 20 20 20 20 20 20 20 20 20 43 6f 6e 64 69 74 69           Conditi
2620: 6f 6e 3d 22 27 24 28 50 72 6f 6a 65 63 74 4e 61  on="'$(ProjectNa
2630: 6d 65 29 27 20 21 3d 20 27 27 22 3e 0d 0a 20 20  me)' != ''">..  
2640: 20 20 3c 57 61 72 6e 69 6e 67 20 54 65 78 74 3d    <Warning Text=
2650: 22 56 65 72 73 69 6f 6e 20 6d 69 73 6d 61 74 63  "Version mismatc
2660: 68 20 66 6f 72 20 74 68 65 20 2e 4e 45 54 20 46  h for the .NET F
2670: 72 61 6d 65 77 6f 72 6b 2c 20 73 6b 69 70 70 69  ramework, skippi
2680: 6e 67 20 70 72 6f 6a 65 63 74 20 26 71 75 6f 74  ng project &quot
2690: 3b 24 28 50 72 6f 6a 65 63 74 4e 61 6d 65 29 26  ;$(ProjectName)&
26a0: 71 75 6f 74 3b 2e 2e 2e 22 20 2f 3e 0d 0a 20 20  quot;..." />..  
26b0: 3c 2f 54 61 72 67 65 74 3e 0d 0a 0d 0a 20 20 3c  </Target>....  <
26c0: 21 2d 2d 0d 0a 20 20 2a 2a 2a 2a 2a 2a 2a 2a 2a  !--..  *********
26d0: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a  ****************
26e0: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a  ****************
26f0: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a  ****************
2700: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a  ****************
2710: 2a 2a 2a 2a 2a 0d 0a 20 20 2d 2d 3e 0d 0a 0d 0a  *****..  -->....
2720: 20 20 3c 54 61 72 67 65 74 20 4e 61 6d 65 3d 22    <Target Name="
2730: 4d 69 73 73 69 6e 67 56 73 53 64 6b 22 0d 0a 20  MissingVsSdk".. 
2740: 20 20 20 20 20 20 20 20 20 43 6f 6e 64 69 74 69           Conditi
2750: 6f 6e 3d 22 27 24 28 50 72 6f 6a 65 63 74 4e 61  on="'$(ProjectNa
2760: 6d 65 29 27 20 21 3d 20 27 27 22 3e 0d 0a 20 20  me)' != ''">..  
2770: 20 20 3c 57 61 72 6e 69 6e 67 20 54 65 78 74 3d    <Warning Text=
2780: 22 54 68 65 20 56 69 73 75 61 6c 20 53 74 75 64  "The Visual Stud
2790: 69 6f 20 53 44 4b 20 69 73 20 6d 69 73 73 69 6e  io SDK is missin
27a0: 67 2c 20 73 6b 69 70 70 69 6e 67 20 70 72 6f 6a  g, skipping proj
27b0: 65 63 74 20 26 71 75 6f 74 3b 24 28 50 72 6f 6a  ect &quot;$(Proj
27c0: 65 63 74 4e 61 6d 65 29 26 71 75 6f 74 3b 2e 2e  ectName)&quot;..
27d0: 2e 22 20 2f 3e 0d 0a 20 20 3c 2f 54 61 72 67 65  ." />..  </Targe
27e0: 74 3e 0d 0a 3c 2f 50 72 6f 6a 65 63 74 3e 0d 0a  t>..</Project>..