Kommentar
Å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.
Projekt i Visual Studio stöder flera konfigurationer som kan byggas, debuggas, köras och/eller distribueras. En konfiguration är en byggtyp som beskrivs med en namngiven uppsättning egenskaper, vanligtvis kompilatorväxlar och filplatser. Som standard innehåller nya lösningar två konfigurationer, Felsökning och Version. Dessa konfigurationer kan användas med hjälp av deras standardinställningar eller ändras för att uppfylla dina specifika lösnings- och/eller projektkrav. Vissa paket kan byggas på två sätt: som en ActiveX-redigerare eller som en in-place-komponent. Projekt behöver dock inte ha stöd för flera konfigurationer. Om det bara finns en tillgänglig konfiguration mappas den konfigurationen till alla lösningskonfigurationer.
Konfigurationer består vanligtvis av två delar: konfigurationsnamnet (till exempel Felsökning eller Version) och plattformsinställningarna. En konfigurations plattformsnamn identifierar den miljö som konfigurationen riktar sig mot, till exempel en API-uppsättning eller operativsystemplattform. Användare av Visual Studio kan inte skapa en plattform. de måste välja bland de val som ett projekt som VSPackage tillåter. När en användare installerar en VSPackage kan leveransplattformen som skapades under utvecklingen av paketet visa valfritt plattformsnamn baserat på eventuella kriterier som angetts av paketskapare. Användaren kan sedan välja från listan över plattformar som görs tillgängliga via VSPackage när egenskapssidorna instansieras.
Plattformsnamn är valfria eftersom inte alla projekt stöder begreppet plattformar. När en konfiguration saknar ett plattformsnamn visas strängen N/A i användargränssnittet.
Varje lösning har en egen uppsättning konfigurationer, varav endast en kan vara aktiv i taget. En lösningskonfiguration är en uppsättning med högst en konfiguration från varje projekt. Villkoret "inte mer än" beror på alternativet att undanta ett projekt från en lösningskonfiguration. Användare kan skapa egna anpassade lösningskonfigurationer.
I följande tabell visas den typiska konfigurationskonfigurationen för ett projekt. Raderna är märkta med konfigurationsnamn och kolumner med plattformsnamn.
| Konfigurationsnamn | Plattform: Win32 | Plattform: Win64 |
|---|---|---|
| Debug | <Felsöka Win32-inställningar> | <Felsöka Win64-inställningar> |
| Släppa | <Inställningar för Release-version av Win32> | <Släpp Win64-inställningar> |
| MyConfig | N/A | <Win64-inställningar för MyConfig> |
Anmärkning
Du kan inte skapa en Konfiguration av MyConfig-lösningen som exkluderar en Win32-plattform om inte projektet du riktar in dig på inte stöder Win32.
Om du ändrar den aktiva konfigurationen för en lösning väljs den uppsättning projektkonfigurationer som skapas, körs, kopplas från eller distribueras i den lösningen. Om du till exempel ändrar den aktiva lösningskonfigurationen från Release till Debug skapas alla projekt i lösningen automatiskt med projektkonfigurationen som anges i lösningens felsökningskonfiguration. Projektens konfigurationer heter också Felsök om inte användaren har gjort manuella ändringar i miljöns Configuration Manager.
De lösningskonfigurationsegenskaper som lagras för varje projekt innehåller projektnamnet, projektkonfigurationsnamnet, flaggor för att ange om du vill skapa eller distribuera och plattformsnamn. Mer information finns i Lösningskonfiguration.
Användaren kan visa och ange konfigurationsparametrar för lösningen genom att välja lösningen i hierarkin (Solution Explorer) och öppna egenskapssidorna. På samma sätt kan du visa och ange projektkonfigurationsparametrar genom att välja ett projekt i Solution Explorer och öppna egenskapssidorna för projektet.
Användaren kan också skapa ett projekt med hjälp av versionskonfigurationsinställningar och allt det andra med felsökningskonfigurationsinställningar om det behövs. Mer information finns i Projektkonfiguration för att skapa.
Följande diagram visar hur gränssnitten som stöder lösnings- och projektkonfigurationer implementeras:
Konfigurationsgränssnitt
Några kommentarer som rör föregående diagram:
IDispatchhar markerats som valfritt i konfigurationsobjektet. Mer specifikt är det valfritt att ha konfigurationsgränssnitten för bläddra-objektet.IVsDebuggableProjectCfgär markerat som valfritt i konfigurationsobjektet, men krävs för debuggningssupport.IVsProjectCfg2är markerat som valfritt i konfigurationsobjektet, men behövs för stöd för utdatagruppering.Konfigurationsproviderobjektet är markerat som ett valfritt objekt, men alternativet är var det ska implementeras. Du kan implementera objektet på projektobjektet eller på ett separat objekt.
IVsCfgProvider2krävs för plattformsstöd och konfigurationsredigering.IVsCfgProviderräcker om du inte implementerar den funktionen.Vissa av de här objekten som visas i diagrammet som separata objekt kan kombineras till samma klass där det är praktiskt baserat på dina specifika designkrav. I andra avsnitt i det här avsnittet kommer dock de objekt och gränssnitt som är associerade med dessa objekt att diskuteras enligt scenariot som visas i diagrammet.
Vissa objekt implementeras separat. Projekt- och lösningsskapande sker till exempel på separata trådar och objektet för att hantera byggprocessen är separat från objektet som beskriver konfigurationen för byggandet.
Mer information om konfigurationsobjektgränssnitten och konfigurationsproviderns objektgränssnitt i föregående diagram finns i Projektkonfigurationsobjekt. Dessutom innehåller Projektkonfiguration för att skapa mer information om konfigurationsverktyget och gränssnitten för att skapa beroendeobjekt, och Projektkonfiguration för att hantera distribution beskriver ytterligare de gränssnitt som är kopplade till konfigurationsdistributions- och distributionsberoendeobjekten. Slutligen beskriver Projektkonfiguration för utdata utdatagruppen och utdataobjektgränssnitten och användningen av egenskapssidor för att visa och ange konfigurationsberoende egenskaper.