Wspólne właściwości projektów MSBuild

W poniższej tabeli wymieniono często używane właściwości zdefiniowane w plikach projektu programu Visual Studio lub zawarte w plikach docelowych dostępnych w programie MSBuild.

Pliki projektu w programie Visual Studio (csproj, vbproj, .vcxproj i inne) zawierają kod XML programu MSBuild uruchamiany podczas tworzenia projektu przy użyciu środowiska IDE. Projekty zazwyczaj importują jeden lub więcej plików docelowych w celu zdefiniowania procesu kompilacji. Aby uzyskać więcej informacji, zobacz pliki .targets programu MSBuild.

Podczas ustawiania wartości właściwości należy pamiętać, że typowe właściwości mogą być ustawiane, resetowane lub używane w wielu importowanych plikach. W związku z tym należy ustawić właściwość w pliku projektu w pliku Directory.Build.props lub w innym zaimportowanym pliku. Jeśli ustawiasz właściwość gdzieś i nie otrzymujesz oczekiwanego wyniku, rozważ, gdzie i w jaki sposób właściwość jest zmieniana lub używana we wszystkich plikach importowanych przez projekt, w tym importach, które są dodawane niejawnie podczas korzystania z atrybutu Sdk . Zobacz Wybieranie między dodawaniem właściwości do pliku .props lub .targets. Wstępne przetwarzanie może pomóc w tym (zobacz /preprocess opcję wiersza polecenia lub /pp w dokumentacji wiersza polecenia MSBuild).

Lista typowych właściwości i parametrów

Nazwa właściwości lub parametru Typy projektu opis
AdditionalLibPaths .NET Określa dodatkowe foldery, w których kompilatory powinny szukać zestawów odwołań.
Tryby dodawania .NET Powoduje, że kompilator udostępnia wszystkie informacje o typie z określonych plików kompilowaniu projektu. Ta właściwość jest równoważna przełącznikowi kompilatora /addModules .
ALToolPath .NET Ścieżka do AL.exe. Ta właściwość zastępuje bieżącą wersję AL.exe , aby umożliwić korzystanie z innej wersji.
ApplicationIcon .NET Plik ikony .ico , który ma być przekazywany do kompilatora na potrzeby osadzania jako ikona Win32. Właściwość jest równoważna przełącznikowi kompilatora /win32icon .
ApplicationManifest wszystkie Określa ścieżkę pliku, który jest używany do generowania zewnętrznych informacji o manifeście kontroli konta użytkownika (UAC). Dotyczy tylko projektów programu Visual Studio przeznaczonych dla systemu Windows Vista.

W większości przypadków manifest jest osadzony. Jeśli jednak używasz bezpłatnego wdrożenia com lub ClickOnce rejestracji, manifest może być plikiem zewnętrznym zainstalowanym razem z zestawami aplikacji. Aby uzyskać więcej informacji, zobacz właściwość NoWin32Manifest w tym artykule.
AssemblyOriginatorKeyFile .NET Określa plik używany do podpisania zestawu (.snk lub .pfx) i jest przekazywany do zadania ResolveKeySource w celu wygenerowania rzeczywistego klucza użytego do podpisania zestawu.
AssemblySearchPaths .NET Lista lokalizacji do wyszukania podczas rozpoznawania zestawów odwołań w czasie kompilacji. Kolejność wyświetlania ścieżek na tej liście jest znacząca, ponieważ wymienione wcześniej ścieżki mają pierwszeństwo przed późniejszymi wpisami.
Assemblyname .NET Nazwa końcowego zestawu wyjściowego po skompiluj projekt.
Nazwa właściwości lub parametru Typy projektu opis
Baseaddress .NET Określa adres podstawowy głównego zestawu wyjściowego. Ta właściwość jest równoważna przełącznikowi kompilatora /baseaddress .
BaseIntermediateOutputPath wszystkie Folder najwyższego poziomu, w którym są tworzone wszystkie foldery wyjściowe pośrednie specyficzne dla konfiguracji. Domyślna wartość to obj\. Poniższy kod jest przykładem: <BaseIntermediateOutputPath>c:\xyz\obj\</BaseIntermediateOutputPath>
BaseOutputPath wszystkie Określa ścieżkę podstawową dla pliku wyjściowego. Jeśli jest ustawiona, program MSBuild używa polecenia OutputPath = $(BaseOutputPath)\$(Configuration)\. Przykładowa składnia: <BaseOutputPath>c:\xyz\bin\</BaseOutputPath>
Buildinparallel wszystkie Wartość logiczna wskazująca, czy odwołania do projektu są kompilowane lub czyszczone równolegle, gdy jest używany program MSBuild z wieloma procami. Wartość domyślna to true, co oznacza, że projekty będą tworzone równolegle, jeśli system ma wiele rdzeni lub procesorów.
BuildProjectReferences wszystkie Wartość logiczna wskazująca, czy odwołania do projektu są kompilowane przez program MSBuild. Automatycznie ustaw wartość w false przypadku kompilowania projektu w zintegrowanym środowisku projektowym (IDE) programu Visual Studio, true jeśli w przeciwnym razie. -p:BuildProjectReferences=false Można określić w wierszu polecenia, aby uniknąć sprawdzania, czy przywołyne projekty są aktualne.
Nazwa właściwości lub parametru Typy projektu opis
CleanFile wszystkie Nazwa pliku, który będzie używany jako "czysta pamięć podręczna". Czysta pamięć podręczna to lista wygenerowanych plików do usunięcia podczas operacji czyszczenia. Plik jest umieszczany w pośredniej ścieżce wyjściowej przez proces kompilacji.

Ta właściwość określa tylko nazwy plików, które nie mają informacji o ścieżce.
Codepage .NET Określa stronę kodową, która ma być używana dla wszystkich plików kodu źródłowego w kompilacji. Ta właściwość jest równoważna przełącznikowi kompilatora /codepage .
CompilerResponseFile .NET Opcjonalny plik odpowiedzi, który można przekazać do zadań kompilatora.
Konfigurowanie wszystkie Konfiguracja, którą tworzysz, ogólnie Debug lub Release, ale można skonfigurować na poziomie rozwiązania i projektu.
CscToolPath C# Ścieżka csc.exe— kompilator języka C#.
CustomAfterMicrosoftCommonTargets wszystkie Nazwa pliku projektu lub pliku docelowej, który ma zostać zaimportowany automatycznie po zaimportowaniu wspólnych obiektów docelowych.
CustomBeforeMicrosoftCommonTargets wszystkie Nazwa pliku projektu lub pliku obiektów docelowych, który ma zostać zaimportowany automatycznie przed zaimportowanym wspólnymi elementami docelowymi.
Nazwa właściwości lub parametru Typy projektu opis
DebugSymbols wszystkie Wartość logiczna wskazująca, czy symbole są generowane przez kompilację.

Ustawienie -p:DebugSymbols=false w wierszu polecenia wyłącza generowanie plików symboli bazy danych programu (.pdb).
Typ debugowania wszystkie Definiuje poziom informacji debugowania, które chcesz wygenerować. Prawidłowe wartości to "full", "pdbonly", "portable", "embedded" i "none".
DefineConstants .NET Definiuje stałe kompilatora warunkowego. Pary symboli/wartości są rozdzielane średnikami i określane przy użyciu składni zależnej od języka:

C#: symbol1; symbol2

Visual Basic: symbol1 = value1, symbol2 = value2

Właściwość jest równoważna przełącznikowi kompilatora /define .
DefineDebug wszystkie Wartość logiczna wskazująca, czy chcesz zdefiniować stałą DEBUG.
DefineTrace wszystkie Wartość logiczna wskazująca, czy chcesz zdefiniować stałą TRACE.
Delaysign .NET Wartość logiczna wskazująca, czy chcesz opóźnić podpisywanie zestawu, a nie pełnego podpisywania.
Deterministyczny .NET Wartość logiczna wskazująca, czy kompilator powinien produkować identyczne zestawy dla identycznych danych wejściowych. Ten parametr odpowiada /deterministic przełącznikowi kompilatorów.
DirectoryBuildPropsPath wszystkie Określa ścieżkę do pliku Directory.Build.props ; jeśli została zdefiniowana, ta właściwość zastępuje domyślny algorytm wyszukiwania. Zobacz Dostosowywanie kompilacji.
DirectoryBuildTargetsPath wszystkie Określa ścieżkę do pliku Directory.Build.targets ; jeśli jest zdefiniowana, ta właściwość zastępuje domyślny algorytm wyszukiwania. Zobacz Dostosowywanie kompilacji.
DisableFastUpToDateCheck wszystkie Wartość logiczna, która ma zastosowanie tylko do programu Visual Studio. Menedżer kompilacji programu Visual Studio używa procesu o nazwie FastUpToDateCheck, aby określić, czy projekt musi zostać ponownie skompilowany, aby był aktualny. Ten proces jest szybszy niż używanie programu MSBuild do określenia tego. Ustawienie właściwości DisableFastUpToDateCheck w celu true obejścia menedżera kompilacji programu Visual Studio i wymuszenia użycia programu MSBuild w celu określenia, czy projekt jest aktualny.
DocumentationFile .NET Nazwa pliku wygenerowanego jako plik dokumentacji XML. Ta nazwa zawiera tylko nazwę pliku i nie zawiera informacji o ścieżce.
Nazwa właściwości lub parametru Typy projektu opis
Raport o błędach .NET Określa, jak zadanie kompilatora powinno zgłaszać wewnętrzne błędy kompilatora. Prawidłowe wartości to "prompt", "send" lub "none". Ta właściwość jest równoważna przełącznikowi kompilatora /errorreport .
ExcludeDeploymentUrl .NET Zadanie GenerateDeploymentManifest dodaje tag deploymentProvider do manifestu wdrożenia, jeśli plik projektu zawiera dowolny z następujących elementów:

- UpdateUrl
- InstallUrl
- PublishUrl

Przy użyciu polecenia ExcludeDeploymentUrl można jednak uniemożliwić dodanie tagu deploymentProvider do manifestu wdrożenia, nawet jeśli określono którykolwiek z powyższych adresów URL. W tym celu dodaj następującą właściwość do pliku projektu:

<ExcludeDeploymentUrl>true</ExcludeDeploymentUrl>

Uwaga: element ExcludeDeploymentUrl nie jest uwidaczniony w środowisku IDE programu Visual Studio i można go ustawić tylko ręcznie edytując plik projektu. Ustawienie tej właściwości nie ma wpływu na publikowanie w programie Visual Studio; oznacza to, że tag deploymentProvider będzie nadal dodawany do adresu URL określonego przez publishUrl.
FileAlignment .NET Określa w bajtach, gdzie wyrównywać sekcje pliku wyjściowego. Prawidłowe wartości to 512, 1024, 2048, 4096, 8192. Ta właściwość jest równoważna przełącznikowi kompilatora /filealignment .
FrameworkPathOverride Visual Basic Określa lokalizację mscorlib.dll i microsoft.visualbasic.dll. Ten parametr jest odpowiednikiem /sdkpath przełącznika kompilatora vbc.exe .
GenerateDocumentation .NET Parametr logiczny wskazujący, czy dokumentacja jest generowana przez kompilację. Jeśli truekompilacja generuje informacje o dokumentacji i umieszcza je w pliku .xml wraz z nazwą pliku wykonywalnego lub biblioteki utworzonej przez zadanie kompilacji.
GenerateFullPaths C# Wygeneruj pełne ścieżki dla nazw plików w danych wyjściowych przy użyciu opcji -fullpaths kompilatora.
GenerateSerializationAssemblies .NET Wskazuje, czy zestawy serializacji XML powinny być generowane przez SGen.exe, które można ustawić na włączone, automatyczne lub wyłączone. Ta właściwość jest używana w przypadku zestawów przeznaczonych tylko dla platformy .NET Framework. Aby wygenerować zestawy serializacji XML dla zestawów .NET Standard lub .NET Core, należy odwołać się do pakietu NuGet Microsoft.XmlSerializer.Generator .
Nazwa właściwości lub parametru Typy projektu opis
ImportDirectoryBuildProps wszystkie Wartość logiczna wskazująca, czy zaimportować plik Directory.Build.props . Zobacz Dostosowywanie kompilacji.
ImportDirectoryBuildTargets wszystkie Wartość logiczna wskazująca, czy zaimportować plik Directory.Build.targets . Zobacz Dostosowywanie kompilacji.
IntermediateOutputPath wszystkie Pełna ścieżka danych wyjściowych pośrednich pochodząca z BaseIntermediateOutputPathparametru , jeśli nie określono żadnej ścieżki. Na przykład obj\debug\.
KeyContainerName wszystkie Nazwa kontenera klucza o silnej nazwie.
KeyOriginatorFile wszystkie Nazwa pliku klucza silnej nazwy.
ModuleAssemblyName .NET Nazwa zestawu, do którego ma zostać włączony skompilowany moduł. Właściwość jest równoważna przełącznikowi kompilatora /moduleassemblyname .
MSBuildProjectExtensionsPath wszystkie Określa ścieżkę, w której znajdują się rozszerzenia projektu. Domyślnie przyjmuje tę samą wartość co BaseIntermediateOutputPath.
MSBuildTreatWarningsAsErrors wszystkie Wartość logiczna, która nakazuje programowi MSBuild traktowanie wszystkich ostrzeżeń jako błędów, chyba że zostaną pominięte.
MSBuildWarningsAsErrors wszystkie Określa listę kodów ostrzegawczych, które mają być traktowane jako błędy. Oddziel wiele ostrzeżeń średnikami. Jeśli używasz właściwości WarningsAsErrorszestawu .NET SDK, MSBuildWarningsAsErrors wartość domyślna to WarningsAsErrors.
MSBuildWarningsAsMessages wszystkie Określa listę kodów ostrzegawczych, które mają być pomijane, traktując je jako komunikaty o niskiej ważności. Oddziel wiele ostrzeżeń średnikami. Należy pamiętać, że niektóre ostrzeżenia emitowane przez program MSBuild nie mogą być pomijane przy użyciu tej właściwości; aby je pominąć, użyj przełącznika -warnAsMessagewiersza polecenia . Jeśli używasz właściwości NoWarnzestawu .NET SDK, MSBuildWarningsAsMessages wartość domyślna to NoWarn.
Nazwa właściwości lub parametru Typy projektu opis
NoLogo wszystkie Wartość logiczna wskazująca, czy logo kompilatora ma być wyłączone. Ta właściwość jest równoważna przełącznikowi kompilatora /nologo .
NoStdLib .NET Wartość logiczna wskazująca, czy uniknąć odwoływania się do standardowej biblioteki (mscorlib.dll). Domyślna wartość to false.
NoVBRuntimeReference Visual Basic Wartość logiczna wskazująca, czy środowisko uruchomieniowe Visual Basic (Microsoft.VisualBasic.dll) powinno zostać uwzględnione jako odwołanie w projekcie.
NoWarn .NET Pomija określone ostrzeżenia. Należy określić tylko część liczbową identyfikatora ostrzeżenia. Wiele ostrzeżeń jest rozdzielonych średnikami. Ten parametr odpowiada /nowarn przełącznikowi kompilatorów.
NoWin32Manifest .NET Wartość logiczna wskazująca, czy informacje o manifeście kontroli konta użytkownika (UAC) zostaną osadzone w pliku wykonywalnym aplikacji. Dotyczy tylko projektów programu Visual Studio przeznaczonych dla systemu Windows Vista. W projektach wdrożonych przy użyciu technologii ClickOnce i Com bez rejestracji ten element jest ignorowany. False (wartość domyślna) określa, że informacje o manifeście kontroli konta użytkownika (UAC) mają być osadzone w pliku wykonywalny aplikacji. True określa, że informacje o manifeście kontroli dostępu użytkownika nie są osadzone.

Ta właściwość ma zastosowanie tylko do projektów programu Visual Studio przeznaczonych dla systemu Windows Vista. W projektach wdrożonych przy użyciu technologii ClickOnce i Com bez rejestracji ta właściwość jest ignorowana.

Należy dodać program NoWin32Manifest tylko wtedy, gdy program Visual Studio nie ma osadzić żadnych informacji o manifeście w pliku wykonywalny aplikacji; ten proces jest nazywany wirtualizacją. Aby użyć wirtualizacji, ustaw <ApplicationManifest> w połączeniu z <NoWin32Manifest> następującymi:

— W przypadku projektów Visual Basic usuń <ApplicationManifest> węzeł. (W projektach Visual Basic jest ignorowany, <NoWin32Manifest> gdy <ApplicationManifest> węzeł istnieje).
- W przypadku projektów języka C# ustaw wartość <ApplicationManifest>False i <NoWin32Manifest> na True. (W projektach <ApplicationManifest> języka C# przesłonięcia są zastępowane <NoWin32Manifest>).
Ta właściwość jest równoważna przełącznikowi /nowin32manifest kompilatora vbc.exe.
Optymalizacja .NET Wartość logiczna ustawiona na truewartość , umożliwia optymalizacje kompilatora. Ta właściwość jest równoważna przełącznikowi kompilatora /optimize .
OpcjaCompare Visualbasic Określa sposób wykonywania porównań ciągów. Prawidłowe wartości to "binary" lub "text". Ta właściwość jest równoważna przełącznikowi /optioncompare kompilatora vbc.exe.
OptionExplicit Visual Basic Wartość logiczna ustawiona na true, wymaga jawnej deklaracji zmiennych w kodzie źródłowym. Ta właściwość jest równoważna przełącznikowi kompilatora /optionexplicit .
OptionInfer Visual Basic Wartość logiczna ustawiona na true, umożliwia wnioskowanie typów zmiennych. Ta właściwość jest równoważna przełącznikowi kompilatora /optioninfer .
OptionStrict Visual Basic Wartość logiczna ustawiona na true, powoduje, że zadanie kompilacji wymusza ścisłe semantyki typów w celu ograniczenia niejawnych konwersji typów. Ta właściwość jest równoważna /optionstrict przełącznikowi kompilatora vbc.exe .
Outdir wszystkie Wskazuje końcową lokalizację danych wyjściowych dla projektu lub rozwiązania. Podczas tworzenia rozwiązania można użyć narzędzia OutDir do zbierania wielu danych wyjściowych projektu w jednej lokalizacji. Ponadto funkcja OutDir jest dołączona do obiektów AssemblySearchPaths używanych do rozpoznawania odwołań. Na przykład bin\Debug.
Outputpath wszystkie Określa ścieżkę do katalogu wyjściowego względem katalogu projektu, na przykład bin\Debug lub bin\Debug\$(Platforma) w kompilacjach innych niż AnyCPU.
Outputtype wszystkie Określa format pliku wyjściowego. Ten parametr może mieć jedną z następujących wartości:

-Biblioteki. Tworzy bibliotekę kodu. (Wartość domyślna).
-Exe. Tworzy aplikację konsolową.
-Moduł. Tworzy moduł.
-Winexe. Tworzy program oparty na systemie Windows.

W przypadku języka C# i Visual Basic ta właściwość jest równoważna przełącznikowi /target . Typ danych wyjściowych może być automatycznie zastępowany przez wnioskowanie. Zobacz OutputType set to WinExe for WPF and WinForms apps (Typ danych wyjściowych ustawionych na WinExe dla aplikacji WPF i WinForms). Wyłącz wnioskowanie, ustawiając wartość DisableWinExeOutputInferencetrue.
ZastąpReadOnlyFiles wszystkie Wartość logiczna wskazująca, czy chcesz umożliwić kompilacji zastępowanie plików tylko do odczytu, czy wyzwalanie błędu.
Nazwa właściwości lub parametru Typy projektu opis
PathMap .NET Określa sposób mapowania ścieżek fizycznych na nazwy ścieżek źródłowych wyjściowych przez kompilator. Ta właściwość jest równoważna /pathmap przełącznikowi kompilatorów.
Plik PDB .NET Nazwa pliku .pdb , który emitujesz. Ta właściwość jest równoważna /pdb przełącznikowi kompilatora csc.exe .
Platforma wszystkie System operacyjny, dla którego tworzysz. Przykłady kompilacji programu .NET Framework to "Dowolne procesory CPU", "x86" i "x64".
Processorarchitecture .NET Architektura procesora używana podczas rozwiązywania odwołań do zestawów. Prawidłowe wartości to "msil", "x86", "amd64" lub "ia64".
ProduceOnlyReferenceAssembly .NET Wartość logiczna, która nakazuje kompilatorowi emitowanie tylko zestawu referencyjnego, a nie skompilowanego kodu. Nie można używać w połączeniu z ProduceReferenceAssembly. Ta właściwość odpowiada /refonly przełącznikowi kompilatorów vbc.exe i csc.exe .
ProduceReferenceAssembly .NET Wartość logiczna, która po ustawieniu true umożliwia produkcję zestawów odwołań dla bieżącego zestawu. Deterministic powinna być true używana w przypadku korzystania z tej funkcji. Ta właściwość odpowiada /refout przełącznikowi kompilatorów vbc.exe i csc.exe .
RegisterAssemblyMSBuildArchitecture Tylko Windows Określa domyślną architekturę, dla której zarejestrowano zarządzaną bibliotekę DLL. Ta właściwość jest przydatna, ponieważ com używa rejestru systemu Windows do przechowywania rejestracji w gałęziach specyficznych dla architektury. Na przykład w systemie Windows zestaw zarządzany AnyCPU może mieć jego typy zarejestrowane w 64-bitowej gałęzi i/lub w 32-bitowej gałęzi (WoW), a kompilacja używa tej właściwości do określenia, która gałąź rejestru specyficzna dla architektury ma być używana. Prawidłowe wartości obejmują "x86", "x64" i "ARM64".
RegisterForCOMInterop Tylko Windows Wskazuje, że aplikacja zarządzana uwidacznia obiekt COM (otoka wywoływana com). Zobacz Stronę kompilacji — sekcja Dane wyjściowe. To ustawienie ma wpływ tylko na maszynę, na której kompiluje się projekt. Jeśli wdrażasz na innych maszynach, wywołaj regasm.exe , aby zarejestrować zestaw na maszynie docelowej.
RemoveIntegerChecks Visual Basic Wartość logiczna wskazująca, czy wyłączyć sprawdzanie błędów przepełnienia całkowitego. Domyślna wartość to false. Ta właściwość jest równoważna /removeintchecks przełącznikowi kompilatora vbc.exe .
Rootnamespace wszystkie Główna przestrzeń nazw używana podczas nazywania zasobu osadzonego. Ta przestrzeń nazw jest częścią osadzonej nazwy manifestu zasobu.
Nazwa właściwości lub parametru Typy projektu opis
Satellite_AlgorithmId .NET Identyfikator algorytmu tworzenia skrótów AL.exe używany podczas tworzenia zestawów satelickich.
Satellite_BaseAddress .NET Adres podstawowy używany podczas tworzenia zestawów satelitarnych specyficznych dla kultury przy użyciu CreateSatelliteAssemblies obiektu docelowego.
Satellite_CompanyName .NET Nazwa firmy do przekazania do AL.exe podczas generowania zestawów satelitarnych.
Satellite_Configuration .NET Nazwa konfiguracji, która ma być przekazywana do AL.exe podczas generowania zestawu satelitarnego.
Satellite_Description .NET Tekst opisu przekazywany do AL.exe podczas generowania zestawu satelitarnego.
Satellite_EvidenceFile .NET Osadza określony plik w zestawie satelitarnym o nazwie zasobu "Security.Evidence".
Satellite_FileVersion .NET Określa ciąg pola Wersja pliku w zestawie satelitarnym.
Satellite_Flags .NET Określa wartość pola Flags w zestawie satelitarnym.
Satellite_GenerateFullPaths .NET Powoduje, że zadanie kompilacji używa ścieżek bezwzględnych dla wszystkich plików zgłoszonych w komunikacie o błędzie.
Satellite_LinkResource .NET Łączy określone pliki zasobów z zestawem satelitarnym.
Satellite_MainEntryPoint .NET Określa w pełni kwalifikowaną nazwę (czyli class.method) metody, która ma być używana jako punkt wejścia, gdy moduł jest konwertowany na plik wykonywalny podczas generowania zestawu satelitarnego.
Satellite_ProductName .NET Określa ciąg pola Product w zestawie satelitarnym.
Satellite_ProductVersion .NET Określa ciąg pola ProductVersion w zestawie satelitarnym.
Satellite_TargetType .NET Określa format pliku wyjściowego zestawu satelitarnego jako "biblioteka", "exe" lub "win". Wartość domyślna to "biblioteka".
Satellite_Title .NET Określa ciąg pola Title w zestawie satelitarnym.
Satellite_Trademark .NET Określa ciąg dla pola Znak towarowy w zestawie satelitarnym.
Satellite_Version .NET Określa informacje o wersji zestawu satelitarnego.
Satellite_Win32Icon .NET Wstawia plik ikony .ico w zestawie satelitarnym.
Satellite_Win32Resource .NET Wstawia zasób Win32 (plik res ) do zestawu satelitarnego.
SGenToolPath .NET Opcjonalna ścieżka narzędzia wskazująca, gdzie uzyskać SGen.exe po zastąpieniu bieżącej wersji SGen.exe .
Nazwa właściwości lub parametru Typy projektu opis
SGenUseProxyTypes .NET Wartość logiczna wskazująca, czy typy serwerów proxy powinny być generowane przez SGen.exe. Ma to zastosowanie tylko wtedy, gdy ustawienie GenerateSerializationAssemblies jest włączone.

Obiekt docelowy SGen używa tej właściwości do ustawienia flagi UseProxyTypes. Ta właściwość jest domyślnie ustawiona na true i nie ma interfejsu użytkownika do zmiany. Aby wygenerować zestaw serializacji dla typów nienależących do sieci Web, dodaj tę właściwość do pliku projektu i ustaw ją na wartość false przed zaimportowaniem obiektów Microsoft.Common.Targets lub C#/VB.targets.
SkipInvalidConfigurations wszystkie Gdy truewygeneruj ostrzeżenie dotyczące nieprawidłowych kombinacji platformy i konfiguracji, ale nie zakończ się niepowodzeniem kompilacji; gdy false lub niezdefiniowane (wartość domyślna), wygeneruj błąd.
StartupObject .NET Określa klasę lub moduł, który zawiera metodę Main lub procedurę podrzędną. Ta właściwość jest równoważna przełącznikowi kompilatora /main .
PodsystemVersion .NET Określa minimalną wersję podsystemu, z którego może korzystać wygenerowany plik wykonywalny. Ta właściwość jest równoważna przełącznikowi kompilatora /subsystemversion . Aby uzyskać informacje o wartości domyślnej tej właściwości, zobacz /subsystemversion (Visual Basic) lub /subsystemversion (opcje kompilatora C#).
TargetCompactFramework .NET Wersja platformy .NET Compact Framework wymagana do uruchomienia kompilowania aplikacji. Określenie tej opcji umożliwia odwoływanie się do niektórych zestawów platformowych, do których może się odwoływać w przeciwnym razie.
Targetframeworkversion .NET Wersja programu .NET Framework wymagana do uruchomienia kompilowania aplikacji. Określenie tej opcji umożliwia odwoływanie się do niektórych zestawów platformowych, do których może się odwoływać w przeciwnym razie.
TreatWarningsAsErrors .NET Parametr logiczny, który, jeśli true, powoduje, że wszystkie ostrzeżenia są traktowane jako błędy. Ten parametr jest odpowiednikiem przełącznika kompilatora /nowarn .
UseCommonOutputDirectory .NET Właściwość logiczna, którą można ustawić, true gdy chcesz, aby wszystkie dane wyjściowe kompilacji w rozwiązaniu używały tego samego katalogu wyjściowego. Jeśli trueelement , dane wyjściowe przywoływanego projektu nie są kopiowane do projektów korzystających z tych zależności, tak jak zwykle w przypadku tego ustawienia to false. Ustawienie tego parametru na true nie powoduje zmiany rzeczywistego katalogu wyjściowego jakichkolwiek projektów. Nadal musisz ustawić katalog wyjściowy na żądany wspólny katalog wyjściowy dla każdego projektu, który go wymaga.
UseHostCompilerIfAvailable .NET Parametr logiczny, który, jeśli true, powoduje, że zadanie kompilacji używa obiektu kompilatora w procesie, jeśli jest dostępne. Ten parametr jest używany tylko przez program Visual Studio.
Utf8Output .NET Parametr logiczny, który, jeśli true, rejestruje dane wyjściowe kompilatora przy użyciu kodowania UTF-8. Ten parametr jest odpowiednikiem przełącznika kompilatora /utf8Output .
Nazwa właściwości lub parametru Typy projektu opis
VbcToolPath Visual Basic Opcjonalna ścieżka wskazująca inną lokalizację dla vbc.exe , gdy jest zastępowana bieżąca wersja vbc.exe .
VbcVerbosity Visual Basic Określa szczegółowość danych wyjściowych kompilatora Języka Visual Basic. Prawidłowe wartości to "Cichy", "Normalny" (wartość domyślna) lub "Pełne".
Visualstudioversion wszystkie Określa wersję programu Visual Studio, w ramach której ten projekt powinien być uznawany za uruchomiony. Jeśli ta właściwość nie zostanie określona, program MSBuild ustawi ją na wartość {VisualStudioMajorVersion}.0domyślną ; na przykład będzie 17.0 to wartość domyślna dla wszystkich wersji programu Visual Studio 2022.

Ta właściwość jest używana w kilku typach projektów, aby określić zestaw obiektów docelowych używanych do kompilacji. Jeśli ToolsVersion dla projektu ustawiono wartość 4.0 lub nowszą, VisualStudioVersion służy do określania zestawu narzędzi podrzędnych do użycia. Aby uzyskać więcej informacji, zobacz Zestaw narzędzi (ToolsVersion).
WarningsAsErrors .NET Określa listę ostrzeżeń, które mają być traktowane jako błędy. Ten parametr jest odpowiednikiem przełącznika kompilatora /warnaserror .
Warninglevel wszystkie Określa poziom ostrzeżenia, który ma być przekazywany do kompilatorów dla ostrzeżeń emitowanych przez kompilator. To ustawienie nie ma wpływu na ostrzeżenia programu MSBuild, które nie mają oznaczeń poziomu. Zobacz Poziom ostrzeżenia w dokumentacji kompilatora języka C# i /W (poziom ostrzeżenia) w dokumentacji kompilatora języka C++.
WarningsNotAsErrors .NET Określa listę ostrzeżeń, które nie są traktowane jako błędy. Ten parametr jest odpowiednikiem przełącznika kompilatora /warnaserror .
Win32manifest .NET Nazwa pliku manifestu, który powinien być osadzony w ostatnim zestawie. Ten parametr jest odpowiednikiem przełącznika kompilatora /win32Manifest .
Win32Resource .NET Nazwa pliku zasobu Win32, który ma być osadzony w ostatnim zestawie. Ten parametr jest odpowiednikiem przełącznika kompilatora /win32resource .

Właściwości specyficzne dla projektów zestawu .NET SDK, takich jak TargetFramework, są udokumentowane we właściwościach platformy Framework.

Zobacz też