Sdílet prostřednictvím


Jak: Vyberte soubory k sestavení

Při sestavení projekt obsahuje několik souborů, můžete každý soubor zvlášť v souboru projekt nebo zahrnout všechny soubory do jednoho adresáře nebo vnořené sady adresářů lze použít zástupné znaky.

Určení vstupů

Položky představují vstupy pro sestavení.Další informace o zboží, viz Nástroj MSBuild položky.

Chcete-li soubory pro sestavení, musí být obsažena v seznamu položka MSBuildsouboru projekt . Více souborů lze přidat do seznamů položka buď jednotlivě včetně souborů nebo pomocí zástupných znaků zahrnout mnoho souborů najednou.

deklarovat položky jednotlivě

  • Použití Include atributy, které jsou podobné následující:

    <CSFile Include="form1.cs"/>

    – nebo –

    <VBFile Include="form1.vb"/>

    [!POZNÁMKA]

    Položky vkolekce položkanejsou ve stejném adresáři jako soubor projekt , musíte zadat celé nebo relativní cesta na položka. Například: Include="..\..\form2.cs".

deklarovat více položek

  • Použití Include atributy, které jsou podobné následující:

    <CSFile Include="form1.cs;form2.cs"/>

    – nebo –

    <VBFile Include="form1.vb;form2.vb"/>

Určení vstupů pomocí zástupných znaků

Můžete také použít zástupné znaky pro rekurzivně zahrnout všechny soubory nebo pouze určité soubory z podadresáře jako vstupy pro sestavení.Další informace o zástupných znaků naleznete v tématuNástroj MSBuild položky

Následující příklady jsou založeny na projekt , který obsahuje grafické soubory v následujících adresářích a podadresářích, s soubor projekt umístěný v adresáři projektu:

Project\Images\BestJpgs

Project\Images\ImgJpgs

Project\Images\ImgJpgs\Img1

Zahrnout všechny soubory s příponou JPG obrázky adresáře a podadresáře

  • Použít následující Include atribut:

    Include="Images\**\*.jpg"

Zahrnout všechny soubory s příponou JPG počínaje "img"

  • Použít následující Include atribut:

    Include="Images\**\img*.jpg"

Zahrnout všechny soubory s názvy ve formátu JPG "využívá" koncové adresářů

  • Použijte jeden z následujících Include atributy:

    Include="Images\**\*jpgs\*.*"

    – nebo –

    Include="Images\**\*jpgs\*"

Předávání položek k úkolu

V souboru projekt , můžete použít @ () zápis úkoly jako vstup pro sestaveníurčit seznam celé položka .Seznam všech souborů samostatně nebo použít zástupné znaky, můžete použít tento zápis.

Použít všechny soubory Visual C# nebo Visual Basic jako vstupy

  • Použití Include následující atributy:

    <CSC Sources="@(CSFile)">...</CSC>

    – nebo –

    <VBC Sources="@(VBFile)">...</VBC>

[!POZNÁMKA]

Je třeba použít zástupné znaky s položkami na jednotlivé vstupy sestavení; Nelze určit vstupy pomocí Sources atribut v MSBuild úkoly, jako například Csc nebo soubor Vbc. Následující příklad je platný v souboru projekt :

<CSC Sources="*.cs">...</CSC>

Příklad

Následující příklad kódu ukazuje projekt , který zahrnuje všechny vstupní soubory samostatně.

<Project DefaultTargets="Compile"
    xmlns="https://schemas.microsoft.com/developer/msbuild/2003" >
    <PropertyGroup>
        <Builtdir>built</Builtdir>
    </PropertyGroup>

    <ItemGroup>
        <CSFile Include="Form1.cs"/>
        <CSFile Include="AssemblyInfo.cs"/>

        <Reference Include="System.dll"/>
        <Reference Include="System.Data.dll"/>
        <Reference Include="System.Drawing.dll"/>
        <Reference Include="System.Windows.Forms.dll"/>
        <Reference Include="System.XML.dll"/>
    </ItemGroup>

    <Target Name="PreBuild">
        <Exec Command="if not exist $(builtdir) md $(builtdir)"/>
    </Target>

    <Target Name="Compile" DependsOnTargets="PreBuild">
        <Csc Sources="@(CSFile)"
            References="@(Reference)"
            OutputAssembly="$(builtdir)\$(MSBuildProjectName).exe"
            TargetType="exe" />
    </Target>
</Project>

Následující příklad kódu používá zástupný znak zahrnout všechny soubory .cs.

<Project DefaultTargets="Compile"
    xmlns="https://schemas.microsoft.com/developer/msbuild/2003" >

    <PropertyGroup>
        <builtdir>built</builtdir>
    </PropertyGroup>

    <ItemGroup>
        <CSFile Include="*.cs"/>

        <Reference Include="System.dll"/>
        <Reference Include="System.Data.dll"/>
        <Reference Include="System.Drawing.dll"/>
        <Reference Include="System.Windows.Forms.dll"/>
        <Reference Include="System.XML.dll"/>
    </ItemGroup>

    <Target Name="PreBuild">
        <Exec Command="if not exist $(builtdir) md $(builtdir)"/>
    </Target>

    <Target Name="Compile" DependsOnTargets="PreBuild">
        <Csc Sources="@(CSFile)"
            References="@(Reference)"
            OutputAssembly="$(builtdir)\$(MSBuildProjectName).exe"
            TargetType="exe" />
    </Target>
</Project>

Viz také

Úkoly

Jak: vyloučení souborů ze sestavení

Koncepty

Nástroj MSBuild položky