2012-06-04 6 views
0

아래 코드는 Source에서 Destination folder으로 파일을 복사하는 데 적합합니다. 복사 된 파일을 예를 들어 1.zip.exe 2.NetFx.exe ... 또는 I.zip.exe II.NetFx.exe 등으로 순서대로 만듭니다.MsBuild : 파일에 텍스트 또는 사용자 지정 정보 추가

기본적으로 사용자에게 도구를 순서대로 설치하려고합니다. 내가 어떻게 이럴 수 있니? 제발 좀 생각해주세요 ...!

<PropertyGroup Condition="'$(OutDir)'==''"> 
      <OutDir>..\..\..\OutputSetup\</OutDir> 
    </PropertyGroup> 

    <ItemGroup> 
     <SourceFiles Include="..\tools\zip\**\*.*"/> 
     <SourceFiles Include="..\tools\NetFx\**\*.*"/> 
    </ItemGroup> 


    <Target Name="CopyTools"> 

      <Copy SourceFiles="@(SourceFiles)" DestinationFiles="@($(OutDir)\%(RecursiveDir)%(Filename)%(Extension)" /> 
    </Target> 
+0

회원님이 무엇을 요구해야합니다. MSBuild에서의 주문은 [대상 종속성] (http://msdn.microsoft.com/en-us/library/ee216359.aspx)에 의해 부과됩니다 : DependsOnTargets, BeforeTargets, AfterTargets. 보장 된 실행 순서를 원하면 해당 항목에 대해 별도의 대상을 작성하고 해당 항목 간의 종속성을 설정하십시오. –

+0

@Seva Titov : 사용자에게 주문 순서대로 설치하라고 말하고 싶습니다. 따라서'.zip.exe 2.NetFx.exe'와 같은 순서로 도구를 표시하고 싶습니다. – linguini

답변

1

나는 아래 같은 코드를 다음과 같이이 문제를 해결할 수 있기를 바랍니다 :

<PropertyGroup Condition="'$(OutDir)'==''"> 
    <OutDir>..\..\..\OutputSetup\</OutDir> 
</PropertyGroup> 

<ItemGroup> 
    <SourceFiles Include="..\tools\zip\**\*.*"> 
     <Number>1</Number> 
    </SourceFiles> 
    <SourceFiles Include="..\tools\NetFx\**\*.*"> 
     <Number>2</Number> 
    </SourceFiles> 
</ItemGroup> 


<Target Name="CopyTools"> 

    <Copy SourceFiles="@(SourceFiles)" DestinationFiles="@($(OutDir)\%(SourceFiles.Number)%(RecursiveDir)%(Filename)%(Extension)" /> 
</Target> 
+0

: Genial, merci. – linguini