MSBuild ayrılmış ve tanınmış özellikleri

MSBuild, proje dosyası ve MSBuild ikili dosyaları hakkındaki bilgileri depolayan önceden tanımlanmış özellikler kümesi sağlar. Bu özellikler, diğer MSBuild özellikleriyle aynı şekilde değerlendirilir. Örneğin, özelliğini kullanmak MSBuildProjectFile için yazın $(MSBuildProjectFile).

MSBuild, ayrılmış ve iyi bilinen özellikleri önceden tanımlayabilmek için aşağıdaki tabloda yer alan değerleri kullanır. Ayrılmış özellikler geçersiz kılınamaz ve gelişmiş senaryolar dışında iyi bilinen özelliklerin çoğu geçersiz kılınmamalıdır.

Ayrılmış ve iyi bilinen özellikler

Bu bölümdeki tabloda MSBuild önceden tanımlanmış özellikleri gösterilmektedir. Tablodaki örnek sütun, konumunda C:\Source\Repos\ConsoleApp1\ConsoleApp1olduğu varsayılan aşağıdaki örnek proje dosyasıyla ilgilidir ve MSBuild özel komut satırı seçenekleri olmadan çağrıldığında bu özelliklerin proje dosyasında erişildiğinde sahip olduğu değerlerin bir örneğini gösterir.

<Project Sdk="Microsoft.NET.Sdk">

  <PropertyGroup>
    <OutputType>Exe</OutputType>
    <TargetFramework>netcoreapp3.1</TargetFramework>
  </PropertyGroup>
</Project>
Özellik Ayrılmış veya iyi bilinen Açıklama Örnek
FrameworkSDKRoot Tanın -mış .NET Framework araçları için kök klasörün yolu. C:\Program Files (x86)\Microsoft SDKs\Windows\v10.0A\
InnerBuildProperty Tanın -mış Çok hedefli derleme boyutunu tanımlayan özellik adını belirtir (yalnızca geçerli derleme bir graf derlemesi olduğunda geçerlidir). TargetFramework
InnerBuildPropertyValues Tanın -mış için InnerBuildProperty olası değerleri tutan özellik adını belirtir (yalnızca geçerli derleme bir graf derlemesi olduğunda geçerlidir). TargetFrameworks
IsGraphBuild Tanın -mış True bu bir graf derlemesiyse; yani, -graphBuild seçenek etkindir. Bu seçenek, MSBuild'in bir proje grafı oluşturup oluşturduğunu gösterir. Graf oluşturmak, form bağımlılıklarına yönelik proje başvurularını tanımlamayı içerir. Bu grafı oluşturmak için, bunlara başvuran projelerden önce, geleneksel MSBuild zamanlamasından farklı proje başvuruları oluşturmaya çalışmak gerekir.
MSBuildAssemblyVersion Ayrılmıştır Projeyi derlemek için kullanılan MSBuild derlemelerinin sürümü. 16.0
MSBuildBinPath Ayrılmıştır Kullanılmakta olan MSBuild ikili dosyalarının bulunduğu klasörün mutlak yolu (örneğin, C:\Windows\Microsoft.Net\Framework\<versionNumber>). MSBuild dizinindeki dosyalara başvurmanız gerekiyorsa bu özellik yararlıdır.

Bu özelliğe son ters eğik çizgiyi eklemeyin.
C:\Program Files (x86)\Microsoft Visual Studio\2019\MSBuild\Current\Bin
MSBuildExtensionsPath Tanın -mış .NET Framework 4'te kullanıma sunulmuştur: ve MSBuildExtensionsPath32varsayılan değerleri MSBuildExtensionsPath arasında fark yoktur. Önceki sürümlerde varsayılan değerinin davranışını etkinleştirmek için ortam değişkenini MSBUILDLEGACYEXTENSIONSPATH null olmayan bir değere MSBuildExtensionsPath ayarlayabilirsiniz.

.NET Framework 3.5 ve önceki sürümlerinde, varsayılan değeri MSBuildExtensionsPath geçerli işlemin bitliğine bağlı olarak \Program Files\ veya \Program Files (x86) klasörünün altındaki MSBuild alt klasörünün yoluna işaret ediyor. Örneğin, 64 bit makinedeki 32 bit işlem için bu özellik \Program Files (x86) klasörüne işaret eder. 64 bit makinede 64 bit işlem için, bu özellik \Program Files klasörüne işaret eder.

Bu özelliğe son ters eğik çizgiyi eklemeyin.

Bu konum, özel hedef dosyaları koymak için kullanışlı bir yerdir. Örneğin, hedef dosyalarınız \Program Files\MSBuild\MyFiles\Northwind.targets konumunda yüklenebilir ve sonra bu XML kodu kullanılarak proje dosyalarına içeri aktarılabilir:

<Import Project="$(MSBuildExtensionsPath)\MyFiles\Northwind.targets"/>
C:\Program Files (x86)\Microsoft Visual Studio\2019\MSBuild
MSBuildExtensionsPath32 Tanın -mış \Program Files veya \Program Files(x86) klasörünün altındaki MSBuild alt klasörünün yolu. Yol her zaman 32 bit makinede 32 bit \Program Files (x86) klasörüne ve 64 bit makinede \Program Files klasörüne işaret eder." Ayrıca MSBuildExtensionsPath bkz. ve MSBuildExtensionsPath64.

Bu özelliğe son ters eğik çizgiyi eklemeyin.
C:\Program Files (x86)\Microsoft Visual Studio\2019\MSBuild
MSBuildExtensionsPath64 Tanın -mış \Program Files klasörünün altındaki MSBuild alt klasörünün yolu. 64 bit makine için bu yol her zaman \Program Files klasörünü gösterir. 32 bit makine için bu yol boş olur. Ayrıca MSBuildExtensionsPath bkz. ve MSBuildExtensionsPath32.

Bu özelliğe son ters eğik çizgiyi eklemeyin.
C:\Program Files\MSBuild
MSBuildFileVersion Ayrılmıştır Projeyi derlemek için kullanılan MSBuild derlemelerinin 4 bölüm sürümü. 16.11.0.30701
MSBuildFrameworkToolsPath Tanın -mış MsBuild'i yürütmekte olan .NET Framework araçlarının yolu, sonunda eğik çizgiyle oluşturulmuştu. C:\WINDOWS\Microsoft.NET\Framework\v4.0.30319\
MSBuildFrameworkToolsPath32 Tanın -mış MsBuild'i yürütmekte olan MSBuild'in birlikte oluşturulduğu çerçeve sürümüne yönelik .NET Framework araçlarının 32 bit sürümünün yolu, sonunda eğik çizgi vardır. C:\WINDOWS\Microsoft.NET\Framework\v4.0.30319\
MSBuildFrameworkToolsPath64 Tanın -mış MsBuild'i yürütmekte olan MSBuild'in oluşturulduğu çerçeve sürümüne yönelik .NET Framework araçlarının 64 bit sürümünün yolu, sonunda eğik çizgi vardır. C:\WINDOWS\Microsoft.NET\Framework64\v4.0.30319\
MSBuildInteractive Ayrılmıştır true MSBuild etkileşimli olarak çalışıyorsa, kullanıcı girişlerine izin verir. Bu ayar komut satırı seçeneği tarafından -interactive denetlenur. false
MSBuildLastTaskResult Ayrılmıştır true önceki görev hatasız tamamlandıysa (uyarı olsa bile) veya false önceki görevin hataları varsa. Genellikle, bir görevde hata oluştuğunda, hata o projede gerçekleşen son şeydir. Bu nedenle, bu özelliğin değeri şu senaryolar dışında hiçbir zaman falsedeğeri değildir:

ContinueOnError- Task öğesinin (MSBuild) özniteliği (veya ) veya trueErrorAndContinueolarak WarnAndContinue ayarlandığında.

- Alt öğe olarak onError öğesi (MSBuild) olduğundaTarget.
true
MSBuildNodeCount Ayrılmıştır Derleme sırasında kullanılan en fazla eşzamanlı işlem sayısı. Bu, komut satırında -maxcpucount için belirttiğiniz değerdir. -maxcpucount değerini bir değer belirtmeden belirttiyseniz bilgisayardaki MSBuildNodeCount işlemci sayısını belirtir. Daha fazla bilgi için bkz . Komut satırı başvurusu ve Paralel olarak birden çok proje oluşturma. 1
MSBuildProgramFiles32 Ayrılmıştır 32 bit program klasörünün konumu; örneğin, C:\Program Files (x86).

Bu özelliğe son ters eğik çizgiyi eklemeyin.
C:\Program Files (x86)
MSBuildProjectDefaultTargets Ayrılmıştır öğesinin özniteliğinde Project belirtilen hedeflerin DefaultTargets tam listesi. Örneğin, aşağıdaki Project öğenin bir MSBuildDefaultTargets özellik değeri A;B;Colabilir:

<Project DefaultTargets="A;B;C" >
Build
MSBuildProjectDirectory Ayrılmıştır Proje dosyasının bulunduğu dizinin mutlak yolu, örneğin C:\Bilgisayarım\Ürünm.

Bu özelliğe son ters eğik çizgiyi eklemeyin.
C:\Source\Repos\ConsoleApp1\ConsoleApp1
MSBuildProjectDirectoryNoRoot Ayrılmıştır Kök sürücü hariç özelliğinin değeri MSBuildProjectDirectory .

Bu özelliğe son ters eğik çizgiyi eklemeyin.
Source\Repos\ConsoleApp1\ConsoleApp1
MSBuildProjectExtension Ayrılmıştır Dönem de dahil olmak üzere proje dosyasının dosya adı uzantısı; örneğin, .proj. .csproj
MSBuildProjectFile Ayrılmıştır Dosya adı uzantısı dahil olmak üzere proje dosyasının tam dosya adı; örneğin, MyApp.proj. ConsoleApp1.csproj
MSBuildProjectFullPath Ayrılmıştır Dosya adı uzantısı dahil olmak üzere proje dosyasının mutlak yolu ve tam dosya adı; örneğin, C:\MyCompany\MyProduct\MyApp.proj. c:\Source\Repos\ConsoleApp1\ConsoleApp1\ConsoleApp1.csproj
MSBuildProjectName Ayrılmıştır Dosya adı uzantısı olmayan proje dosyasının dosya adı; örneğin, MyApp. ConsoleApp1
MSBuildRuntimeType Ayrılmıştır Şu anda yürütülmekte olan çalışma zamanının türü. MSBuild 15'te kullanıma sunulmuştur. MsBuild'in masaüstü .NET Framework Core üzerinde çalıştığını, MSBuild'in .NET Core üzerinde çalıştığını (örneğindotnet build, içinde) veya Mono MSBuild'in Mono üzerinde çalıştığını belirten değer tanımsız (MSBuild 15'den Full önce) olabilir. Full
MSBuildSDKsPath Tanın -mış MSBuild'in SDK'ları bulmak için kullandığı yol. C:\Program Files (x86)\Microsoft Visual Studio\2019\MSBuild\Sdks
MSBuildSemanticVersion Ayrılmıştır Projeyi derlemek için kullanılan MSBuild derlemelerinin tam semver 2.0 sürümü. 16.11.0-preview-21302-05+5e37cc992
MSBuildStartupDirectory Ayrılmıştır MSBuild'in çağrıldığı klasörün mutlak yolu. Bu özelliği kullanarak, her dizinde dirs.proj> dosyaları oluşturmadan< proje ağacında belirli bir noktanın altında her şeyi oluşturabilirsiniz. Bunun yerine, burada gösterildiği gibi yalnızca bir projeniz (örneğin, c:\traversal.proj) vardır:

<Project ...> <ItemGroup> <ProjectFiles Include="$ (MSBuildStartupDirectory) **\*.csproj"/> </ItemGroup> <Target Name="build"> <MSBuild Projects="@(ProjectFiles)"/> </Target> </Project>

Ağacın herhangi bir noktasında oluşturmak için şunu yazın:

msbuild c:\traversal.proj

Bu özelliğe son ters eğik çizgiyi eklemeyin.
c:\Source\Repos\ConsoleApp1
MSBuildThisFile Ayrılmıştır dosyasının dosya adı ve dosya uzantısı bölümü MSBuildThisFileFullPath. ConsoleApp1.csproj
MSBuildThisFileDirectory Ayrılmıştır dizininin MSBuildThisFileFullPathdizin bölümü.

Yola son ters eğik çizgiyi ekleyin.
c:\Source\Repos\ConsoleApp1\ConsoleApp1\
MSBuildThisFileDirectoryNoRoot Ayrılmıştır kök sürücü hariç dizin bölümü MSBuildThisFileFullPath.

Yola son ters eğik çizgiyi ekleyin.
Source\Repos\ConsoleApp1\ConsoleApp1\
MSBuildThisFileExtension Ayrılmıştır dosyasının dosya adı uzantısı bölümü MSBuildThisFileFullPath. .csproj
MSBuildThisFileFullPath Ayrılmıştır Çalışmakta olan hedefi içeren projenin veya hedef dosyasının mutlak yolu.

İpucu: Hedef dosyasında, özgün proje dosyasına göre değil, hedefler dosyasına göre göreli bir yol belirtebilirsiniz.
c:\Source\Repos\ConsoleApp1\ConsoleApp1\ConsoleApp1.csproj
MSBuildThisFileName Ayrılmıştır dosya adı uzantısı olmadan dosyasının dosya adı bölümü MSBuildThisFileFullPath. ConsoleApp1
MSBuildToolsPath Ayrılmıştır değeriyle MSBuildToolsVersionilişkili MSBuild sürümünün yükleme yolu.

Yola son ters eğik çizgiyi eklemeyin.

Bu özellik geçersiz kılınamaz.
C:\Program Files (x86)\Microsoft Visual Studio\2019\MSBuild\Current\Bin\
MSBuildToolsPath32 Tanın -mış değeriyle MSBuildToolsVersionilişkili 32 bit MSBuild sürümünün yükleme yolu.

Yola son ters eğik çizgiyi eklemeyin.

Bu özellik geçersiz kılınamaz.
C:\Program Files (x86)\Microsoft Visual Studio\2019\MSBuild\Current\Bin
MSBuildToolsPath64 Tanın -mış değeriyle MSBuildToolsVersionilişkili 64 bit MSBuild sürümünün yükleme yolu.

Yola son ters eğik çizgiyi eklemeyin.

Bu özellik geçersiz kılınamaz.
C:\Program Files (x86)\Microsoft Visual Studio\2019\MSBuild\Current\Bin\amd64
MSBuildToolsVersion Ayrılmıştır Projeyi derlemek için kullanılan MSBuild Araç Takımı sürümü.

Not: MSBuild Araç Takımı, uygulama oluşturmak için kullanılan görevlerden, hedeflerden ve araçlardan oluşur. Araçlarcsc.exeve vbc.exegibi derleyicileri içerir. Daha fazla bilgi için bkz . Araç Takımı (ToolsVersion)ve Standart ve özel Araç Takımı yapılandırmaları.
Current
MSBuildVersion Ayrılmıştır Projeyi derlemek için kullanılan MSBuild sürümü.

Bu özellik geçersiz kılınamaz, aksi takdirde hata iletisi MSB4004 - The 'MSBuildVersion' property is reserved, and can not be modified. döndürülür.
16.11.0
MSBuildWarningsAsErrors Tanın -mış Hata olarak ele almak için uyarı kodlarının listesi. MSB1234;MSB5678
MSBuildWarningsAsMessages Tanın -mış İleti olarak ele almak için uyarı kodlarının listesi. MSB1234;MSB5678
MSBuildWarningsNotAsErrors Tanın -mış Anahtar diğer tüm uyarıları hatalara yükseltecek şekilde ayarlanmış olsa -warnAsError bile hatalara yükseltilmemesi gereken uyarı kodlarının listesi. Bu doğru değilse hiçbir etkisi olmadığını unutmayın. MSB1234;MSB5678
RoslynTargetsPath Tanın -mış Roslyn derleyicilerinin yolu. C:\Program Files\Microsoft Visual Studio\2019\MSBuild\Current\Bin\Roslyn
SDK35ToolsPath Tanın -mış .NET Framework 3.5 araçlarının yolu.
SDK40ToolsPath Tanın -mış .NET Framework 4.0 araçlarının yolu. C:\Program Files (x86)\Microsoft SDKs\Windows\v10.0A\bin\NETFX 4.8 Tools\
VsInstallRoot Tanın -mış Visual Studio yükleme klasörü. C:\Program Files (x86)\Microsoft Visual Studio\2019
WindowsSDK80Path Tanın -mış
Özellik Ayrılmış veya iyi bilinen Açıklama Örnek
FrameworkSDKRoot Tanın -mış .NET Framework araçları için kök klasörün yolu. C:\Program Files (x86)\Microsoft SDKs\Windows\v10.0A\
InnerBuildProperty Tanın -mış Çok hedefli derleme boyutunu tanımlayan özellik adını belirtir (yalnızca geçerli derleme bir graf derlemesi olduğunda geçerlidir). TargetFramework
InnerBuildPropertyValues Tanın -mış için InnerBuildProperty olası değerleri tutan özellik adını belirtir (yalnızca geçerli derleme bir graf derlemesi olduğunda geçerlidir). TargetFrameworks
IsGraphBuild Tanın -mış True bu bir graf derlemesiyse; yani, -graphBuild seçenek etkindir. Bu seçenek, MSBuild'in bir proje grafı oluşturup oluşturduğunu gösterir. Graf oluşturmak, form bağımlılıklarına yönelik proje başvurularını tanımlamayı içerir. Bu grafı oluşturmak için, bunlara başvuran projelerden önce, geleneksel MSBuild zamanlamasından farklı proje başvuruları oluşturmaya çalışmak gerekir.
MSBuildAssemblyVersion Ayrılmıştır Projeyi derlemek için kullanılan MSBuild derlemelerinin sürümü. 17.0
MSBuildBinPath Ayrılmıştır Kullanılmakta olan MSBuild ikili dosyalarının bulunduğu klasörün mutlak yolu (örneğin, C:\Windows\Microsoft.Net\Framework\<versionNumber>). MSBuild dizinindeki dosyalara başvurmanız gerekiyorsa bu özellik yararlıdır.

Bu özelliğe son ters eğik çizgiyi eklemeyin.
C:\Program Files\Microsoft Visual Studio\2022\MSBuild\Current\Bin\amd64
MSBuildExtensionsPath Tanın -mış .NET Framework 4'te kullanıma sunulmuştur: ve MSBuildExtensionsPath32varsayılan değerleri MSBuildExtensionsPath arasında fark yoktur. Önceki sürümlerde varsayılan değerinin davranışını etkinleştirmek için ortam değişkenini MSBUILDLEGACYEXTENSIONSPATH null olmayan bir değere MSBuildExtensionsPath ayarlayabilirsiniz.

.NET Framework 3.5 ve önceki sürümlerinde, varsayılan değeri MSBuildExtensionsPath geçerli işlemin bitliğine bağlı olarak \Program Files\ veya \Program Files (x86) klasörünün altındaki MSBuild alt klasörünün yoluna işaret ediyor. Örneğin, 64 bit makinedeki 32 bit işlem için bu özellik \Program Files (x86) klasörüne işaret eder. 64 bit makinede 64 bit işlem için, bu özellik \Program Files klasörüne işaret eder.

Bu özelliğe son ters eğik çizgiyi eklemeyin.

Bu konum, özel hedef dosyaları koymak için kullanışlı bir yerdir. Örneğin, hedef dosyalarınız \Program Files\MSBuild\MyFiles\Northwind.targets konumunda yüklenebilir ve sonra bu XML kodu kullanılarak proje dosyalarına içeri aktarılabilir:

<Import Project="$(MSBuildExtensionsPath)\MyFiles\Northwind.targets"/>
C:\Program Files\Microsoft Visual Studio\2022\MSBuild
MSBuildExtensionsPath32 Tanın -mış \Program Files veya \Program Files(x86) klasörünün altındaki MSBuild alt klasörünün yolu. Yol her zaman 32 bit makinede 32 bit \Program Files (x86) klasörüne ve 64 bit makinede \Program Files klasörüne işaret eder." Ayrıca MSBuildExtensionsPath bkz. ve MSBuildExtensionsPath64.

Bu özelliğe son ters eğik çizgiyi eklemeyin.
C:\Program Files\Microsoft Visual Studio\2022\MSBuild
MSBuildExtensionsPath64 Tanın -mış \Program Files klasörünün altındaki MSBuild alt klasörünün yolu. 64 bit makine için bu yol her zaman \Program Files klasörünü gösterir. 32 bit makine için bu yol boş olur. Ayrıca MSBuildExtensionsPath bkz. ve MSBuildExtensionsPath32.

Bu özelliğe son ters eğik çizgiyi eklemeyin.
C:\Program Files\MSBuild
MSBuildFileVersion Ayrılmıştır Projeyi derlemek için kullanılan MSBuild derlemelerinin 4 bölüm sürümü. 17.4.0.46505
MSBuildFrameworkToolsPath Tanın -mış MsBuild'i yürütmekte olan .NET Framework araçlarının yolu, sonunda eğik çizgiyle oluşturulmuştu. C:\WINDOWS\Microsoft.NET\Framework\v4.0.30319\
MSBuildFrameworkToolsPath32 Tanın -mış MsBuild'i yürütmekte olan MSBuild'in birlikte oluşturulduğu çerçeve sürümüne yönelik .NET Framework araçlarının 32 bit sürümünün yolu, sonunda eğik çizgi vardır. C:\WINDOWS\Microsoft.NET\Framework\v4.0.30319\
MSBuildFrameworkToolsPath64 Tanın -mış MsBuild'i yürütmekte olan MSBuild'in oluşturulduğu çerçeve sürümüne yönelik .NET Framework araçlarının 64 bit sürümünün yolu, sonunda eğik çizgi vardır. C:\WINDOWS\Microsoft.NET\Framework64\v4.0.30319\
MSBuildInteractive Ayrılmıştır true MSBuild etkileşimli olarak çalışıyorsa, kullanıcı girişlerine izin verir. Bu ayar komut satırı seçeneği tarafından -interactive denetlenur. false
MSBuildLastTaskResult Ayrılmıştır true önceki görev hatasız tamamlandıysa (uyarı olsa bile) veya false önceki görevin hataları varsa. Genellikle, bir görevde hata oluştuğunda, hata o projede gerçekleşen son şeydir. Bu nedenle, bu özelliğin değeri şu senaryolar dışında hiçbir zaman falsedeğeri değildir:

ContinueOnError- Task öğesinin (MSBuild) özniteliği (veya ) veya trueErrorAndContinueolarak WarnAndContinue ayarlandığında.

- Alt öğe olarak onError öğesi (MSBuild) olduğundaTarget.
true
MSBuildNodeCount Ayrılmıştır Derleme sırasında kullanılan en fazla eşzamanlı işlem sayısı. Bu, komut satırında -maxcpucount için belirttiğiniz değerdir. -maxcpucount değerini bir değer belirtmeden belirttiyseniz bilgisayardaki MSBuildNodeCount işlemci sayısını belirtir. Daha fazla bilgi için bkz . Komut satırı başvurusu ve Paralel olarak birden çok proje oluşturma. 1
MSBuildProgramFiles32 Ayrılmıştır 32 bit program klasörünün konumu; örneğin, C:\Program Files (x86).

Bu özelliğe son ters eğik çizgiyi eklemeyin.
C:\Program Files (x86)
MSBuildProjectDefaultTargets Ayrılmıştır öğesinin özniteliğinde Project belirtilen hedeflerin DefaultTargets tam listesi. Örneğin, aşağıdaki Project öğenin bir MSBuildDefaultTargets özellik değeri A;B;Colabilir:

<Project DefaultTargets="A;B;C" >
Build
MSBuildProjectDirectory Ayrılmıştır Proje dosyasının bulunduğu dizinin mutlak yolu, örneğin C:\Bilgisayarım\Ürünm.

Bu özelliğe son ters eğik çizgiyi eklemeyin.
C:\Source\Repos\ConsoleApp1\ConsoleApp1
MSBuildProjectDirectoryNoRoot Ayrılmıştır Kök sürücü hariç özelliğinin değeri MSBuildProjectDirectory .

Bu özelliğe son ters eğik çizgiyi eklemeyin.
Source\Repos\ConsoleApp1\ConsoleApp1
MSBuildProjectExtension Ayrılmıştır Dönem de dahil olmak üzere proje dosyasının dosya adı uzantısı; örneğin, .proj. .csproj
MSBuildProjectFile Ayrılmıştır Dosya adı uzantısı dahil olmak üzere proje dosyasının tam dosya adı; örneğin, MyApp.proj. ConsoleApp1.csproj
MSBuildProjectFullPath Ayrılmıştır Dosya adı uzantısı dahil olmak üzere proje dosyasının mutlak yolu ve tam dosya adı; örneğin, C:\MyCompany\MyProduct\MyApp.proj. c:\Source\Repos\ConsoleApp1\ConsoleApp1\ConsoleApp1.csproj
MSBuildProjectName Ayrılmıştır Dosya adı uzantısı olmayan proje dosyasının dosya adı; örneğin, MyApp. ConsoleApp1
MSBuildRuntimeType Ayrılmıştır Şu anda yürütülmekte olan çalışma zamanının türü. MSBuild 15'te kullanıma sunulmuştur. MsBuild'in masaüstü .NET Framework Core üzerinde çalıştığını, MSBuild'in .NET Core üzerinde çalıştığını (örneğindotnet build, içinde) veya Mono MSBuild'in Mono üzerinde çalıştığını belirten değer tanımsız (MSBuild 15'den Full önce) olabilir. Full
MSBuildStartupDirectory Ayrılmıştır MSBuild'in çağrıldığı klasörün mutlak yolu. Bu özelliği kullanarak, her dizinde dirs.proj> dosyaları oluşturmadan< proje ağacında belirli bir noktanın altında her şeyi oluşturabilirsiniz. Bunun yerine, burada gösterildiği gibi yalnızca bir projeniz (örneğin, c:\traversal.proj) vardır:

<Project ...> <ItemGroup> <ProjectFiles Include="$ (MSBuildStartupDirectory) **\*.csproj"/> </ItemGroup> <Target Name="build"> <MSBuild Projects="@(ProjectFiles)"/> </Target> </Project>

Ağacın herhangi bir noktasında oluşturmak için şunu yazın:

msbuild c:\traversal.proj

Bu özelliğe son ters eğik çizgiyi eklemeyin.
c:\Source\Repos\ConsoleApp1
MSBuildThisFile Ayrılmıştır dosyasının dosya adı ve dosya uzantısı bölümü MSBuildThisFileFullPath. ConsoleApp1.csproj
MSBuildThisFileDirectory Ayrılmıştır dizininin MSBuildThisFileFullPathdizin bölümü.

Yola son ters eğik çizgiyi ekleyin.
c:\Source\Repos\ConsoleApp1\ConsoleApp1\
MSBuildThisFileDirectoryNoRoot Ayrılmıştır kök sürücü hariç dizin bölümü MSBuildThisFileFullPath.

Yola son ters eğik çizgiyi ekleyin.
Source\Repos\ConsoleApp1\ConsoleApp1\
MSBuildThisFileExtension Ayrılmıştır dosyasının dosya adı uzantısı bölümü MSBuildThisFileFullPath. .csproj
MSBuildThisFileFullPath Ayrılmıştır Çalışmakta olan hedefi içeren projenin veya hedef dosyasının mutlak yolu.

İpucu: Hedef dosyasında, özgün proje dosyasına göre değil, hedefler dosyasına göre göreli bir yol belirtebilirsiniz.
c:\Source\Repos\ConsoleApp1\ConsoleApp1\ConsoleApp1.csproj
MSBuildThisFileName Ayrılmıştır dosya adı uzantısı olmadan dosyasının dosya adı bölümü MSBuildThisFileFullPath. ConsoleApp1
MSBuildToolsPath Ayrılmıştır değeriyle MSBuildToolsVersionilişkili MSBuild sürümünün yükleme yolu.

Yola son ters eğik çizgiyi eklemeyin.

Bu özellik geçersiz kılınamaz.
C:\Program Files\Microsoft Visual Studio\2022\MSBuild\Current\Bin\amd64
MSBuildToolsPath32 Tanın -mış değeriyle MSBuildToolsVersionilişkili 32 bit MSBuild sürümünün yükleme yolu.

Yola son ters eğik çizgiyi eklemeyin.

Bu özellik geçersiz kılınamaz.
C:\Program Files\Microsoft Visual Studio\2022\MSBuild\Current\Bin
MSBuildToolsPath64 Tanın -mış değeriyle MSBuildToolsVersionilişkili 64 bit MSBuild sürümünün yükleme yolu.

Yola son ters eğik çizgiyi eklemeyin.

Bu özellik geçersiz kılınamaz.
C:\Program Files\Microsoft Visual Studio\2022\MSBuild\Current\Bin\amd64
MSBuildToolsVersion Ayrılmıştır Projeyi derlemek için kullanılan MSBuild Araç Takımı sürümü.

Not: MSBuild Araç Takımı, uygulama oluşturmak için kullanılan görevlerden, hedeflerden ve araçlardan oluşur. Araçlarcsc.exeve vbc.exegibi derleyicileri içerir. Daha fazla bilgi için bkz . Araç Takımı (ToolsVersion)ve Standart ve özel Araç Takımı yapılandırmaları.
Current
MSBuildSDKsPath Tanın -mış MSBuild'in SDK'ları bulmak için kullandığı yol. C:\Program Files\Microsoft Visual Studio\2022\MSBuild\Sdks
MSBuildSemanticVersion Ayrılmıştır Projeyi derlemek için kullanılan MSBuild derlemelerinin tam semver 2.0 sürümü. 17.4.0-preview-22465-05+6033e4c95
MSBuildVersion Ayrılmıştır Projeyi derlemek için kullanılan MSBuild sürümü.

Bu özellik geçersiz kılınamaz, aksi takdirde hata iletisi MSB4004 - The 'MSBuildVersion' property is reserved, and can not be modified. döndürülür.
17.4.0
MSBuildWarningsAsErrors Tanın -mış Hata olarak ele almak için uyarı kodlarının listesi. MSB1234;MSB5678
MSBuildWarningsAsMessages Tanın -mış İleti olarak ele almak için uyarı kodlarının listesi. MSB1234;MSB5678
MSBuildWarningsNotAsErrors Tanın -mış Anahtar diğer tüm uyarıları hatalara yükseltecek şekilde ayarlanmış olsa -warnAsError bile hatalara yükseltilmemesi gereken uyarı kodlarının listesi. Bu doğru değilse hiçbir etkisi olmadığını unutmayın. MSB1234;MSB5678
RoslynTargetsPath Tanın -mış Roslyn derleyicileri için hedeflerin yolu. C:\Program Files\Microsoft Visual Studio\2022\MSBuild\Current\Bin\Roslyn
SDK35ToolsPath Tanın -mış .NET Framework 3.5 araçlarının yolu.
SDK40ToolsPath Tanın -mış .NET Framework 4.0 araçlarının yolu. C:\Program Files (x86)\Microsoft SDKs\Windows\v10.0A\bin\NETFX 4.8 Tools\
VsInstallRoot Tanın -mış Visual Studio yükleme klasörü. C:\Program Files\Microsoft Visual Studio\2022
WindowsSDK80Path Tanın -mış Windows 8 SDK yolu.

C++ projelerine özgü özellikler

Aşağıdaki özellikler, çeşitli C++ araç takımı sürümleri ve hedef işletim sistemleri için ve .targets dosyaları gibi .props C++ MSBuild içeri aktarma dosyalarının yolunu temsil ediyor. Bu klasörlerdeki dosyalar C++ derleme altyapısını temsil etmekte ve MSBuild ile herhangi bir C++ projesi oluşturmak için gereklidir.

Özellik Ayrılmış veya iyi bilinen Açıklama Örnek
AndroidTargetsPath Tanın -mış Android derlemeleri için C++ MSBuild içeri aktarma dosyalarının yolu. C:\Program Files\Microsoft Visual Studio\2022\MSBuild\Microsoft\MDD\Android\V150\
iOSTargetsPath Tanın -mış iOS derlemeleri için C++ MSBuild içeri aktarma dosyalarının yolu. C:\Program Files\Microsoft Visual Studio\2022\Preview\MSBuild\Microsoft\MDD\iOS\V150\
VCTargetsPath Tanın -mış C++ derleme sistemini destekleyen C++ MSBuild dosyalarının yolu. C:\Program Files\Microsoft Visual Studio\2022\MSBuild\Microsoft\VC\v170\
VCTargetsPath10 Tanın -mış Visual Studio 2010 araç takımını destekleyen C++ MSBuild dosyalarının yolu. C:\Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\
VCTargetsPath11 Tanın -mış Visual Studio 2012 (V110) araç takımı için MSBuild içeri aktarma dosyalarının yolu. C:\Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\V110\
VCTargetsPath12 Tanın -mış Visual Studio 2013 (V120) araç takımı için MSBuild içeri aktarma dosyalarının yolu. C:\Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\V120\
VCTargetsPath14 Tanın -mış Visual Studio 2015 (V140) araç takımı için MSBuild içeri aktarma dosyalarının yolu. C:\Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\V140\

MSBuild öğeleriyle çakışan adlar

Yukarıdakilere ek olarak, MSBuild dil öğelerine karşılık gelen adlar kullanıcı tanımlı özellikler, öğeler veya öğe meta verileri için kullanılamaz:

  • VisualStudioProject
  • Hedef
  • Propertygroup
  • Çıktı
  • Itemgroup
  • Usingtask
  • ProjectExtensions
  • Onerror
  • ImportGroup
  • Seçin:
  • Ne zaman
  • Aksi takdir -de

Ayrıca bkz.