Yürütme görevi

Belirtilen bağımsız değişkenleri kullanarak belirtilen programı veya komutu çalıştırır.

Parametreler

Aşağıdaki tabloda görevin parametreleri Exec açıklanmaktadır.

Parametre Tanım
Command Gerekli String parametresi.

Çalıştırılacak komutlar. Bunlar attrib gibi sistem komutları veya program.exe, runprogram.bat veya setup.msi gibi yürütülebilir bir komut olabilir.

Bu parametre birden çok komut satırı içerebilir. Alternatif olarak, bir toplu iş dosyasına birden çok komut ekleyebilir ve bu parametreyi kullanarak çalıştırabilirsiniz.
ConsoleOutput İsteğe bağlı ITaskItem[] çıkış parametresi.

Her öğe çıkışı, araç tarafından yayılan standart çıkıştan veya standart hata akışından bir satırdır. Bu yalnızca olarak ayarlandıysa ConsoleToMsBuild yakalanır true.
ConsoleToMsBuild İsteğe bağlı Boolean parametre.

ise true, görev aracın standart hatasını ve standart çıkışını yakalar ve bunları çıkış parametresinde ConsoleOutput kullanılabilir hale getirir.

Varsayılan: false.
CustomErrorRegularExpression İsteğe bağlı String parametre.

Araç çıkışındaki hata çizgilerini saptamak için kullanılan normal ifadeyi belirtir. Bu, alışılmadık şekilde biçimlendirilmiş çıkış üreten araçlar için kullanışlıdır.

Varsayılan: null (özel işlem yok).
CustomWarningRegularExpression İsteğe bağlı String parametre.

Araç çıkışında uyarı çizgilerini saptamak için kullanılan normal ifadeyi belirtir. Bu, alışılmadık şekilde biçimlendirilmiş çıkış üreten araçlar için kullanışlıdır.

Varsayılan: null (özel işlem yok).
EchoOff İsteğe bağlı Boolean parametre.

ise true, görev genişletilmiş biçimini Command MSBuild günlüğüne yaymaz.

Varsayılan: false.
ExitCode İsteğe bağlı Int32 çıkış salt okunur parametresi.

Yürütülen komut tarafından sağlanan çıkış kodunu belirtir, ancak görev herhangi bir hata günlüğe kaydederse, ancak işlem 0 çıkış koduna (başarılı) ExitCode sahipse -1 olarak ayarlanır.
IgnoreExitCode İsteğe bağlı Boolean parametre.

ise true, görev yürütülen komut tarafından sağlanan çıkış kodunu yoksayar. Aksi takdirde, yürütülen komut sıfır olmayan bir çıkış kodu döndürürse görev döndürür false .

Varsayılan: false.
IgnoreStandardErrorWarningFormat İsteğe bağlı Boolean parametre.

ise false, çıktıda standart hata/uyarı biçimiyle eşleşen satırları seçer ve bunları hata/uyarı olarak günlüğe kaydeder. ise true, bu davranışı devre dışı bırakın.

Varsayılan: false.
Outputs İsteğe bağlı ITaskItem[] çıkış parametresi.

Görevdeki çıkış öğelerini içerir. Görev Exec bunları ayarlamaz. Bunun yerine, projede daha sonra kullanılabilmesi için bunları ayarlamış gibi sağlayabilirsiniz.
StdErrEncoding İsteğe bağlı String çıkış parametresi.

Yakalanan görev standart hata akışının kodlamasını belirtir. Varsayılan, geçerli konsol çıkış kodlamasıdır.
StdOutEncoding İsteğe bağlı String çıkış parametresi.

Yakalanan görev standart çıkış akışının kodlamasını belirtir. Varsayılan, geçerli konsol çıkış kodlamasıdır.
UseUtf8Encoding İsteğe bağlı String parametre.

Yürütülen komutlar için komut satırını işlerken UTF8 kod sayfasının kullanılıp kullanılmayacağını belirtir. Geçerli değerler , Neverveya DetectdeğerleridirAlways. Varsayılan değer olan Detect, UTF8 kod sayfasını yalnızca ANSI olmayan karakterler mevcut olduğunda kullanma anlamına gelir.
WorkingDirectory İsteğe bağlı String parametre.

Komutun çalıştırılacağı dizini belirtir.

Varsayılan: Projenin geçerli çalışma dizini.

ToolTaskExtension parametreleri

Bu görev, sınıfından ToolTaskExtension devralan sınıfından ToolTask devralır ve sınıfından Task devralır. Bu devralma zinciri, görevlerden türetilen görevlere birkaç parametre ekler.

Aşağıdaki tabloda temel sınıfların parametreleri açıklanmaktadır:

Parametre Tanım
EchoOff İsteğe bağlı bool parametre.

olarak trueayarlandığında, bu görev komut satırının stdout'a kopyalanmaması için cmd.exe komut satırına /Q geçirir.
EnvironmentVariables İsteğe bağlı String dizi parametresi.

Ortam değişkeni tanımlarının noktalı virgülle ayrılmış dizisi. Her tanım, eşittir işaretiyle ayrılmış bir ortam değişkeni adı ve değeri belirtmelidir. Bu değişkenler, normal ortam bloğuna ek olarak veya seçmeli olarak geçersiz kılmaya ek olarak oluşturulan yürütülebilir dosyaya geçirilir. Örneğin, Variable1=Value1;Variable2=Value2.
ExitCode İsteğe bağlı Int32 çıkış salt okunur parametresi.

Yürütülen komut tarafından sağlanan çıkış kodunu belirtir. Görev herhangi bir hata günlüğe kaydetmişse ancak işlem 0 çıkış koduna (başarılı) sahipse, bu -1 olarak ayarlanır.
LogStandardErrorAsError İsteğe bağlı bool parametre.

ise true, standart hata akışında alınan tüm iletiler hata olarak günlüğe kaydedilir.
StandardErrorImportance İsteğe bağlı String parametre.

Standart hata akışındaki metnin günlüğe kaydedildiği önem.
StandardOutputImportance İsteğe bağlı String parametre.

Standart çıkış akışındaki metnin günlüğe kaydedildiği önem.
Timeout İsteğe bağlı Int32 parametre.

Görev yürütülebilir dosyasının sonlandırıldığı süreyi milisaniye cinsinden belirtir. Varsayılan değer, zaman aşımı süresi olmadığını belirten değeridir Int.MaxValue. Zaman aşımı milisaniye cinsindendir.
ToolExe İsteğe bağlı string parametre.

Projeler bir ToolName'i geçersiz kılmak için bunu uygulayabilir. Görevler ToolName'i korumak için bunu geçersiz kılabilir.
ToolPath İsteğe bağlı string parametre.

Görevin temel alınan yürütülebilir dosyayı yüklediği konumu belirtir. Bu parametre belirtilmezse, görev MSBuild çalıştıran çerçevenin sürümüne karşılık gelen SDK yükleme yolunu kullanır.
UseCommandProcessor İsteğe bağlı bool parametre.

olarak trueayarlandığında, bu görev komut satırı için bir toplu iş dosyası oluşturur ve komutu doğrudan yürütmek yerine komut işlemcisini kullanarak yürütür.
YieldDuringToolExecution İsteğe bağlı bool parametre.

olarak trueayarlandığında bu görev, görevi yürütülürken düğümü verir.

Açıklamalar

Gerçekleştirmek istediğiniz iş için belirli bir MSBuild görevi kullanılabilir olmadığında bu görev kullanışlıdır. Ancak, Exec daha belirli bir görevin aksine görev, çalıştırdığı aracın veya komutun sonucuna bağlı olarak ek işlem veya koşullu işlemler yapamaz.

Görev, Exec bir işlemi doğrudan çağırmak yerine Windows'da cmd.exe'yi veya başka bir şekilde sh'yi çağırır.

parametreleri IgnoreExitCode ve görevin döndürdüğü falsekoşulları etkiler ve IgnoreStandardErrorWarningFormat bir hata gösterir. Varsayılan ayarlarla (false her ikisi için de) Exec görev, yürütülebilir dosyanın sıfır olmayan bir çıkış kodu varsa veya yürütülebilir dosyanın standart hata akışında bir tanılama iletisi bulunursa bir hata (döndürür false) gösterir. Yalnızca yürütülebilir dosyanın sıfır olmayan bir çıkış kodu döndürdüğünde hata belirtmek istiyorsanızExec, olarak trueayarlayınIgnoreStandardErrorWarningFormat.

Örnek

Aşağıdaki örnek, komutu çalıştırmak için görevi kullanır Exec .

<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
    <ItemGroup>
        <Binaries Include="*.dll;*.exe"/>
    </ItemGroup>

    <Target Name="SetACL">
        <!-- set security on binaries-->
        <Exec Command="echo y| cacls %(Binaries.Identity) /G everyone:R"/>
    </Target>
</Project>

Ayrıca bkz.