Aracılığıyla paylaş


Görev kopyalama

Dosyaları dosya sistemi yeni bir konuma kopyalar.

Parametreler

Aşağıdaki tabloda parametrelerini açıklar Copy görevi.

Parametre

Description

CopiedFiles

İsteğe bağlı ITaskItem[] çıkış parametresi.

Başarıyla kopyalanan öğeleri içerir.

DestinationFiles

İsteğe bağlı ITaskItem[] çıkış parametresi.

Kaynak dosyalar Kopyalanacak dosyaların listesini belirtir. Bu listede belirtilen listesi ile bire bir eşleme olması beklenen SourceFiles parametresi. Diğer bir deyişle, belirtilen ilk dosya SourceFiles belirtilen ilk konuma kopyalanır DestinationFiles, ve benzeri.

DestinationFolder

İsteğe bağlı ITaskItem parametresi.

Dosyaları kopyalamak istediğiniz dizini belirtir. Bu dizin bir dosya olmalıdır. Dizin yoksa, otomatik olarak oluşturulur.

OverwriteReadOnlyFiles

İsteğe bağlı Boolean parametresi.

Bile okuma yalnızca dosyaları olarak işaretlenmiş dosyaların üzerine yaz

Retries

İsteğe bağlı Int32 parametresi.

Kopyalamak, önceki tüm girişimler başarısız olmuş, denemek için kaç kez belirtir. Varsayılan olarak sıfır.

Not: deneme kullanımı işlemlerinizle eşitleme sorunun maskeleyebilirsiniz.

RetryDelayMilliseconds

İsteğe bağlı Int32 parametresi.

Gerekli tüm yeniden denemeler arasındaki gecikme belirtir. Varsayılan olarak CopyTask yapıcısına iletilen RetryDelayMillisecondsDefault bağımsız değişkeni.

SkipUnchangedFiles

İsteğe bağlı Boolean parametresi.

true, Kaynak ve hedef değiştirilmemiş dosyaları kopyalama atlar. Copy Görev, sahip oldukları aynı boyutta ve aynı son değişiklik saati değişmeden dosya dikkate alır.

NotNot
Bu parametreyi ayarlamak, true, yalnızca görev, çalıştığı için bağımlılık çözümlemesi içeren hedef kullanmamalısınız last-modified kez kaynak dosyalarının last-modified yeni hedef dosya sayısı.

SourceFiles

Gerekli ITaskItem[] parametresi.

Kopyalanacak dosyaları belirtir.

UseHardlinksIfPossible

İsteğe bağlı Boolean parametresi.

true, Dosyaları kopyalamak yerine kopyalanan dosyalar için sabit bir bağlantı oluşturur.

Notlar

Ya da DestinationFolder veya DestinationFiles parametresi belirtilen, ancak ikisi de olmalıdır. Her ikisi de belirtilirse, görev başarısız olur ve bir hata günlüğe kaydedilir.

Yukarıda listelenen parametreleri ek olarak bu görevi parametrelerinden devralan TaskExtension kendisinde sınıfı miras alır Task sınıfı. Bu ek parametreler ve açıklamalarının listesi için bkz: TaskExtension temel sınıf.

Örnek

Aşağıdaki örnek öğeleri kopyalar MySourceFiles klasörü c:\MyProject\Destination koleksiyonuna öğe.

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

    <ItemGroup>
        <MySourceFiles Include="a.cs;b.cs;c.cs"/>
    </ItemGroup>

    <Target Name="CopyFiles">
        <Copy
            SourceFiles="@(MySourceFiles)"
            DestinationFolder="c:\MyProject\Destination"
        />
    </Target>

</Project>

Aşağıdaki örnekte, yinelenen kopya yapmak gösterilmiştir. Bu proje tüm dosyaları art arda c:\MySourceTree c:\MyDestinationTree dizin yapısını koruyarak kopyalar.

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

    <ItemGroup>
        <MySourceFiles Include="c:\MySourceTree\**\*.*"/>
    </ItemGroup>

    <Target Name="CopyFiles">
        <Copy
            SourceFiles="@(MySourceFiles)"
            DestinationFiles="@(MySourceFiles->'c:\MyDestinationTree\%(RecursiveDir)%(Filename)%(Extension)')"
        />
    </Target>

</Project>

Ayrıca bkz.

Kavramlar

MSBuild görevleri

Diğer Kaynaklar

MSBuild görevi başvurusu