Subversion Repository Public Repository

ChrisCompleteCodeTrunk

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
<Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
  <ItemGroup>
    <RoslyCompilerFiles Include="$(CscToolPath)\*">
      <Link>roslyn\%(RecursiveDir)%(Filename)%(Extension)</Link>
    </RoslyCompilerFiles>
  </ItemGroup>
  <Target Name="IncludeRoslynCompilerFilesToFilesForPackagingFromProject" BeforeTargets="PrepareForRun" >
    <ItemGroup>
      <FilesForPackagingFromProject Include="@(RoslyCompilerFiles)">
        <DestinationRelativePath>bin\roslyn\%(RecursiveDir)%(Filename)%(Extension)</DestinationRelativePath>
        <FromTarget>IncludeRoslynCompilerFilesToFilesForPackagingFromProject</FromTarget>
        <Category>Run</Category>
      </FilesForPackagingFromProject>
    </ItemGroup>
  </Target>
  <Target Name="CopyRoslynCompilerFilesToOutputDirectory" AfterTargets="CopyFilesToOutputDirectory">
    <Copy SourceFiles="@(RoslyCompilerFiles)" DestinationFolder="$(WebProjectOutputDir)\bin\roslyn" ContinueOnError="true" SkipUnchangedFiles="true" Retries="0" />
  </Target>
  <Target Name = "KillVBCSCompilerAndRetryCopy" AfterTargets="CopyRoslynCompilerFilesToOutputDirectory" Condition="'$(MSBuildLastTaskResult)' == 'False'" >
    <KillProcess ProcessName="VBCSCompiler" ImagePath="$(WebProjectOutputDir)" />
    <Copy SourceFiles="@(RoslyCompilerFiles)" DestinationFolder="$(WebProjectOutputDir)\bin\roslyn" ContinueOnError="true" SkipUnchangedFiles="true" />
  </Target>
  <UsingTask TaskName="KillProcess" TaskFactory="CodeTaskFactory" AssemblyFile="$(MSBuildToolsPath)\Microsoft.Build.Tasks.v4.0.dll">
    <ParameterGroup>
      <ProcessName ParameterType="System.String" Required="true" />
      <ImagePath ParameterType="System.String" Required="true" />
    </ParameterGroup>
    <Task>
      <Reference Include="System" />
      <Reference Include="System.Management" />
      <Using Namespace="System" />
      <Using Namespace="System.Linq" />
      <Using Namespace="System.Diagnostics" />
      <Using Namespace="System.Management" />
      <Code Type="Fragment" Language="cs">
        <![CDATA[
                try
                {
                  foreach(var p in Process.GetProcessesByName(ProcessName))
                  {
                      var wmiQuery = "SELECT ProcessId, ExecutablePath FROM Win32_Process WHERE ProcessId = " + p.Id;
                      using(var searcher = new ManagementObjectSearcher(wmiQuery))
                      {
                        using(var results = searcher.Get())
                          {
                            var mo = results.Cast<ManagementObject>().FirstOrDefault();
                            Log.LogMessage("ExecutablePath is {0}", (string)mo["ExecutablePath"]);
                            if(mo != null && string.Compare((string)mo["ExecutablePath"], ImagePath, StringComparison.OrdinalIgnoreCase) > 0)
                            {
                              p.Kill();
                              Log.LogMessage("{0} is killed", (string)mo["ExecutablePath"]);
                              break;
                            }
                          }
                      }
                  }
                }
                catch (Exception ex)
                {
                  Log.LogErrorFromException(ex);
                }
                return true;
                ]]>
      </Code>
    </Task>
  </UsingTask>
</Project>

Commits for ChrisCompleteCodeTrunk/AmsLaserficheDataProvider/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.1.0.7/build/net45/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.props

Diff revisions: vs.
Revision Author Commited Message
1 BBDSCHRIS picture BBDSCHRIS Wed 22 Aug, 2018 20:08:03 +0000