¿Visual Studio cambia automáticamente la configuración de depuración/liberación?

¿Visual Studio cambia automáticamente la configuración de depuración/liberación?

Hace una semana algo se rompió en mi Visual Studio.

AntesEstaba compilando la versión y depurando casi al mismo tiempo. Presioné F6para detener la depuración y compilar la versión de lanzamiento ("bin\Release"). Luego presione F5para iniciar la depuración, que por supuesto crea la versión de depuración ("bin\Debug") y la inicia. Mi flujo de trabajo fue muy fluido. Estuvo bien.

F6Menú desencadenante -> Construir -> Reconstruir solución (espero reconstruir la versión de lanzamiento)
F5Menú desencadenante -> Depurar -> Iniciar depuración (espero (construir y) ejecutar la versión de depuración)

DespuésAhora tengo que encontrar mi mouse, encontrar el cursor, navegar hasta el menú, activar la barra de herramientas "Estándar" (porque la tengo oculta, porque ocupa mi espacio vertical), luego cambiar a la versión de lanzamiento para compilar la versión de lanzamiento. Y si olvido volver a depurar, se está depurando en la versión. Es muy molesto. ¡Sin flujo de trabajo!

¿Cómo puedo volver a cambiarlo? Nunca me importaron las configuraciones en Visual Studio, ya que sé que la versión está optimizada y su ubicación. Y la depuración no se optimiza ni se revisa para que cuando ocurra una excepción, la aplicación se detenga. Me imagino que Visual Studio estaba cambiando las configuraciones automáticamente por mí. Ahora dejó de hacer eso. Quizás presioné las teclas de acceso directo equivocadas. Quiero volver.

Respuesta1

La forma en que funciona ahora es la forma en que Visual Studio ha estado funcionando durante muchos años.

Es completamente posible depurar la versión de lanzamiento. Lo he hecho muchas veces para encontrar un error que solo llegó en la versión de lanzamiento.

La depuración con F5solo creará la versión de depuración si el proyecto actual está depurado, pero creará la versión de lanzamiento si no.

Hay un caso en el que F5en el modo de lanzamiento se depurará la versión de depuración, y es cuando la depuración existente .exees más reciente que cualquier archivo fuente u objeto en el árbol de lanzamiento del proyecto, por lo que no es necesario volver a crearlo. Visual Studio no recuerda cómo creó el archivo .exe, por lo que su única preocupación son las marcas de tiempo.

En resumen, no es Visual Studio el que cambió, sino su entorno de trabajo. Debes tener cuidado al ejecutar el proyecto no sólo de lo que haces ahora, sino también de lo que se hizo antes.

Recomiendo encarecidamente dar nombres diferentes a las versiones de depuración y lanzamiento de .exe. Usar dos nombres distintos para las dos .exeversiones evitará el tipo de errores que está encontrando.

información relacionada