Not
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
Beroende på dina installationsalternativ kan Visual Studio göra hundratals makron tillgängliga för dig i ett MSBuild-baserat .vcxproj Visual Studio-projekt. Makrona motsvarar de MSBuild-egenskaper som anges som standard, i eller .targets i .props filer eller i dina projektinställningar. Du kan använda dessa makron var som helst i dialogrutan Egenskapssidor för ett projekt där strängar accepteras. Dessa makron är inte skiftlägeskänsliga.
Visa aktuella egenskaper och makron
Om du vill visa alla tillgängliga makron öppnar du projektegenskapssidorna på huvudmenyn genom att välja Projektegenskaper>. I dialogrutan Egenskapssidor väljer du en post som har ett makro i sig. Du kan känna igen ett makro med dollartecknet och parentesen som omger dess namn.
I det vänstra fönstret väljer du till exempel Konfigurationsegenskaper>VC++ Kataloger och i den högra rutan väljer du Inkludera kataloger. Värdet för Inkludera kataloger är $(VC_IncludePath);$(WindowsSDK_IncludePath);.
Dollartecknet och parenteserna som omger dessa två värden anger att de är makron. Expansionen av dessa två makron anger vilka inkluderingskataloger som ska sökas.
Välj Inkludera kataloger så visas en listruta i slutet av raden. Välj listruteknappen och välj sedan Redigera. I dialogrutan Inkludera kataloger som visas väljer du knappen Makron>> .
Det expanderar dialogrutan för att visa den aktuella uppsättningen egenskaper och makron som är synliga för Visual Studio, tillsammans med det aktuella värdet för var och en. Mer information finns i avsnittet Ange User-Defined värden i referensen för C++-projektegenskapssidan.
Till höger finns en lista över Visual Studio-makron, till exempel $(AllowLocalNetworkLoopback). Den vänstra rutan visar det utvärderade värdet för egenskapen include directory. Det nedre fönstret visar vilka makron som har expanderats, om några, för att skapa egenskapsvärdet include directory. Eftersom makrot Include Directories (Inkludera kataloger) är en kombination av två andra makron, $(VC_IncludePath) och $(WindowsSDK_IncludePath), visas de två makrona i det nedre fönstret, märkta Ärvda värden.
Lista över vanliga makron
I den här tabellen beskrivs en vanlig delmängd av tillgängliga makron. det finns många fler som inte listas här. Gå till dialogrutan Makron för att se alla egenskaper och deras aktuella värden i projektet. Mer information om hur MSBuild-egenskapsdefinitioner skapas och används som makron i , .targetsoch .vcxproj filer finns i .propsMSBuild-egenskaper.
| Macro | Description |
|---|---|
$(Configuration) |
Namnet på den aktuella projektkonfigurationen, till exempel "Felsökning". |
$(DevEnvDir) |
Installationskatalogen för Visual Studio (definierad som enhet + sökväg); innehåller det avslutande omvänt snedstrecket (\). |
$(FrameworkDir) |
Katalogen där .NET Framework installerades. |
$(FrameworkSDKDir) |
Katalogen som du installerade .NET Framework i. .NET Framework kan ha installerats som en del av Visual Studio eller separat. |
$(FrameworkVersion) |
Versionen av .NET Framework som används av Visual Studio. Kombinerat med $(FrameworkDir), den fullständiga sökvägen till den version av .NET Framework som används av Visual Studio. |
$(FxCopDir) |
Sökvägen till fxcop.cmd filen. Filen fxcop.cmd är inte installerad i alla Visual Studio-utgåvor. |
$(IntDir) |
Sökväg till katalogen som angetts för mellanliggande filer. Om det är en relativ sökväg går mellanliggande filer till den här sökvägen som läggs till i projektkatalogen. Den här sökvägen bör ha ett avslutande omvänt snedstreck (\). Det matchar värdet för egenskapen Intermediate Directory . Använd $(OutDir) inte för att definiera den här egenskapen. |
$(OutDir) |
Sökväg till utdatafilkatalogen. Om det är en relativ sökväg går utdatafilerna till den här sökvägen som läggs till i projektkatalogen. Den här sökvägen bör ha ett avslutande omvänt snedstreck (\). Det matchar värdet för egenskapen Output Directory . Använd $(IntDir) inte för att definiera den här egenskapen. |
$(Platform) |
Namnet på den aktuella projektplattformen, till exempel "Win32". |
$(PlatformShortName) |
Det korta namnet på den aktuella arkitekturen, till exempel "x86" eller "x64". |
$(ProjectDir) |
Katalogen för projektet (definieras som enhet + sökväg); innehåller det avslutande omvänt snedstrecket (\). |
$(ProjectExt) |
Filnamnstillägget för projektet. Den innehåller "." före filnamnstillägget. |
$(ProjectFileName) |
Filnamnet för projektet (definierat som basnamn + filnamnstillägg). |
$(ProjectName) |
Projektets basnamn. |
$(ShortProjectName) |
Förkortat projektnamn som används när IntDir är oetat. Standardvärdet $(ProjectName) är men trunkerar långa namn till ProjectName.Substring(0,8).ProjectGuid.Substring(1,8) för att hålla mellanliggande sökvägar korta och unika. |
$(ProjectPath) |
Projektets absoluta sökvägsnamn (definierat som enhet + sökväg + basnamn + filnamnstillägg). |
$(PublishDir) |
Utdataplatsen för publiceringsmålet. innehåller det avslutande omvänt snedstrecket (\). Standardvärdet är $(OutDir)app.publish\ mappen. |
$(RemoteMachine) |
Ange värdet för egenskapen Fjärrdator på egenskapssidan Felsök. Mer information finns i Ändra projektinställningar för en C/C++-felsökningskonfiguration. |
$(RootNameSpace) |
Namnområdet, om det finns något, som innehåller programmet. |
$(SolutionDir) |
Katalogen för lösningen (definierad som enhet + sökväg); innehåller det avslutande omvänt snedstrecket (\). Definieras endast när du skapar en lösning i IDE. |
$(SolutionExt) |
Filnamnstillägget för lösningen. Den innehåller "." före filnamnstillägget. Definieras endast när du skapar en lösning i IDE. |
$(SolutionFileName) |
Filnamnet för lösningen (definierat som basnamn + filnamnstillägg). Definieras endast när du skapar en lösning i IDE. |
$(SolutionName) |
Lösningens basnamn. Definieras endast när du skapar en lösning i IDE. |
$(SolutionPath) |
Lösningens absoluta sökvägsnamn (definierat som enhet + sökväg + basnamn + filnamnstillägg). Definieras endast när du skapar en lösning i IDE. |
$(TargetDir) |
Katalogen för den primära utdatafilen för versionen (definierad som enhet + sökväg); innehåller det avslutande omvänt snedstrecket (\). |
$(TargetExt) |
Filnamnstillägget för den primära utdatafilen för bygget. Den innehåller "." före filnamnstillägget. |
$(TargetFileName) |
Filnamnet på den primära utdatafilen för bygget (definierat som basnamn + filnamnstillägg). |
$(TargetName) |
Basnamnet för den primära utdatafilen för bygget. |
$(TargetPath) |
Det absoluta sökvägsnamnet för den primära utdatafilen för bygget (definierat som enhet + sökväg + basnamn + filnamn + filnamnstillägg). |
$(VCInstallDir) |
Katalogen som innehåller C++-innehållet i Visual Studio-installationen. Den här egenskapen innehåller versionen av den riktade Microsoft C++ -verktygsuppsättningen (MSVC), som kan vara annorlunda än värdens Visual Studio. När du till exempel skapar med $(PlatformToolset) = v140innehåller $(VCInstallDir) sökvägen till Visual Studio 2015-installationen. |
$(VSInstallDir) |
Katalogen som du installerade Visual Studio i. Den här egenskapen innehåller den version av visual studio-verktygsuppsättningen som är riktad, vilket kan skilja sig åt som värd för Visual Studio. När du till exempel skapar med $(PlatformToolset) = v110innehåller $(VSInstallDir) sökvägen till Visual Studio 2012-installationen. |
$(WebDeployPath) |
Den relativa sökvägen från webbdistributionsroten till den plats där projektets utdata hör hemma. |
$(WebDeployRoot) |
Den absoluta sökvägen till platsen <localhost>för . Till exempel c:\inetpub\wwwroot. |
Föråldrade makron
Byggsystemet för C++ ändrades avsevärt mellan Visual Studio 2008 och Visual Studio 2010. Många makron som används i tidigare projekttyper har ändrats till nya. Dessa makron används inte längre eller ersätts av en eller flera motsvarande egenskaper eller objektmetadatamakrovärden (%(item-name)). Migreringsverktyget kan uppdatera makron som är märkta "migrerade". Om ett projekt som innehåller makrot migreras från Visual Studio 2008 eller tidigare till Visual Studio 2010 konverterar Visual Studio makrot till motsvarande aktuellt makro. Senare versioner av Visual Studio kan inte konvertera projekt från Visual Studio 2008 och tidigare till den nya projekttypen. Du måste konvertera dessa projekt i två steg. konvertera dem först till Visual Studio 2010 och konvertera sedan resultatet till din nyare version av Visual Studio. Mer information finns i Översikt över potentiella uppgraderingsproblem.
| Macro | Description |
|---|---|
$(InputDir) |
(Migrerad.) Katalogen för indatafilen (definierad som enhet + sökväg); innehåller det avslutande omvänt snedstrecket (\). Om projektet är indata motsvarar $(ProjectDir)makrot . |
$(InputExt) |
(Migrerad.) Filnamnstillägget för indatafilen. Den innehåller "." före filnamnstillägget. Om projektet är indata motsvarar $(ProjectExt)makrot . För källfiler motsvarar %(Extension)det . |
$(InputFileName) |
(Migrerad.) Filnamnet på indatafilen (definieras som basnamn + filnamnstillägg). Om projektet är indata motsvarar $(ProjectFileName)makrot . För källfiler motsvarar %(Identity)det . |
$(InputName) |
(Migrerad.) Basnamnet för indatafilen. Om projektet är indata motsvarar $(ProjectName)makrot . För källfiler motsvarar %(Filename)det . |
$(InputPath) |
(Migrerad.) Det absoluta sökvägsnamnet för indatafilen (definierat som enhet + sökväg + basnamn + filnamnstillägg). Om projektet är indata motsvarar $(ProjectPath)makrot . För källfiler motsvarar %(FullPath)det . |
$(ParentName) |
Namnet på objektet som innehåller det här projektobjektet. Det här makrot är namnet på den överordnade mappen eller projektnamnet. |
$(SafeInputName) |
Namnet på filen som ett giltigt klassnamn, minus filnamnstillägget. Den här egenskapen har ingen exakt motsvarighet. |
$(SafeParentName) |
Namnet på den omedelbara överordnade i giltigt namnformat. Ett formulär är till exempel överordnat för en .resx fil. Den här egenskapen har ingen exakt motsvarighet. |
$(SafeRootNamespace) |
Namnområdesnamnet där projektguiderna ska lägga till kod. Det här namnområdesnamnet innehåller bara tecken som skulle tillåtas i en giltig C++-identifierare. Den här egenskapen har ingen exakt motsvarighet. |
Se även
Visual Studio Projects – C++
Visual C++-portning och uppgraderingsguide
Översikt över potentiella uppgraderingsproblem
MSBuild välkända objektmetadata