Geavanceerde vastgoedpagina

De pagina Geavanceerde eigenschappen is beschikbaar in Visual Studio 2019 en hoger. Als u de documentatie voor die versie wilt bekijken, stelt u het versiekiezerbesturingselement voor dit artikel in op Visual Studio 2019 of hoger. Deze bevindt zich boven aan de inhoudsopgave op deze pagina. In eerdere versies van Visual Studio worden deze eigenschappen weergegeven op de pagina Algemene eigenschappen:

De pagina Geavanceerde eigenschappen is beschikbaar in Visual Studio 2019 en hoger. De weergegeven specifieke eigenschappen zijn afhankelijk van het projecttype. Windows Runtime (Universeel Windows-platform of UWP)-projecten worden deze pagina niet weergegeven.

Geavanceerde eigenschappen

Doelbestandsextensie

Hiermee geeft u de bestandsextensie te gebruiken voor de build-uitvoer. Standaard ingesteld .exe voor toepassingen, .lib voor statische bibliotheken en .dll voor DLL's.

Extensies die moeten worden verwijderd bij opschonen

Met de menuopdrachtOpschonen> bouwen worden bestanden verwijderd uit de tussenliggende map waarin de configuratie van een project is gebouwd. Het buildsysteem verwijdert bestanden met de opgegeven extensies wanneer u de opdracht Opschonen uitvoert of wanneer u opnieuw bouwt. Het buildsysteem verwijdert ook alle bekende uitvoer van de build, ongeacht waar deze zich bevindt. Verwijderde bestanden bevatten tussenliggende uitvoer, zoals .obj bestanden. Gebruik puntkomma's (;) om extensies te scheiden. U kunt jokertekens (*, ?) opgeven in de extensies.

Als u programmatisch toegang wilt krijgen tot deze eigenschap, raadpleegt u DeleteExtensionsOnClean.

Logboekbestand maken

Hiermee kunt u een niet-standaardlocatie opgeven voor het logboekbestand dat wordt gemaakt wanneer u een project bouwt. De standaardlocatie wordt opgegeven door de macro's $(IntDir)$(MSBuildProjectName).log.

U kunt projectmacro's gebruiken om de maplocatie te wijzigen. Zie Algemene macro's voor buildopdrachten en eigenschappen voor meer informatie.

Architectuur van voorkeurshulpprogramma's

Hiermee geeft u op of de x86- of x64-buildhulpprogramma's moeten worden gebruikt.

Foutopsporingsbibliotheken gebruiken

Hiermee geeft u op of u een foutopsporings- of release-build wilt maken. Ondanks de naam is Het gebruik van foutopsporingsbibliotheken een systeemspecifieke build bouwen die in feite een verkorte eigenschap is voor 'Make a Debug build' of 'Make a Release build'. Er worden verschillende compiler- en linkereigenschappen ingesteld voor builds voor foutopsporing of release, waaronder de bibliotheekinstellingen. U kunt deze gebruiken om foutopsporings- of releaseconfiguraties te maken voor een nieuw platform of in een nieuwe sjabloon. We raden u niet aan deze eigenschap in een bestaande configuratie te wijzigen. Gebruik in plaats daarvan de afzonderlijke compiler- en linkereigenschappen.

Unity -build (JUMBO) inschakelen

Maakt een sneller buildproces mogelijk dat veel C++-bronbestanden combineert in een of meer bestanden voordat ze worden gecompileert.

Inhoud kopiëren naar OutDir

Kopieer de items die zijn gemarkeerd als inhoud in het project naar de uitvoermap van het project ($(OutDir)). Deze instelling kan de implementatie vereenvoudigen. Deze eigenschap is beschikbaar vanaf Visual Studio versie 16.7 van 2019.

Verwijzingen naar OutDir kopiëren Project

Kopieer de uitvoerbare (DLL- en EXE-bestand) projectreferentieitems naar de uitvoermap van het project ($(OutDir)). In C++/CLI-projecten (/clr) wordt deze eigenschap genegeerd. In plaats daarvan bepaalt de eigenschap Lokaal kopiëren op elke projectreferentie of de items naar de uitvoermap worden gekopieerd. Deze instelling kan de lokale implementatie vereenvoudigen. Deze is beschikbaar vanaf Visual Studio versie 16.7 van 2019.

Symbolen van Project verwijzingen kopiëren naar OutDir

Kopieer de PDB-bestanden voor projectreferentieitems samen met uitvoerbare items van het project naar de uitvoermap van het project ($(OutDir)). Deze eigenschap is altijd ingeschakeld voor C++/CLI-projecten. Deze instelling kan de implementatie van foutopsporing vereenvoudigen. Deze is beschikbaar vanaf Visual Studio versie 16.7 van 2019.

C++ Runtime kopiëren naar OutDir

Kopieer de C++ runtime-DLL's naar de uitvoermap van het project ($(OutDir)). Deze instelling kan de lokale implementatie vereenvoudigen. Deze is beschikbaar vanaf Visual Studio versie 16.7 van 2019.

Gebruik van MFC

Hiermee geeft u op of het MFC-project statisch of dynamisch wordt gekoppeld aan de MFC DLL. Niet-MFC-projecten selecteren Standaard Windows-bibliotheken gebruiken.

Als u programmatisch toegang wilt krijgen tot deze eigenschap, raadpleegt u useOfMfc.

Tekenset

Hiermee geeft u op of de _UNICODE macro moet worden ingesteld of _MBCS de preprocessormacro moet worden ingesteld. Is ook van invloed op het linkerinvoerpunt, indien van toepassing. Voor _UNICODEhet verwachte codeinvoerpunt is wmain of wWinMain. Voor _MBCShet verwachte codeinvoerpunt is main of WinMain.

Als u programmatisch toegang wilt krijgen tot deze eigenschap, raadpleegt u CharacterSet.

Optimalisatie van hele programma's

Hiermee geeft u de /GL compileroptie en /LTCG linkeroptie. Deze eigenschap is standaard uitgeschakeld voor foutopsporingsconfiguraties en ingeschakeld voor releaseconfiguraties.

MSVC Toolset-versie

Hiermee geeft u de volledige versie van de MSVC-toolset op die wordt gebruikt om het project te bouwen. Mogelijk hebt u verschillende update- en preview-versies van een toolset geïnstalleerd. U kunt hier opgeven welke u wilt gebruiken.

Versie van LLVM Toolset

Hiermee geeft u de volledige versie van de LLVM-toolset op die wordt gebruikt om het project te bouwen. Deze eigenschap is beschikbaar wanneer LLVM (clang-cl) is geselecteerd als de platformhulpprogrammaset, te beginnen in Visual Studio versie 16.9 van 2019. Zie Een aangepaste versie van de LLVM-toolset instellen voor meer informatie.

Gestructureerde MSVC-uitvoer inschakelen

Hiermee geeft u op of gestructureerde SARIF-uitvoer moet worden ingeschakeld, waardoor het venster Probleemdetails en hiërarchische uitvoer in het venster Uitvoer in Visual Studio worden ingeschakeld.

C++/CLI-eigenschappen

Common Language Runtime-ondersteuning

Zorgt ervoor dat de /clr compileroptie wordt gebruikt.

Als u programmatisch toegang wilt krijgen tot deze eigenschap, raadpleegt u ManagedExtensions.

.NET Target Framework-versie

Deze eigenschap is alleen van toepassing wanneer de eigenschap Common Language Runtime Support is ingesteld op .NET Framework Runtime-ondersteuning. Dat wil gezegd, wanneer het project is gericht op .NET Framework en de versie van het .NET Framework opgeeft.

.NET Target Framework

Deze eigenschap is alleen van toepassing wanneer de eigenschap Common Language Runtime Support is ingesteld op .NET Runtime-ondersteuning. Dat wil gezegd, wanneer het project gericht is op .NET.

Met deze eigenschap geeft u de .NET 5+ Target Framework Moniker dit projectdoelen, bijvoorbeeld net6.0-windows of net7.0-windows8.0.

Beheerde incrementele build inschakelen

Deze eigenschap helpt de buildtijden in grote oplossingen aanzienlijk te verbeteren door ervoor te zorgen dat afhankelijke projecten niet opnieuw worden opgebouwd als een wijziging niet de onderdelen van uw code wijzigt die andere assembly's of projecten kunnen zien en ermee kunnen werken.

CLR-ondersteuning inschakelen voor afzonderlijke bestanden

Met deze optie stelt u een ManagedAssembly build-eigenschap in waarmee alleen enkele bestanden in het project als beheerde code kunnen worden gebouwd. U moet CLR-ondersteuning inschakelen voor afzonderlijke bestanden instellen opJa als sommige, maar niet alle projectbestanden zijn gebouwd als beheerde code. Deze eigenschap is alleen beschikbaar in projecten die gebruikmaken van Visual Studio 2022 of hoger en de platformhulpprogrammaset v143 of hoger.

.NET doelversie van Windows

Deze eigenschap is alleen van toepassing wanneer de eigenschap Common Language Runtime Support is ingesteld op .NET Runtime-ondersteuning. Dat wil gezegd, wanneer het project gericht is op .NET.

Met deze eigenschap geeft u de minimale Windows versie op die door het project wordt ondersteund. Deze waarde wordt door NuGet gebruikt om de compatibiliteit van projecten en NuGet-pakketafhankelijkheden te bepalen. Als een project A afhankelijk is van project B, moet de .NET doelversie van project A groter of gelijk zijn aan de Windows versie van project B.

De pagina Geavanceerde eigenschappen is beschikbaar in Visual Studio 2019 en hoger. De weergegeven specifieke eigenschappen zijn afhankelijk van het projecttype. Windows Runtime (Universeel Windows-platform of UWP)-projecten worden deze pagina niet weergegeven.

Geavanceerde eigenschappen

Doelbestandsextensie

Hiermee geeft u de bestandsextensie te gebruiken voor de build-uitvoer. Standaard ingesteld .exe voor toepassingen, .lib voor statische bibliotheken en .dll voor DLL's.

Extensies die moeten worden verwijderd bij opschonen

Met de menuopdrachtOpschonen> bouwen worden bestanden verwijderd uit de tussenliggende map waarin de configuratie van een project is gebouwd. Het buildsysteem verwijdert bestanden met de opgegeven extensies wanneer u de opdracht Opschonen uitvoert of wanneer u opnieuw bouwt. Het buildsysteem verwijdert ook alle bekende uitvoer van de build, ongeacht waar deze zich bevindt. Verwijderde bestanden bevatten tussenliggende uitvoer, zoals .obj bestanden. Gebruik puntkomma's (;) om extensies te scheiden. U kunt jokertekens (*, ?) opgeven in de extensies.

Als u programmatisch toegang wilt krijgen tot deze eigenschap, raadpleegt u DeleteExtensionsOnClean.

Logboekbestand maken

Hiermee kunt u een niet-standaardlocatie opgeven voor het logboekbestand dat wordt gemaakt wanneer u een project bouwt. De standaardlocatie wordt opgegeven door de macro's $(IntDir)$(MSBuildProjectName).log.

U kunt projectmacro's gebruiken om de maplocatie te wijzigen. Zie Algemene macro's voor buildopdrachten en eigenschappen voor meer informatie.

Architectuur van voorkeurshulpprogramma's

Hiermee geeft u op of de ARM64-, x86- of x64-buildhulpprogramma's moeten worden gebruikt.

Foutopsporingsbibliotheken gebruiken

Hiermee geeft u op of u een foutopsporings- of release-build wilt maken. Ondanks de naam is Het gebruik van foutopsporingsbibliotheken een systeemspecifieke build bouwen die in feite een verkorte eigenschap is voor 'Make a Debug build' of 'Make a Release build'. Er worden verschillende compiler- en linkereigenschappen ingesteld voor builds voor foutopsporing of release, waaronder de bibliotheekinstellingen. U kunt deze gebruiken om foutopsporings- of releaseconfiguraties te maken voor een nieuw platform of in een nieuwe sjabloon. We raden u niet aan deze eigenschap in een bestaande configuratie te wijzigen. Gebruik in plaats daarvan de afzonderlijke compiler- en linkereigenschappen.

Unity -build (JUMBO) inschakelen

Maakt een sneller buildproces mogelijk dat veel C++-bronbestanden combineert in een of meer bestanden voordat ze worden gecompileert.

Inhoud kopiëren naar OutDir

Kopieer de items die zijn gemarkeerd als inhoud in het project naar de uitvoermap van het project ($(OutDir)). Deze instelling kan de implementatie vereenvoudigen. Deze eigenschap is beschikbaar vanaf Visual Studio versie 16.7 van 2019.

Verwijzingen naar OutDir kopiëren Project

Kopieer de uitvoerbare (DLL- en EXE-bestand) projectreferentieitems naar de uitvoermap van het project ($(OutDir)). In C++/CLI-projecten (/clr) wordt deze eigenschap genegeerd. In plaats daarvan bepaalt de eigenschap Lokaal kopiëren op elke projectreferentie of de items naar de uitvoermap worden gekopieerd. Deze instelling kan de lokale implementatie vereenvoudigen. Deze is beschikbaar vanaf Visual Studio versie 16.7 van 2019.

Symbolen van Project verwijzingen kopiëren naar OutDir

Kopieer de PDB-bestanden voor projectreferentieitems samen met uitvoerbare items van het project naar de uitvoermap van het project ($(OutDir)). Deze eigenschap is altijd ingeschakeld voor C++/CLI-projecten. Deze instelling kan de implementatie van foutopsporing vereenvoudigen. Deze is beschikbaar vanaf Visual Studio versie 16.7 van 2019.

C++ Runtime kopiëren naar OutDir

Kopieer de C++ runtime-DLL's naar de uitvoermap van het project ($(OutDir)). Deze instelling kan de lokale implementatie vereenvoudigen. Deze is beschikbaar vanaf Visual Studio versie 16.7 van 2019.

Gebruik van MFC

Hiermee geeft u op of het MFC-project statisch of dynamisch wordt gekoppeld aan de MFC DLL. Niet-MFC-projecten selecteren Standaard Windows-bibliotheken gebruiken.

Als u programmatisch toegang wilt krijgen tot deze eigenschap, raadpleegt u useOfMfc.

Tekenset

Hiermee geeft u op of de _UNICODE macro moet worden ingesteld of _MBCS de preprocessormacro moet worden ingesteld. Is ook van invloed op het linkerinvoerpunt, indien van toepassing. Voor _UNICODEhet verwachte codeinvoerpunt is wmain of wWinMain. Voor _MBCShet verwachte codeinvoerpunt is main of WinMain.

Als u programmatisch toegang wilt krijgen tot deze eigenschap, raadpleegt u CharacterSet.

Optimalisatie van hele programma's

Hiermee geeft u de /GL compileroptie en /LTCG linkeroptie. Deze eigenschap is standaard uitgeschakeld voor foutopsporingsconfiguraties en ingeschakeld voor releaseconfiguraties.

Dynamische foutopsporing in C++ gebruiken

Hiermee geeft u op of C++ dynamische foutopsporing moet worden gebruikt. Gebruik deze modus voor het opsporen van fouten in geoptimaliseerde code. Als u deze instelling inschakelt, is Whole Program Optimization uitgeschakeld. Zie C++ Dynamische foutopsporing voor meer informatie.

Gestructureerde MSVC-uitvoer inschakelen

Hiermee geeft u op of gestructureerde SARIF-uitvoer moet worden ingeschakeld, waardoor het venster Probleemdetails en hiërarchische uitvoer in het venster Uitvoer in Visual Studio worden ingeschakeld.

C++/CLI-eigenschappen

Common Language Runtime-ondersteuning

Zorgt ervoor dat de /clr compileroptie wordt gebruikt.

Als u programmatisch toegang wilt krijgen tot deze eigenschap, raadpleegt u ManagedExtensions.

.NET Target Framework-versie

Deze eigenschap is alleen van toepassing wanneer de eigenschap Common Language Runtime Support is ingesteld op .NET Framework Runtime-ondersteuning. Dat wil gezegd, wanneer het project is gericht op .NET Framework en de versie van het .NET Framework opgeeft.

.NET Target Framework

Deze eigenschap is alleen van toepassing wanneer de eigenschap Common Language Runtime Support is ingesteld op .NET Runtime-ondersteuning. Dat wil gezegd, wanneer het project gericht is op .NET.

Met deze eigenschap geeft u de .NET 5+ Target Framework Moniker dit projectdoelen, bijvoorbeeld net6.0-windows of net7.0-windows8.0.

Beheerde incrementele build inschakelen

Deze eigenschap helpt de buildtijden in grote oplossingen aanzienlijk te verbeteren door ervoor te zorgen dat afhankelijke projecten niet opnieuw worden opgebouwd als een wijziging niet de onderdelen van uw code wijzigt die andere assembly's of projecten kunnen zien en ermee kunnen werken.

CLR-ondersteuning inschakelen voor afzonderlijke bestanden

Met deze optie stelt u een ManagedAssembly build-eigenschap in waarmee alleen enkele bestanden in het project als beheerde code kunnen worden gebouwd. U moet CLR-ondersteuning inschakelen voor afzonderlijke bestanden instellen opJa als sommige, maar niet alle projectbestanden zijn gebouwd als beheerde code. Deze eigenschap is alleen beschikbaar in projecten die gebruikmaken van Visual Studio 2022 of hoger en de platformhulpprogrammaset v143 of hoger.

.NET doelversie van Windows

Deze eigenschap is alleen van toepassing wanneer de common Language Runtime-ondersteuningseigenschap is ingesteld op .NET Runtime-ondersteuning. Dat wil gezegd, wanneer het project gericht is op .NET.

Met deze eigenschap geeft u de minimale Windows versie op die door het project wordt ondersteund. Deze waarde wordt door NuGet gebruikt om de compatibiliteit van projecten en NuGet-pakketafhankelijkheden te bepalen. Als een project A afhankelijk is van project B, moet de .NET doelversie van project A groter of gelijk zijn aan de Windows versie van project B.