Aracılığıyla paylaş


Kopyalama Görevi

Yeni bir konuma dosya sistemindeki dosyaları kopyalar.

Parametreler

Aşağıdaki tablo Copy görevinin parametrelerini açıklar.

Parametre

Tanımlama

CopiedFiles

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

Başarılı bir şekilde kopyalandı öğeleri içerir.

DestinationFiles

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

Kaynak dosyaların kopyalanması gereken dosya listesini belirtir.Bu listede belirtilen liste ile bire bir eşleme olması beklenen SourceFiles parametre.Diğer bir deyişle, belirtilen ilk dosyanın SourceFiles belirtilen ilk konumuna kopyalanacaktır DestinationFiles, ve benzeri.

DestinationFolder

İsteğe bağlı ITaskItem parametresi.

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

OverwriteReadOnlyFiles

İsteğe bağlı Boolean parametresi.

Yalnızca okuma dosyaları olarak işaretlenmiş olsa bile, dosyaların üzerine yaz

Retries

İsteğe bağlı Int32 parametresi.

Kopyalamak, önceki tüm denemeler baarısız olursa denemek için kaç kez belirtir.Varsayılan değer sıfır.

Not: deneme kullanımı eşitleme sorunu yapı işleminizin maskeleyebilirsiniz.

RetryDelayMilliseconds

İsteğe bağlı Int32 parametresi.

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

SkipUnchangedFiles

İsteğe bağlı Boolean parametresi.

Yoksa true, kaynak ve hedef değiştirilmemiş dosyaları kopyalama atlar.Copy Görev dosyaları aynı boyuta sahip oldukları aynı son değiştirme ve değişmemiş olarak dikkate alır.

[!NOT]

Bu parametreyi ayarlamak, true, çünkü, yalnızca görev çalıştırır, Bağımlılık çözümlemesini içeren hedef kullanmamalısınız son değiştiren kez kaynak dosyalarının son-modified yeni kez hedef dosyaların.

SourceFiles

Gerekli ITaskItem[] parametre.

Kopyalanacak dosyaları belirtir.

UseHardlinksIfPossible

İsteğe bağlı Boolean parametresi.

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

Notlar

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

Yukarıda listelenen parametrelere ek olarak, bu görev TaskExtension sınıfından parametreleri devralır; bu sınıf da Task sınıfından devralınmıştır.Bu ek parametrelerin ve tanımlamaların bir listesi için, bkz. TaskExtension Taban 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 örnek bir yinelenen kopya bunu nasıl yapacağınızı gösterir.Bu proje tüm dosyaları yinelemeli olarak 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örev Başvurusu