Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
Afhankelijk van uw installatieopties kan Visual Studio honderden macro's beschikbaar maken voor u in een Op MSBuild gebaseerd .vcxproj Visual Studio-project. De macro's komen overeen met de MSBuild-eigenschappen die standaard of in bestanden .targets of in .props uw projectinstellingen zijn ingesteld. U kunt deze macro's overal in het dialoogvenster Eigenschappenpagina's van een project gebruiken waar tekenreeksen worden geaccepteerd. Deze macro's zijn niet hoofdlettergevoelig.
De huidige eigenschappen en macro's weergeven
Als u alle momenteel beschikbare macro's wilt weergeven, opent u de projecteigenschapspagina's in het hoofdmenu door Projecteigenschappen> te selecteren. Kies in het dialoogvenster Eigenschappenpagina's een vermelding met daarin een macro. U kunt een macro herkennen aan het dollarteken en haakjes die de naam omsluiten.
Selecteer bijvoorbeeld in het linkerdeelvenster configuratie-eigenschappen>VC++ mappen en selecteer vervolgens in het rechterdeelvenster Mappen opnemen. De waarde voor Include-mappen is $(VC_IncludePath);$(WindowsSDK_IncludePath);.
Het dollarteken en haakjes rond deze twee waarden geven aan dat het macro's zijn. Met de uitbreiding van deze twee macro's worden de mappen opgenomen om te zoeken ingesteld.
Selecteer Mappen opnemen en er wordt een vervolgkeuzelijst weergegeven aan het einde van de rij. Selecteer de vervolgkeuzeknop en selecteer Vervolgens Bewerken. Selecteer in het dialoogvenster Mappen opnemen dat wordt weergegeven de knop Macro's>> .
Hiermee vouwt u het dialoogvenster uit om de huidige set eigenschappen en macro's weer te geven die zichtbaar zijn voor Visual Studio, samen met de huidige waarde voor elk item. Zie de sectie User-Defined Waarden opgeven van de pagina met eigenschappen van het C++-project voor meer informatie.
Rechts ziet u een lijst met Visual Studio-macro's zoals $(AllowLocalNetworkLoopback). In het linkerdeelvenster ziet u de geëvalueerde waarde van de eigenschap Include Directory. In het onderste deelvenster ziet u welke macro's zijn uitgevouwen, indien van toepassing, om de waarde van de mapeigenschap opnemen te produceren. Omdat de macro Mappen opnemen een combinatie is van twee andere macro's, $(VC_IncludePath) en $(WindowsSDK_IncludePath), worden deze twee macro's weergegeven in het onderste deelvenster, met het label Overgenomen waarden.
Lijst met algemene macro's
In deze tabel wordt een veelgebruikte subset van de beschikbare macro's beschreven; er zijn hier nog veel meer niet vermeld. Ga naar het dialoogvenster Macro's om alle eigenschappen en de huidige waarden in uw project weer te geven. Zie MSBuild-eigenschappen voor meer informatie over hoe MSBuild-eigenschapsdefinities worden gemaakt en gebruikt als macro's in .props, .targetsen .vcxproj bestanden.
| Macroniveau | Description |
|---|---|
$(Configuration) |
De naam van de huidige projectconfiguratie, bijvoorbeeld 'Fouten opsporen'. |
$(DevEnvDir) |
De installatiemap van Visual Studio (gedefinieerd als station + pad); bevat de afsluitende backslash (\). |
$(FrameworkDir) |
De map waarin .NET Framework is geïnstalleerd. |
$(FrameworkSDKDir) |
De map waarin u .NET Framework hebt geïnstalleerd. Het .NET Framework is mogelijk geïnstalleerd als onderdeel van Visual Studio of afzonderlijk. |
$(FrameworkVersion) |
De versie van .NET Framework die wordt gebruikt door Visual Studio. Gecombineerd met $(FrameworkDir), het volledige pad naar de versie van het .NET Framework-gebruik door Visual Studio. |
$(FxCopDir) |
Het pad naar het fxcop.cmd bestand. Het fxcop.cmd bestand is niet geïnstalleerd in alle Visual Studio-edities. |
$(IntDir) |
Pad naar de map die is opgegeven voor tussenliggende bestanden. Als het een relatief pad is, gaan tussenliggende bestanden naar dit pad dat is toegevoegd aan de projectmap. Dit pad moet een afsluitende backslash (\) hebben. Deze wordt omgezet in de waarde voor de eigenschap Tussenliggende map . Gebruik deze eigenschap niet $(OutDir) om deze eigenschap te definiëren. |
$(OutDir) |
Pad naar de map met uitvoerbestanden. Als het een relatief pad is, gaan uitvoerbestanden naar dit pad dat is toegevoegd aan de projectmap. Dit pad moet een afsluitende backslash (\) hebben. Deze wordt omgezet in de waarde voor de eigenschap Output Directory . Gebruik deze eigenschap niet $(IntDir) om deze eigenschap te definiëren. |
$(Platform) |
De naam van het huidige projectplatform, bijvoorbeeld 'Win32'. |
$(PlatformShortName) |
De korte naam van de huidige architectuur, bijvoorbeeld 'x86' of 'x64'. |
$(ProjectDir) |
De map van het project (gedefinieerd als station + pad); bevat de afsluitende backslash (\). |
$(ProjectExt) |
De bestandsextensie van het project. Het bevat de '.' vóór de bestandsextensie. |
$(ProjectFileName) |
De bestandsnaam van het project (gedefinieerd als basisnaam + bestandsextensie). |
$(ProjectName) |
De basisnaam van het project. |
$(ShortProjectName) |
Verkorte projectnaam die wordt gebruikt wanneer IntDir deze niet is ingesteld. Lange namen worden standaard $(ProjectName) afgekapt om tussenliggende paden kort en uniek te ProjectName.Substring(0,8).ProjectGuid.Substring(1,8) houden. |
$(ProjectPath) |
De absolute padnaam van het project (gedefinieerd als station + pad + basisnaam + bestandsextensie). |
$(PublishDir) |
De uitvoerlocatie voor het publicatiedoel; bevat de afsluitende backslash (\). De standaardwaarde is voor de $(OutDir)app.publish\ map. |
$(RemoteMachine) |
Ingesteld op de waarde van de eigenschap Externe machine op de eigenschappenpagina Foutopsporing. Zie Projectinstellingen wijzigen voor een C/C++-foutopsporingsconfiguratie voor meer informatie. |
$(RootNameSpace) |
De naamruimte, indien aanwezig, die de toepassing bevat. |
$(SolutionDir) |
De map van de oplossing (gedefinieerd als station + pad); bevat de afsluitende backslash (\). Alleen gedefinieerd bij het bouwen van een oplossing in de IDE. |
$(SolutionExt) |
De bestandsextensie van de oplossing. Het bevat de '.' vóór de bestandsextensie. Alleen gedefinieerd bij het bouwen van een oplossing in de IDE. |
$(SolutionFileName) |
De bestandsnaam van de oplossing (gedefinieerd als basisnaam + bestandsextensie). Alleen gedefinieerd bij het bouwen van een oplossing in de IDE. |
$(SolutionName) |
De basisnaam van de oplossing. Alleen gedefinieerd bij het bouwen van een oplossing in de IDE. |
$(SolutionPath) |
De absolute padnaam van de oplossing (gedefinieerd als station + pad + basisnaam + bestandsextensie). Alleen gedefinieerd bij het bouwen van een oplossing in de IDE. |
$(TargetDir) |
De map van het primaire uitvoerbestand voor de build (gedefinieerd als station + pad); bevat de afsluitende backslash (\). |
$(TargetExt) |
De bestandsextensie van het primaire uitvoerbestand voor de build. Het bevat de '.' vóór de bestandsextensie. |
$(TargetFileName) |
De bestandsnaam van het primaire uitvoerbestand voor de build (gedefinieerd als basisnaam + bestandsextensie). |
$(TargetName) |
De basisnaam van het primaire uitvoerbestand voor de build. |
$(TargetPath) |
De absolute padnaam van het primaire uitvoerbestand voor de build (gedefinieerd als station + pad + basisnaam + bestandsextensie). |
$(VCInstallDir) |
De map met de C++-inhoud van uw Visual Studio-installatie. Deze eigenschap bevat de versie van de betreffende Microsoft C++ (MSVC)-toolset, die mogelijk anders is dan de host visual Studio. Als u bijvoorbeeld bouwt met $(PlatformToolset) = v140, $(VCInstallDir) bevat het pad naar de installatie van Visual Studio 2015. |
$(VSInstallDir) |
De map waarin u Visual Studio hebt geïnstalleerd. Deze eigenschap bevat de versie van de beoogde Visual Studio-toolset, die mogelijk anders is dan de host visual Studio. Als u bijvoorbeeld bouwt met $(PlatformToolset) = v110, $(VSInstallDir) bevat het pad naar de installatie van Visual Studio 2012. |
$(WebDeployPath) |
Het relatieve pad van de hoofdmap van de webimplementatie tot waar de projectuitvoer hoort. |
$(WebDeployRoot) |
Het absolute pad naar de locatie van <localhost>. Bijvoorbeeld: c:\inetpub\wwwroot. |
Verouderde macro's
Het buildsysteem voor C++ is aanzienlijk gewijzigd tussen Visual Studio 2008 en Visual Studio 2010. Veel macro's die in eerdere projecttypen worden gebruikt, zijn gewijzigd in nieuwe macro's. Deze macro's worden niet meer gebruikt of vervangen door een of meer equivalente eigenschappen of metagegevensmacrowaarden van%(item-name) items. Het hulpprogramma voor migratie kan macro's bijwerken die zijn gemarkeerd als 'gemigreerd'. Als een project met de macro wordt gemigreerd van Visual Studio 2008 of eerder naar Visual Studio 2010, converteert Visual Studio de macro naar de equivalente huidige macro. Latere versies van Visual Studio kunnen projecten niet converteren van Visual Studio 2008 en eerder naar het nieuwe projecttype. U moet deze projecten in twee stappen converteren; converteer ze eerst naar Visual Studio 2010 en converteer het resultaat vervolgens naar uw nieuwere versie van Visual Studio. Zie Overzicht van mogelijke upgradeproblemen voor meer informatie.
| Macroniveau | Description |
|---|---|
$(InputDir) |
(Gemigreerd.) De map van het invoerbestand (gedefinieerd als station + pad); bevat de afsluitende backslash (\). Als het project de invoer is, is deze macro gelijk aan $(ProjectDir). |
$(InputExt) |
(Gemigreerd.) De bestandsextensie van het invoerbestand. Het bevat de '.' vóór de bestandsextensie. Als het project de invoer is, is deze macro gelijk aan $(ProjectExt). Voor bronbestanden is deze gelijk aan %(Extension). |
$(InputFileName) |
(Gemigreerd.) De bestandsnaam van het invoerbestand (gedefinieerd als basisnaam + bestandsextensie). Als het project de invoer is, is deze macro gelijk aan $(ProjectFileName). Voor bronbestanden is deze gelijk aan %(Identity). |
$(InputName) |
(Gemigreerd.) De basisnaam van het invoerbestand. Als het project de invoer is, is deze macro gelijk aan $(ProjectName). Voor bronbestanden is deze gelijk aan %(Filename). |
$(InputPath) |
(Gemigreerd.) De absolute padnaam van het invoerbestand (gedefinieerd als station + pad + basisnaam + bestandsextensie). Als het project de invoer is, is deze macro gelijk aan $(ProjectPath). Voor bronbestanden is deze gelijk aan %(FullPath). |
$(ParentName) |
Naam van het item dat dit projectitem bevat. Deze macro is de naam van de bovenliggende map of projectnaam. |
$(SafeInputName) |
De naam van het bestand als een geldige klassenaam, min bestandsextensie. Deze eigenschap heeft geen exact equivalent. |
$(SafeParentName) |
De naam van de directe bovenliggende persoon in geldige naamindeling. Een formulier is bijvoorbeeld het bovenliggende element van een .resx bestand. Deze eigenschap heeft geen exact equivalent. |
$(SafeRootNamespace) |
De naamruimtenaam waar de projectwizards code moeten toevoegen. Deze naamruimtenaam bevat alleen tekens die zijn toegestaan in een geldige C++-id. Deze eigenschap heeft geen exact equivalent. |
Zie ook
Visual Studio Projects - C++
Handleiding voor het overzetten en upgraden van Visual C++
Overzicht van mogelijke upgradeproblemen
MSBuild bekende itemmetagegevens