Información general de opciones de configuraciónConfiguration Options Overview

Los proyectos de Visual StudioVisual Studio puede admitir varias configuraciones que se pueden compilar depurado, ejecución o implementado.Projects in Visual StudioVisual Studio can support multiple configurations that can be built, debugged, run, and/or deployed. Una configuración es un tipo de compilación se describe con un conjunto de propiedades, normalmente modificadores del compilador y ubicaciones de archivos.A configuration is a build type described with a named set of properties, typically compiler switches and file locations. De forma predeterminada, las nuevas soluciones contienen dos configuraciones, Debug y Release.By default, new solutions contain two configurations, Debug and Release. Estas configuraciones pueden aplicarse utilizando su configuración predeterminada, o modificar para cumplir sus requisitos específicos de la solución o proyecto.These configurations can be applied using their default settings, or modified to meet your specific solution and/or project requirements. Algunos paquetes pueden crearse de dos maneras: como un editor de ActiveX o como un componente en contexto.Some packages can be built in two ways: as an ActiveX editor or as an in-place component. Proyectos no es necesario admitir varias configuraciones, sin embargo.Projects do not need to support multiple configurations, however. Si hay una sola configuración, dicha configuración se asigna a todas las configuraciones de soluciones.If there is only one configuration available, that configuration is mapped into all of the solution configurations.

Las configuraciones que suelen estar formadas por dos partes: el nombre de configuración (como depuración o lanzamiento) y la configuración de plataforma.Configurations typically consist of two parts — the configuration name (such as Debug or Release) and platform settings. Nombre de la configuración de la plataforma identifica el entorno que establece el destino de la configuración, por ejemplo, una API o la plataforma del sistema operativo.A configuration's platform name identifies the environment that the configuration targets, such as an API set or operating system platform. Los usuarios de Visual StudioVisual Studio no se puede crear una plataforma; deben elegir desde las selecciones de un proyecto de VSPackage permite.Users of Visual StudioVisual Studio cannot create a platform; they must choose from the selections a project VSPackage allows. Cuando un usuario la instalación de un paquete VSPackage, la plataforma de entrega que se crea durante el desarrollo del paquete puede surgir cualquier nombre de la plataforma deseado según los criterios establecidos por el creador del paquete.When a user installs a VSPackage, the delivery platform created during development of the package can surface any platform name desired based on any criteria set by the package creator. El usuario puede seleccionar a continuación, en la lista de plataformas ponerse a disposición a través de VSPackage cuando se crean instancias de las páginas de propiedades.The user can then select from the list of platforms made available through the VSPackage when the property pages are instantiated.

Nombres de plataforma son opcionales, ya que no todos los proyectos admiten el concepto de plataformas.Platform names are optional since not all projects support the concept of platforms. Cuando una configuración no tiene un nombre de la plataforma, se muestra la cadena "N/A" en la interfaz de usuario.When a configuration lacks a platform name, the string "N/A" is displayed in the UI.

Cada solución tiene su propio conjunto de configuraciones, solo uno de los cuales puede estar activa simultáneamente.Each solution has its own set of configurations, only one of which can be active at a time. Una configuración de soluciones es un conjunto de no más de una configuración de cada proyecto.A solution configuration is a set of no more than one configuration from each project. El es "no supere" es debido a la opción para excluir un proyecto de una configuración de soluciones.The "no more than" stipulation is due to the option to exclude a project from a solution configuration. Los usuarios pueden crear sus propias configuraciones de solución personalizada.Users can create their own custom solution configurations.

En la tabla siguiente se muestra el programa de instalación de configuraciones típicas para un proyecto.The following table illustrates the typical configurations setup for a project. Las filas se etiquetan con nombres de configuración y las columnas con nombres de plataforma.The rows are labeled with configuration names and the columns with platform names.

Nombre de configuraciónConfiguration Name Plataforma: Win32Platform — Win32 Plataforma: Win64Platform — Win64
DepuraciónDebug <Depurar la configuración de Win32 ><Debug Win32 settings> <Depurar Win64 configuración ><Debug Win64 settings>
VersiónRelease <Opciones de configuración de Win32 ><Release Win32 settings> <Opciones de configuración de Win64 ><Release Win64 settings>
MyConfigMyConfig N/DN/A <Configuración de MyConfig Win64 ><MyConfig Win64 settings>

Nota

No se puede crear una configuración de solución de "MyConfig" que excluye una plataforma "Win32", a menos que el proyecto tiene como destino no es compatible con Win32.You cannot create a "MyConfig" solution configuration that excludes a "Win32" platform unless the project you are targeting does not support Win32.

Cambiar la configuración activa para una solución, selecciona el conjunto de configuraciones de proyecto que se generan, ejecutar, depurar o implementar en esa solución.Changing the active configuration for a solution selects the set of project configurations that are built, run, debugged or deployed in that solution. Por ejemplo, si cambia la configuración de soluciones activas de versión para la depuración, se generan automáticamente a todos los proyectos de esa solución con la configuración de los proyectos que se indica en la configuración de depuración de la solución.For example, if you change the active solution configuration from Release to Debug, all projects within that solution are automatically built with the projects' configuration indicated in the solution's Debug configuration. Las configuraciones de los proyectos suelen ser también depuración con nombre a menos que el usuario ha realizado cambios manuales en el Administrador de configuración del entorno.The projects' configurations are usually also named Debug unless the user has made manual changes in the environment's Configuration Manager.

Las propiedades de configuración de solución almacenadas para cada proyecto incluyen el nombre del proyecto, el nombre de la configuración de proyecto, el marcas para indicar si o no para compilar o implementar y el nombre de la plataforma.The solution configuration properties stored for each project include the project name, project configuration name, flags to indicate whether or not to build or to deploy, and platform name. Para obtener más información, consulte configuración de la solución.For more information, see Solution Configuration.

El usuario puede ver y establecer los parámetros de configuración de soluciones, seleccione la solución en la jerarquía (Explorador de soluciones) y abrir las páginas de propiedades.The user can view and set solution configuration parameters by selecting the solution in the hierarchy (Solution Explorer) and opening the property pages. De forma similar, puede ver y establecer parámetros de configuración de proyecto, seleccione un proyecto en el Explorador de soluciones y abrir las páginas de propiedades de ese proyecto.Similarly, you can view and set project configuration parameters by selecting a project in Solution Explorer and opening the property pages for that project.

El usuario también puede compilar un proyecto con opciones de configuración de la versión y el resto de configuración Debug si es necesario.The user can also build one project using Release configuration settings and all the rest with Debug configuration settings if necessary. Para obtener más información, consulte configuración del proyecto para compilar.For more information, see Project Configuration for Building.

El diagrama siguiente muestra cómo se implementan las interfaces que admiten las configuraciones de solución y proyecto:The following diagram shows how the interfaces that support solution and project configurations are implemented:

Gráfico de Interfaces de configuraciónConfiguration Interfaces graphic
Interfaces de configuraciónConfiguration interfaces

Unas anotaciones relacionadas con el diagrama anterior:A few notes relating to the previous diagram:

  • IDispatchse marcan como opcionales en el objeto de configuración.IDispatch is marked as optional in the Configuration Object. En concreto, es opcional para que las interfaces de configuración en el objeto de búsqueda.Specifically, it is optional to have the configuration interfaces on the browse object.

  • IVsDebuggableProjectCfgse marca el objeto de configuración es opcional, pero es necesario para la compatibilidad con la depuración.IVsDebuggableProjectCfg is marked optional in the Configuration Object, but is required for debugging support.

  • IVsProjectCfg2está marcado opcional en el objeto de configuración, pero es necesario para la salida de soporte técnico de agrupación.IVsProjectCfg2 is marked optional in the Configuration Object, but is needed for output grouping support.

  • La Config Provider objeto se marca como un objeto opcional, pero la opción es donde puede implementarla.The Config Provider object is marked as an optional object, but the option is where to implement it. Puede implementar el objeto en el objeto de proyecto o en un objeto independiente.You may implement the object on the project object or on a separate object.

  • IVsCfgProvider2es necesario para la compatibilidad con la plataforma y la edición de la configuración.IVsCfgProvider2 is needed for platform support and configuration editing. IVsCfgProvideres suficiente si no implementa esa funcionalidad.IVsCfgProvider is sufficient if you do not implement that functionality.

  • Algunos de estos objetos que se muestra en el diagrama como objetos independientes se pueden combinar en la misma clase en la práctica según sus requisitos de diseño específicas.Some of these objects shown in the diagram as separate objects can be combined into the same class where practical based on your specific design requirements. En otros temas de esta sección, sin embargo, los objetos e interfaces asociadas con esos objetos se analizarán según el escenario presentado en el diagrama.In other topics of this section, however, the objects and interfaces associated with those objects will be discussed according to the scenario presented in the diagram.

  • Algunos objetos que se implementan por separado.Certain objects are implemented separately. Por ejemplo, proyecto y solución compilación se producen en subprocesos independientes y el objeto que se va a administrar la vida de la compilación por separado desde el objeto que describe la configuración de la compilación.For example, project and solution building occur on separate threads and the object to manage the build lives separately from the object describing the configuration for the build.

    Para obtener más información sobre las interfaces del objeto de configuración e interfaces de objeto de proveedor de configuración en el diagrama anterior, vea objeto de configuración de proyecto.For further information on the Configuration Object interfaces and Configuration Provider Object interfaces in the previous diagram, see Project Configuration Object. Además, configuración del proyecto para compilar proporciona más información sobre las interfaces de generador de configuración y el objeto de dependencia de compilación, y configuración de proyecto de implementación de administración de Además se describen las interfaces conectadas al implementador de la configuración y los objetos de dependencia de implementación.In addition, Project Configuration for Building provides more information on the Configuration Builder and Build Dependency Object interfaces, and Project Configuration for Managing Deployment further describes the interfaces attached to the configuration deployer and deployment dependency objects. Por último, configuración del proyecto para la salida describe las interfaces de grupo de resultados y el objeto de salida y el uso de páginas de propiedades para ver y establecer las propiedades dependientes de la configuración.Finally, Project Configuration for Output describes the Output Group and Output Object interfaces, and the use of property pages to view and set configuration-dependent properties.

Vea tambiénSee Also

IVsCfgProvider2IVsCfgProvider2
Configuración del proyecto para una compilación Project Configuration for Building
Configuración de solucionesSolution Configuration