Introducción a las opciones de configuraciónConfiguration options overview

Los proyectos de Programa para la mejoraVisual Studio puede admitir varias configuraciones que pueden compilarse depurado, ejecución o implementadas.Projects in Programa para la mejoraVisual Studio can support multiple configurations that can be built, debugged, run, and/or deployed. Una configuración es un tipo de compilación que se describe con un conjunto de propiedades, normalmente modificadores de compilador y las ubicaciones de archivo.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, depurar y versión.By default, new solutions contain two configurations, Debug and Release. Estas configuraciones se pueden aplicar utilizando su configuración predeterminada, o puede 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 compilarse 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. Los proyectos no es necesario admitir varias configuraciones, sin embargo.Projects do not need to support multiple configurations, however. Si hay solo una 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 constan de dos partes: el nombre de configuración (como depurar o versión) y la configuración de plataforma.Configurations typically consist of two parts: the configuration name (such as Debug or Release) and the platform settings. Nombre de la configuración de la plataforma identifica el entorno que establecen los destinos de configuración, como 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 Programa para la mejoraVisual Studio no se puede crear una plataforma; debe elegir entre las selecciones un proyecto de VSPackage permite.Users of Programa para la mejoraVisual Studio cannot create a platform; they must choose from the selections a project VSPackage allows. Cuando un instalaciones de usuario un VSPackage, la plataforma de entrega creado durante el desarrollo del paquete pueden exponer cualquier nombre de la plataforma deseada 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 disponible 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, la cadena N/D se muestra 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. Es "no más de" 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 la configuración de las 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
DepurarDebug <Configuración de Win32 de depuración ><Debug Win32 settings> <Depurar opciones Win64 ><Debug Win64 settings>
ReleaseRelease <Configuración de Win32 de versión ><Release Win32 settings> <Configuración de Win64 versión ><Release Win64 settings>
MyConfigMyConfig N/DN/A <Configuración de MyConfig Win64 ><MyConfig Win64 settings>

Nota

No puede crear un MyConfig configuración de soluciones que excluye una plataforma de 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 compila, ejecutar, depurar o implementado en esa solución.Changing the active configuration for a solution selects the set of project configurations that is built, run, debugged, or deployed in that solution. Por ejemplo, si cambia la configuración de soluciones activas desde versión a depurar, todos los proyectos de esa solución se crean automáticamente con la configuración de los proyectos indicado 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 también se denominan depurar a menos que el usuario ha realizado cambios manuales en el Administrador de configuración del entorno.The projects' configurations are 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, nombre de la configuración de proyecto, las marcas para indicar si o no para compilar o implementar y 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 los parámetros de configuración de proyecto, seleccione un proyecto en el Explorador de soluciones y abrir las páginas de propiedades para 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 crear un proyecto con valores de configuración de la versión y el resto con los valores de configuración de depuración 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

Algunas notas relacionadas con el diagrama anterior:A few notes relating to the previous diagram:

  • IDispatch está marcado 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 exploración.Specifically, it is optional to have the configuration interfaces on the browse object.

  • IVsDebuggableProjectCfg está marcado como opcional en el objeto de configuración, pero es necesario para la compatibilidad con la depuración.IVsDebuggableProjectCfg is marked optional in the configuration object, but is required for debugging support.

  • IVsProjectCfg2 está marcado como 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.

  • El objeto de proveedor de configuración está marcado como un objeto opcional, pero la opción es dónde 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.

  • IVsCfgProvider2 es necesario para la compatibilidad con la plataforma y la edición de la configuración.IVsCfgProvider2 is needed for platform support and configuration editing. IVsCfgProvider es 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 cuando sea conveniente según los requisitos de diseño específico.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 tratará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 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 para 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 y las interfaces del objeto de proveedor de configuración en el diagrama anterior, consulte objeto de configuración de proyecto.For more 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 la dependencia de generador y compilación de la configuración de interfaces del objeto, y configuración del proyecto para administrar la implementación aún más describe 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 el grupo de resultados y las interfaces del 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

IVsCfgProvider2
Configuración del proyecto para la compilación Project configuration for building
Configuración de solucionesSolution configuration