Notas de la versión 16.9 de Visual Studio 2019
Comunidad de desarrolladores | Requisitos del sistema | Compatibilidad | Código distribuible | Historial de versiones | Términos de licencia | Blogs | Novedades de la documentación de Visual Studio
Nota:
Esta no es la versión más reciente de Visual Studio. Para descargar la versión más reciente, visite el sitio de Visual Studio.
Novedades de Visual Studio 2019, versión 16.9
Período de tiempo de soporte técnico
Visual Studio 2019, versión 16.9, será la cuarta base de referencia de mantenimiento compatible de Visual Studio 2019. Se recomienda que aquellos clientes de Enterprise y Professional que necesiten adoptar un entorno de desarrollo estable y seguro a largo plazo estandaricen con esta versión. Como se explica con más detalle en el ciclo de vida y la directiva de compatibilidad, la versión 16.9 seguirá contando con correcciones y actualizaciones de seguridad hasta octubre de 2022. En octubre de 2022 se cumple un año de la publicación de Visual Studio 2019, versión 16.11, que se declaró como la base de referencia final de mantenimiento.
Además, ahora que la versión 16.9 está disponible, la versión 16.7, que era la última base de referencia de mantenimiento, contará con soporte técnico durante 12 meses adicionales y dejará de recibirlo en abril de 2022. Tenga en cuenta también que la versión 16.8 ya no cuenta con soporte técnico. Estas versiones intermediarias solo recibieron correcciones de mantenimiento hasta que se lanzó la siguiente actualización secundaria.
Puede adquirir la versión más reciente más segura de Visual Studio 2019 versión 16.9 en la sección de descargas de my.visualstudio.com. Consulte la versión más reciente de las notas de la versión o visite el sitio de Visual Studio para descargar la versión más reciente compatible de Visual Studio 2019. Para obtener más información sobre las líneas base con soporte técnico de Visual Studio, revise la Directiva de compatibilidad para Visual Studio 2019.
Versiones de Visual Studio 2019, versión 16.9
- 11 de octubre de 2022: Visual Studio 2019, versión 16.9.26
- 13 de septiembre de 2022 — Visual Studio 2019, versión 16.9.25
- 9 de agosto de 2022 — Visual Studio 2019, versión 16.9.24
- 12 de julio de 2022 — Visual Studio 2019, versión 16.9.23
- 14 de junio de 2022 — Visual Studio 2019, versión 16.9.22
- 10 de mayo de 2022 — Visual Studio 2019, versión 16.9.21
- 19 de abril de 2022: Visual Studio 2019, versión 16.9.20
- 12 de abril de 2022 — Visual Studio 2019, versión 16.9.19
- 8 de marzo de 2022: Visual Studio 2019, versión 16.9.18
- 8 de febrero de 2022: Visual Studio 2019, versión 16.9.17
- 11 de enero de 2022: Visual Studio 2019, versión 16.9.16
- 14 de diciembre de 2021: Visual Studio 2019, versión 16.9.15
- 16 de noviembre de 2021: Visual Studio 2019, versión 16.9.14
- 9 de noviembre de 2021: Visual Studio 2019, versión 16.9.13
- 12 de octubre de 2021: Visual Studio 2019, versión 16.9.12
- 14 de septiembre de 2021: Visual Studio 2019, versión 16.9.11
- 10 de agosto de 2021: Visual Studio 2019, versión 16.9.10
- 13 de julio de 2021: Visual Studio 2019, versión 16.9.9
- 15 de junio de 2021: Visual Studio 2019, versión 16.9.8
- 8 de junio de 2021: Visual Studio 2019, versión 16.9.7
- 18 de mayo de 2021: Visual Studio 2019, versión 16.9.6
- 11 de mayo de 2021: Visual Studio 2019, versión 16.9.5
- 13 de abril de 2021: Visual Studio 2019, versión 16.9.4
- 30 de marzo de 2021: Visual Studio 2019, versión 16.9.3
- 16 de marzo de 2021: Visual Studio 2019, versión 16.9.2
- 9 de marzo de 2021: Visual Studio 2019, versión 16.9.1
- 2 de marzo de 2021: Visual Studio 2019, versión 16.9.0
Notas de la versión archivadas de Visual Studio 2019
- Notas de la versión de Visual Studio 2019 16.8
- Notas de la versión de Visual Studio 2019 16.7
- Notas de la versión de Visual Studio 2019, versión 16.6
- Notas de la versión de Visual Studio 2019, versión 16.5
- Notas de la versión de Visual Studio 2019, versión 16.4
- Notas de la versión de Visual Studio 2019, versión 16.3
- Notas de la versión de Visual Studio 2019 16.2
- Notas de la versión de Visual Studio 2019 16.1
- Notas de la versión de Visual Studio 2019 16.0
Blog de Visual Studio 2019
El blog de Visual Studio 2019 es la fuente oficial de información sobre el producto de la mano del equipo de ingeniería de Visual Studio. Encontrará información detallada sobre las versiones de Visual Studio 2019 en las publicaciones siguientes:
- ¡Ya disponible! Visual Studio 2019 v16.9 y v16.10, versión preliminar 1
- Visual Studio 2019, versión preliminar 3, versión 16.9, está disponible desde hoy mismo.
- Versión preliminar 2 de Visual Studio 2019 v16.9 y los mejores deseos de año nuevo, todos para usted
- Visual Studio 2019, versión preliminar, versiones 16.8 y 16.9, está disponible desde hoy mismo.
- Características nuevas en Visual Studio 2019, versión 16.8, versión preliminar 3.1
- Nuevas características disponibles desde hoy en la versión preliminar 2 de Visual Studio 2019, versión 16.8
- Visual Studio 2019, versión preliminar 1, versiones 16.7 y 16.8, está disponible desde hoy mismo.
- Visual Studio 2019, versión preliminar 2, versión 16.7, está disponible desde hoy mismo.
- Nuevas y emocionantes actualizaciones relativas a la experiencia de Git en Visual Studio
- ¡Publicado hoy! Visual Studio 2019 v16.6 y v16.7 Preview 1
- Nuevas características de Visual Studio 2019, versión 16.6, versión preliminar 2
- Se ha publicado la versión 16.5 de Visual Studio 2019
- Este es el mejor momento para lanzar Visual Studio 2019, versión 16.4
- Visual Studio 2019 v16.4 Preview 2, Fall Sports, and Pumpkin Spice
- Compatibilidad con .NET Core y mucho más en Visual Studio 2019 versión 16.3: ¡actualice ahora!
- Se ha publicado la versión preliminar 2 de Visual Studio 2019 16.3 y la versión preliminar 2 de Visual Studio 2019 para Mac 8.3.
- Versión preliminar 1 de Visual Studio 2019 16.2 y 16.3 ya disponible
- Versión preliminar 2 de Visual Studio 2019 16.2
- Versión preliminar de Visual Studio 2019 16.1 y 16.2
- Visual Studio 2019: escribe código más rápido. Trabaje de forma más inteligente. Cree el futuro.
Visual Studio 2019, versión 16.9.26
Fecha de publicación: 11 de octubre de 2022
Problemas que se tratan en esta versión:
- Los administradores podrán actualizar el instalador de VS en una máquina cliente sin conexión desde un diseño sin actualizar VS.
Aviso de seguridad
- CVE-2022-41032 Vulnerabilidad de elevación de privilegios de .NET Existe una vulnerabilidad en los clientes de .NET 7.0.0-rc.1, .NET 6.0, .NET Core 3.1 y NuGet (NuGet.exe, NuGet.Commands, NuGet.CommandLine y NuGet.Protocol) por la que un actor malintencionado podría hacer que un usuario ejecutara código arbitrario.
Visual Studio 2019, versión 16.9.25
Aviso de seguridad
- CVE-2022-38013 Vulnerabilidad de denegación del servicio de .NET Existe una vulnerabilidad de denegación del servicio en ASP.NET Core 3.1 y .NET 6.0 por la que un cliente malintencionado podría provocar un desbordamiento de pila que podría ocasionar un ataque por denegación de servicio cuando un atacante envía una carga personalizada analizada durante el enlace de modelos.
Visual Studio 2019, versión 16.9.24
Fecha de publicación: 9 de agosto de 2022
Problemas que se tratan en esta versión:
- Actualiza Git para Windows a la versión 2.37.1.1 que soluciona CVE-2022-31012.
Aviso de seguridad
- CVE-2022-34716 Vulnerabilidad de divulgación de información de .NET Existe una vulnerabilidad de divulgación de información en .NET 6.0 y .NET Core 3.1 que podría dar lugar a un acceso no autorizado de información con privilegios.
- CVE-2022-31012 Ejecución remota de código Se puede engañar al instalador de Git para Windows para que ejecute un archivo binario que no es de confianza.
- CVE-2022-29187 Elevación de privilegios Los usuarios malintencionados pueden crear un directorio .git en una carpeta que sea propiedad de un superusuario.
- CVE-2022-35777Ejecución remota de código Vulnerabilidad de desbordamiento de montón en el analizador de archivos Fbx de la versión preliminar de Visual Studio 2022
- CVE-2022-35825 Ejecución remota de código Vulnerabilidad de OOBW en el analizador de archivos Fbx de la versión preliminar de Visual Studio 2022
- CVE-2022-35826Ejecución remota de código Vulnerabilidad de desbordamiento de montón en el analizador de archivos Fbx de la versión preliminar de Visual Studio 2022
- CVE-2022-35827 Ejecución remota de código Vulnerabilidad de OOBW de montón en el analizador de archivos Fbx de la versión preliminar de Visual Studio 2022
Visual Studio 2019, versión 16.9.23
publicada el 14 de junio de 2022
Problemas que se tratan en esta versión:
- Se ha actualizado LibraryManager para dar cabida a los cambios en la API de cdnjs.
Aviso de seguridad
- CVE-2022-30184 Vulnerabilidad de divulgación de información de .NET Existe una vulnerabilidad en .NET 6.0 y .NET Core 3.1 en NuGet donde se puede producir una pérdida de credenciales.
- CVE-2022-24513 Vulnerabilidad de elevación de privilegios Existe una posible vulnerabilidad de elevación de privilegios cuando el servicio de actualización de Microsoft Visual Studio analiza incorrectamente los datos de configuración locales.
Visual Studio 2019, versión 16.9.21
publicada el 10 de mayo de 2022
Problemas que se tratan en esta versión:
- Se ha actualizado la versión de Git para Windows consumida por Visual Studio y el componente opcional instalable a 2.36.0.1.
- Se ha corregido un problema con la integración de git, en el que si se extraen/sincronizan ramas que han divergido, la ventana de salida no mostraba una sugerencia localizada sobre cómo resolverlo.
Aviso de seguridad
CVE-2022-29117 Vulnerabilidad de denegación de servicio de .NET Existe una vulnerabilidad en .NET 6.0, .NET 5.0 y .NET Core 3.1 donde un cliente malintencionado puede manipular cookies y provocar una denegación de servicio.
CVE-2022-23267 Vulnerabilidad de denegación de servicio de .NET Core Existe una vulnerabilidad en .NET 6.0, .NET 5.0 y .NET Core 3.1, donde un cliente malintencionado puede provocar una denegación de servicio a través de asignaciones de memoria excesivas a través de HttpClient.
CVE-2022-29145 Vulnerabilidad de denegación de servicio de .NET Existe una vulnerabilidad en .NET 6.0, .NET 5.0 y .NET Core 3.1, donde un cliente malintencionado puede provocar una denegación de servicio cuando se analizan formularios HTML.
CVE-2022-24513 Vulnerabilidad de elevación de privilegios Existe una posible vulnerabilidad de elevación de privilegios cuando el servicio de actualización de Microsoft Visual Studio analiza incorrectamente los datos de configuración locales.
Visual Studio 2019, versión 16.9.20
Fecha de publicación: 19 de abril de 2022
Problemas que se tratan en esta versión:
- Se ha corregido la regresión de vctip.exe de la versión 16.9.19.
Visual Studio 2019, versión 16.9.19
Fecha de publicación: 12 de abril de 2022
Problemas que se tratan en esta versión:
Aviso de seguridad
CVE-2022-24765 Vulnerabilidad de elevación de privilegios Existe una posible vulnerabilidad de elevación de privilegios en Git para Windows, en la que las operaciones de Git podrían ejecutarse fuera de un repositorio mientras se busca un directorio de Git. Git para Windows ahora está actualizado a la versión 2.35.2.1.
CVE-2022-24767 Vulnerabilidad de secuestro de DLL Existe una posible vulnerabilidad de secuestro de DLL en el instalador de Git para Windows, cuando se ejecuta el desinstalador con la cuenta de usuario SYSTEM. Git para Windows ahora está actualizado a la versión 2.35.2.1.
CVE-2022-24513 Vulnerabilidad de elevación de privilegios Existe una posible vulnerabilidad de elevación de privilegios cuando el servicio de actualización de Microsoft Visual Studio analiza incorrectamente los datos de configuración locales.
Visual Studio 2019, versión 16.9.18
Fecha de publicación: 8 de marzo de 2022
Problemas que se tratan en esta versión:
Aviso de seguridad
CVE-2020-8927 Vulnerabilidad Existe una vulnerabilidad de ejecución remota de código en .NET 5.0 y .NET Core 3.1 donde existe un desbordamiento de búfer en las versiones de la biblioteca de Brotli anteriores a la 1.0.8.
CVE-2022-24464 Vulnerabilidad Existe una vulnerabilidad de denegación de servicio en .NET 6.0, .NET 5.0 y .NET CORE 3.1 al analizar determinados tipos de solicitudes de formulario http.
CVE-2022-24512 Vulnerabilidad Existe una vulnerabilidad de ejecución remota de código en .NET 6.0, .NET 5.0 y .NET Core 3.1 donde se produce una saturación del búfer de pila en la rutina de análisis doble de .NET.
CVE-2021-3711 Vulnerabilidad de desbordamiento de búfer de OpenSSL Existe una posible vulnerabilidad de desbordamiento de búfer en OpenSSL, que usa Git para Windows. Git para Windows ahora se ha actualizado a la versión 2.35.1.2, que soluciona este problema.
Visual Studio 2019, versión 16.9.17
Fecha de publicación: 8 de febrero de 2022
Problemas que se tratan en esta versión:
Aviso de seguridad
CVE-2022-21986 Vulnerabilidad Existe una vulnerabilidad de denegación de servicio en .NET 5.0 y .NET 6.0 cuando el servidor web de Kestrel procesa determinadas solicitudes HTTP/2 y HTTP/3.
CVE-2022-21871 Vulnerabilidad de elevación de privilegios del entorno de ejecución del recopilador estándar del concentrador de diagnósticos Existe una vulnerabilidad de elevación de privilegios si el recopilador estándar del centro de diagnósticos administra incorrectamente operaciones de datos.
Visual Studio 2019, versión 16.9.16
Publicada el 11 de enero de 2022
Problemas que se tratan en esta versión:
- Se ha corregido un bloqueo intermitente con link.exe al compilar proyectos grandes con Visual Studio 16.8.5 o posterior.
- Se ha corregido un problema por el que no se podían depurar aplicaciones varias veces cuando se usaba Terminal Windows como terminal predeterminado.
- Se ha corregido el programa de instalación para desbloquear clientes en configuraciones restringidas.
- Se ha corregido un problema que impedía que un cliente pudiera actualizar un programa previo de una versión más actual. Una vez que el cliente utilice el programa previo y el instalador que se han distribuido en enero de 2022 o en fechas posteriores, todas las actualizaciones que usen los programas previos siguientes deberían funcionar mientras dure el ciclo de vida del producto.
De Developer Community
Visual Studio 2019, versión 16.9.15
Fecha de publicación: 14 de diciembre de 2021
Problemas que se tratan en esta versión:
- Se ha agregado Python 3.9.7 a la carga de trabajo de Python. Se ha eliminado Python 3.7.8 debido a una vulnerabilidad de seguridad.
Aviso de seguridad
CVE-2021-43877 Vulnerabilidad Existe una vulnerabilidad de elevación de privilegios en ANCM que podría permitir la elevación de privilegios cuando las aplicaciones .NET Core, .NET 5 y .NET 6 se hospedan en IIS.
Visual Studio 2019, versión 16.9.14
fecha de publicación: 16 de noviembre de 2021
Problemas que se tratan en esta versión:
- Los programas de arranque ahora respetan el parámetro --useLatestInstaller, lo que hace que el instalador más reciente se integre en el diseño. Este instalador más reciente, que se incluye con Visual Studio 2022, habilita el escenario en el que las empresas quieren realizar la transición de sus clientes de una ubicación de diseño a otra. Para obtener más información, consulte la [Guía de administradores de Visual Studio](* Los programas previos ahora respetan el parámetro --useLatestInstaller, que hace que el instalador más reciente se integre en el diseño. Este instalador más reciente, que se incluye con Visual Studio 2022, permite que a las empresas realizar la transición de sus clientes de una ubicación de diseño a otra. Para obtener más información, consulte la Guía de administradores de Visual Studio).
Visual Studio 2019, versión 16.9.13
fecha de publicación: 09 de noviembre de 2021
Problemas que se tratan en esta versión:
- Se ha corregido un error que provocaba que desapareciera un vínculo de acceso directo del menú Inicio. El error solo se producía al actualizar varias instancias de SKU de producto diferentes en la misma máquina.
Aviso de seguridad
CVE-2021-42319 Vulnerabilidad de elevación de privilegios Existe una vulnerabilidad de elevación de privilegios en el proveedor WMI que se incluye en el instalador de Visual Studio.
CVE-2021-42277 Vulnerabilidad de elevación de privilegios del servicio recopilador estándar del concentrador de diagnósticos Existe una vulnerabilidad de elevación de privilegios cuando el recopilador estándar del centro de diagnósticos administra incorrectamente operaciones de archivo.
Visual Studio 2019, versión 16.9.12
fecha de publicación: 12 de octubre de 2021
Problemas que se tratan en esta versión:
- Actualizaciones de las interfaces ARM64 y ARM64EC entre el binario y el entorno de ejecución de instrumentación de POGO.
Aviso de seguridad
CVE-2021-41355 Vulnerabilidad de divulgación de .NET 5.0
Existe una vulnerabilidad de divulgación de información en .NET, en la que System.DirectoryServices.Protocols.LdapConnection envía credenciales en texto sin formato en Linux.
CVE-2020-1971 Vulnerabilidad de denegación de servicio de OpenSSL
Existe una posible vulnerabilidad de denegación de servicio en la biblioteca OpenSSL que Git consume.
CVE-2021-3449 Vulnerabilidad de denegación de servicio de OpenSSL
Existe una posible vulnerabilidad de denegación de servicio en la biblioteca OpenSSL que Git consume.
CVE-2021-3450 Vulnerabilidad de denegación de servicio de OpenSSL
Existe una posible omisión de marca en la biblioteca OpenSSL que Git consume.
Visual Studio 2019, versión 16.9.11
Fecha de publicación: 14 de septiembre de 2021
Problemas que se tratan en esta versión:
- Se ha corregido un error grave del compilador interno causado por estructuras sin nombre a cuyos campos se hace referencia desde anotaciones SAL.
- Se ha corregido un bloqueo poco frecuente al analizar código con plantilla en el que se usa __uuidof.
Aviso de seguridad
CVE-2021-26434 Vulnerabilidad de elevación de privilegios de asignación de permisos incorrecta de Visual Studio
Existe una vulnerabilidad de asignación de permisos en Visual Studio después de instalar Desarrollo de juegos con C++ y seleccionar la carga de trabajo Cliente de instalación del motor Unreal. El sistema es vulnerable a LPE durante la instalación, crea un directorio con acceso de escritura para todos los usuarios.
De Developer Community
- PreFast: Error irrecuperable C1001: Error interno del compilador
- Errores de compilación de WinARM64 con problemas de vínculos MFC/ATL después de migrar de VS 16.8.6 a VS 16.9.5
Visual Studio 2019, versión 16.9.10
Fecha de publicación: 10 de agosto de 2021
Problemas que se tratan en esta versión:
- Ya no se envían rutas de acceso en el disco al notificar qué extensiones están instaladas.
- Se ha corregido un bloqueo de IntelliSense que se producía al procesar miembros de datos estáticos en especializaciones de plantilla en clase.
- Se ha corregido un problema que afectaba a la ejecución de la línea de comandos del comando Actualizar. Si se produce un error en la actualización por primera vez, una emisión posterior del comando Actualizar ahora hace que la actualización reanude la operación anterior donde la dejó.
Aviso de seguridad
CVE-2021-26423 Vulnerabilidad de denegación de servicio de .NET Core
Existe una vulnerabilidad de denegación de servicio que engaña a las aplicaciones de servidor de .NET (Core) que proporcionan puntos de conexión de WebSocket para que se ejecuten indefinidamente en bucle al intentar leer un único marco WebSocket.
CVE-2021-34485 Vulnerabilidad de divulgación de información de .NET Core
Existe una vulnerabilidad de divulgación de información cuando la herramienta crea volcados para recopilar volcados de memoria y volcados a petición con permisos de lectura globales en Linux y macOS.
CVE-2021-34532 Vulnerabilidad de divulgación de información de ASP.NET Core
Existe una vulnerabilidad de divulgación de información en la que se registra un token JWT si no se puede analizar.
Visual Studio 2019, versión 16.9.9
Fecha de publicación: 13 de julio de 2021
Problemas que se tratan en esta versión:
- Se ha corregido un problema de ARM64X en el que Outlook se bloqueaba al usar complementos.
- Se ha corregido un problema en el que compilador de C++ realizaba incorrectamente conversiones if.
- Se ha corregido un problema de ASan con la compatibilidad en la última actualización de Windows.
- ASan ya no notifica un error de falsos positivos de superposición de regiones de memoria memcpy.
- Una plantilla de función con un parámetro de función sin nombre de tipo de matriz hizo que el analizador omitiera las definiciones de función posteriores, lo que produjo el error falso de constexpr de que una función no estaba definida al evaluar una llamada a ella en una expresión constante. La corrección vuelve a habilitar el análisis de la definición de función omitida.
- Se ha corregido el problema de rendimiento y los falsos positivos que provocaba una de las extensiones de comprobación que encuentra errores en el uso incorrecto de elementos VARIANT.
- Se ha corregido el problema de rendimiento provocado por una de las extensiones de comprobación que encuentra errores en el uso incorrecto de los valores de enumeración como índice.
- Se ha corregido una pérdida de memoria al compilar varias TU.
- El analizador de simultaneidad ya no debe generar advertencias falsas C26110 (error al adquirir bloqueo) con patrones de bloqueo automático.
- Esta corrección restaura el comportamiento de los encabezados externos omitiendo el análisis de estos y suprimiendo sus advertencias.
- Las comprobaciones de simultaneidad en el análisis de código son más inteligentes. Son más difíciles de engañar gracias a un flujo de control complejo.
- Se ha corregido un problema relacionado con la creación del diseño.
- Se ha corregido un problema por el que las actualizaciones podían producir un error debido a la falta de información del canal de actualización.
De Developer Community
- Developer Community tiene una lista completa de todos los elementos que se distribuyen en esta versión.
- Advertencias de bloqueo incorrectas del analizador C26110
- EnforceProcessCountAcrossBuilds emite advertencias de análisis de código en los encabezados del sistema
- Advertencia de Codeanalysis C6285 en functional.h de STL en VS 16.10, versión preliminar 4. Funcionaba en la versión 16.10, versión preliminar 2
- Functional(813) tiene la advertencia C6285
- Advertencia de C28301 en lmaccess.h/bcrypt.h
- Falso positivo de C33005 con _variant_t/VARIANT
- Mensajes de C28251 incorrectos en los encabezados de Microsoft después de la actualización a VS 2019 16.10
- Montones de advertencias C28251 y C28301 al ejecutar /analyze en código de C
Visual Studio 2019, versión 16.9.8
publicada el 15 de junio de 2021
De Developer Community
- Developer Community tiene una lista completa de todos los elementos que se distribuyen en esta versión.
- Address Sanitizer debe permitir el desencadenador de volcados de memoria sin el uso de una variable de entorno.
Visual Studio 2019, versión 16.9.7
publicada el 8 de junio de 2021
Problemas que se tratan en esta versión:
- Se ha corregido un error en el clonador de instrucciones de SSA.
- Se ha corregido un problema que provocaba un bloqueo de mspdbcore.dll.
- Se ha corregido una compilación de larga duración/tiempo de espera de las bases de código del cliente.
- Se ha corregido un problema que impedía a los desarrolladores compilar en PyTorch.
- Se ha corregido un error MSBuild interno (MSB0001) que se produjo cuando se compiló un código base de gran tamaño con un proceso de MSBuild.exe de 32 bits.
- Se ha corregido un problema en la Ventana de herramientas de contenedor que provocaba un bloqueo de Visual Studio 2019 cuando los desarrolladores intentaban ver los puertos asignados y, después, cambiaban a otro contenedor.
Aviso de seguridad
CVE-2021-31957 Vulnerabilidad de denegación de servicio de ASP.NET
Existe una vulnerabilidad de denegación de servicio cuando ASP.NET Core controla la desconexión del cliente de forma incorrecta.
De Developer Community
Estos son algunos de los problemas con más votos publicados en la versión 16.9.7:
Visual Studio 2019, versión 16.9.6
Fecha de publicación: 18 de mayo de 2021
Problemas que se tratan en esta versión:
- Se corrige el error "No se puede obtener acceso al objeto eliminado. Nombre del objeto: 'System.Net.Http.StringContent'" al intentar crear un certificado o ejecutar el aprovisionamiento automático.
- Se ha corregido un problema que impide que la característica Reinicio rápido de iOS funcione correctamente.
De Developer Community
Estos son algunos de los problemas con más votos publicados en la versión 16.9.6:
- Se genera un código incorrecto con /O2
- Error al agregar la cuenta de desarrollador de Apple: el servicio de autenticación no está disponible
- error irrecuperable C1001: Error del compilador interno (archivo de compilador 'D:\a01_work\4\s\src\vctools\Compiler\Utc\src\p2\main.c', line 213)
- VS 16.9.5 no puede implementar una aplicación de iOS
Visual Studio 2019, versión 16.9.5
Fecha de publicación: 11 de mayo de 2021
Problemas que se tratan en esta versión:
- Se ha corregido un problema que hacía que las herramientas de Office no funcionaran de la manera esperada al usar exportaciones.
- Se ha corregido un bloqueo de Visual Studio 2019 que se producía durante determinadas llamadas virtuales entre archivos DLL x64 y ARM64EC.
- Se ha resuelto un falso positivo al ejecutar código instrumentado por ASan multiproceso.
- Se ha corregido un error del proyecto que indicaba que HRESULT E_FAIL se había devuelto desde una llamada al componente COM.
- Corrige un problema al abrir un archivo de C++ al inicio que, en ocasiones, hacía que Visual Studio 2019 dejara de responder.
- Se ha corregido un problema con la configuración de archivos de CmakeSettings.json que hacía que la nueva configuración no se conservara.
- Se ha corregido un error interno del compilador provocado por el análisis de un archivo de código fuente cuando la ruta de acceso del archivo contenía uno o varios caracteres no ASCII.
- Se ha corregido un problema al abrir archivos de cobertura donde una biblioteca tenía varias entradas en el archivo de cobertura de código.
- Se ha corregido un error que hacía que a los clientes que iniciaban sesión con cuentas que no son de trabajo con Escritorio remoto habilitado se les podía denegar el acceso.
- Se ha corregido un error que hacía que Visual Studio 2019 se bloqueara cuando los desarrolladores personalizaban sus menús y hacían clic en un separador en el cuadro de diálogo de personalización.
- Las ventanas de documentos flotantes se restauran al abrir una solución.
- Se ha corregido un problema que hace que las actualizaciones no se apliquen cuando un administrador crea un diseño de Visual Studio para implementar actualizaciones. La actualización de la máquina cliente no se aplica dado que el diseño ha cambiado de ubicación.
- Se ha corregido un problema que hacía que una compilación de proyecto con la implementación rápida habilitada no se completara o que la implementación tardara mucho tiempo.
- Se ha agregado compatibilidad con Xcode 12.5.
- Se ha corregido un problema que hace que las actualizaciones no se apliquen cuando un administrador crea un diseño de Visual Studio para implementar actualizaciones. La actualización de la máquina cliente no se aplica dado que el diseño ha cambiado de ubicación.
Aviso de seguridad
CVE-2021-27068 Posible RCE al colocar python.exe en una carpeta anidada
Existe una vulnerabilidad en la ejecución remota de código al abrir un área de trabajo con código de Python y esa área de trabajo contiene un archivo python.exe en una subcarpeta de scripts.
CVE-2021-31204 Vulnerabilidad de elevación de privilegios de .NET Core
Existe una vulnerabilidad de elevación de privilegios en .NET 5.0 y .NET Core 3.1 cuando un usuario ejecuta una aplicación de archivo único en sistemas operativos basados en Linux o macOS.
De Developer Community
Estos son algunos de los problemas con más votos publicados en la versión 16.9.5:
- Visual Studio no restaura los documentos abiertos anteriores al cargar una solución si se cierra con ventanas flotantes.
- C26497 incorrecto: La función "fun" podría marcarse como constexpr
- CMakeSettings.json no cambia las variables al usar el cuadro de diálogo.
- Al hacer clic en el divisor en el editor de la barra de herramientas, Visual Studio 2019 se bloquea.
- La compilación de un proyecto de enlace de Xamarin iOS ya no funciona en Visual Studio v16.9.
- Mensaje: Se ha producido un error al activar el servidor de lenguaje remoto.
- Desde la actualización a la versión 16.9.2. aparece un error sobre el servidor de lenguaje remoto.
- [acepta no válido] msvc aceptará [[maybe_unused]] en una ubicación no válida
- Visual Studio v16.9 link.exe se cierra con 57009.
- Error de generación de código en la optimización.
- Error al agregar la cuenta de desarrollador de Apple: el servicio de autenticación no está disponible.
- El entorno de ejecución de ASAN provoca AV aleatorios en windows.storage.dll.
- No se pudo cargar la extensión de Visual Studio.
- La actualización de Visual Studio 2019 a 16.9.4 provoca un error de compilación o vínculo.
- Se ha interrumpido la compilación incremental de MsBuild 16.9.
- Visual Studio se bloquea al intentar personalizar una barra de herramientas.
Visual Studio 2019, versión 16.9.4
fecha de publicación: 13 de abril de 2021
Problemas que se tratan en esta versión:
- Se ha corregido un error de SFINAE que provocaba un error con algunos formularios de nombres de plantilla en clases base no dependientes.
- Se ha corregido el caso en el que IntelliCode intentaba registrar información en un directorio temporal y se le denegaba el acceso.
- Se ha resuelto un problema por el que Visual Studio veía limitadas algunas funcionalidades cuando también había instalado software de administración de privilegios de terceros.
- Se ha corregido un problema que provocaba que los clientes iniciasen repetidamente la depuración en Xbox y se consumiesen más recursos de kernel. Al final, era necesario reiniciar la Xbox, por lo que se perdían los estados.
- Se ha solucionado un error al depurar código nativo con compilaciones de Insider Preview de Windows.
- Se ha corregido un error de accesibilidad con el foco del teclado.
- Se han agregado las plantillas de Xamarin que faltaban (Biblioteca de clases de iOS y Android, Biblioteca de enlaces de iOS y Android, Android Wear y Xamarin.UITest) en el cuadro de diálogo Nuevo proyecto. Estas plantillas estaban ocultas por error.
- En el caso de los proyectos basados en CMake de C++ que tienen como destino Linux mediante una conexión SSH, el directorio de destino especificado en
CMakeSettings.json
por la propiedadremoteCMakeListsRoot
, se ha restablecido al comportamiento anterior en VS 16.8, en el que el destino de la copia correspondía con la raíz del directorio de origen. Puede ver más información en La conexión a la máquina Linux remota usa una ruta de acceso de destino incorrecta.
Aviso de seguridad
CVE-2021-27064 Vulnerabilidad de elevación de privilegios del Instalador de Visual Studio
Hay una vulnerabilidad de ejecución de código remoto presente cuando el instalador de Visual Studio ejecuta el cliente de comentarios en un estado elevado.
CVE-2021-28313 / CVE-2021-28321 / CVE-2021-28322Vulnerabilidad de elevación de privilegios del Servicio recopilador estándar del concentrador de diagnósticos
Existe una vulnerabilidad de elevación de privilegios cuando el recopilador estándar del centro de diagnósticos administra incorrectamente operaciones de datos.
De Developer Community
Estos son algunos de los problemas con más votos publicados en la versión 16.9.4:
- La actualización a Visual Studio 16.8 rompió las dependencias de vinculación de proyectos de MakeFile.
- Se muestra el error "The 'Environment Package Window Management' package did not load correctly" (El paquete "Administración de ventanas de paquetes de entorno" no se ha cargado correctamente.) al iniciar Visual Studio 16.9 después de la actualización.
- Regresión del conjunto de herramientas 16.9, vcxproj genera bibliotecas estáticas: el archivo PDB ya no se copia en la salida.
- Visual Studio se bloquea al depurar Win32.
- La conexión a la máquina Linux remota usa una ruta de acceso de destino incorrecta.
- No encuentro la plantilla de biblioteca de enlaces de Android de Xamarin en Visual Studio 2019.
- No he podido iniciar Visual Studio debido a un error: System.InvalidOperationException: Controller is not responding to incoming requests (El controlador no responde a solicitudes internas.).
- Error de SFINAE: "Failed to specialize alias template" (No se pudo especializar la plantilla de alias) en Visual Studio 2019 16.9.
- ASAN no es compatible con RTC.
- Después de actualizar a la versión de Visual Studio 2019, recibo este error en el editor.
Visual Studio 2019, versión 16.9.3
Fecha de publicación: 30 de marzo de 2021
Problemas que se tratan en esta versión:
- Se ha solucionado un bloqueo en MSBuild que se producía al intentar compilar una solución con MSBuild.exe que contenía un proyecto de sitio web.
- Se ha solucionado un escenario de bloqueo causado por algunas dependencias de ServiceHub.
- Se ha solucionado un problema de bloqueo en el que los usuarios de la herramienta de diagnóstico visual XAML en Xbox o de los dispositivos IoT no estaban permitidos para la depuración remota.
De Developer Community
Estos son algunos de los problemas con más votos publicados en la versión 16.9.3:
- Ha habido un error en web.config.
- Hay que seleccionar un perfil de publicación antes de publicar
- Después de actualizar de la versión 16.8 a la 16.9, ServiceHub.Host.CLR.X86 deja de funcionar
- La versión 16.9.2 de Visual Studio 2019 se bloquea al abrir el editor de XAML.
- Problemas con la actualización más reciente de Visual Studio 2019
Visual Studio 2019, versión 16.9.2
Fecha de publicación: 16 de marzo de 2021
Problemas que se tratan en esta versión:
- Se ha publicado una actualización de los nombres de los punteros de función global para ARM64X.
- Se ha publicado una corrección para extraer el primer OBJ de una biblioteca de ARM64X con link -lib -extract.
- Se ha corregido un error que causaba que el código compilado con Address Sanitizer y optimizaciones podía producir una generación de código no válido y provocar un bloqueo en Visual Studio 2019.
- Se ha corregido un bloqueo causado por agregar funciones a través del editor de cuadros de diálogo en el editor de recursos.
- Ya no será necesario quitar Nuget.org dos veces como origen de paquete.
- Se ha mejorado el rendimiento del análisis de paquetes NuGet.
- Se ha corregido un mensaje de error sobre las API en desuso que recibía el cliente al utilizar el nodo de Azure SQL Database en el Explorador de servidores.
- Se ha corregido un problema que causaba un mensaje de error que indicaba que CascadePackage no se había cargado correctamente.
- Se ha corregido un problema que provocaba un error en la implementación de un proyecto de compilación con la implementación rápida habilitada, o bien que tardara más tiempo.
- Se ha corregido un problema que provocaba que la recarga activa mostrara los cambios guardados en el modo "Página completa".
- Se ha corregido un problema con la recarga activa que causaba que el árbol visual dinámico no funcionara o se aplicaran cambios.
De Developer Community
Estos son algunos de los problemas con más votos publicados en 16.9.2:
- A veces, el escape ya no cancela el cuadro de diálogo de búsqueda insertado en C#.
- Una aplicación de Xamarin.Forms implementada con el reinicio activo causa el bloqueo del iPhone.
- El Generador de perfiles de rendimiento informa de una duración de sesión incorrecta.
- La recarga activa de Xamarin.Forms no funciona desde VS 2019 16.9.0.
Visual Studio 2019, versión 16.9.1
Fecha de publicación: 9 de marzo de 2021
Aviso de seguridad
CVE-2021-21300 Vulnerabilidad de ejecución remota de código de Git para Visual Studio
Hay una vulnerabilidad de ejecución remota de código cuando Visual Studio clona un repositorio malintencionado.
CVE-2021-26701 Vulnerabilidad de ejecución remota de código de .NET Core
Existe una vulnerabilidad de ejecución de código remoto en .NET 5 y .NET Core debido a la forma en que se realiza la codificación de texto.
Problemas que se tratan en esta versión:
- Corrección para la emisión de metadatos de ARM64EC incorrectos a OBJ.
- Se corrigió un problema por el que C++ con FixIts activado, que es la opción predeterminada, mostraba subrayados ondulados de error al abrir el código.
- En algunos casos, C++ IntelliSense intenta utilizar un número muy elevado de rutas de acceso de inclusión y deja de responder.
- Mayor estabilidad de Live Share en escenarios de C++.
- Se corrigió un problema por el que IntelliCode detendría la carga de símbolos.
- Mejora el tiempo de carga y cierre de la solución en los escenarios en los que los usuarios tienen activado el nuevo editor experimental de Razor.
- Se corrigió un escenario de bloqueo en ServiceHub que podría producirse después de abrir el cuadro de diálogo de extensiones y actualizaciones y, a continuación, cerrar Visual Studio.
- Se ha corregido un error que emitía un mensaje de que no había actualizaciones disponibles al buscarlas en máquinas más lentas.
- Mejora el rendimiento del inicio de proyectos WAP desde Visual Studio durante cambios incrementales.
- Se ha corregido un problema por el que se producía un error de inicio de la instalación al usar la configuración regional italiana.
- Se ha corregido un escenario de actualización en el que el instalador dejaba de responder durante mucho tiempo al inicializar la caché de la plantilla de .NET Core.
De Developer Community
Estos son algunos de los problemas con más votaciones en 16.9.1:
- El optimizador elimina erróneamente el código activo
- -d1initall11 está causando C26019
- La instalación tarda mucho tiempo en completarse durante la actualización a Visual Studio 2019 16.9
Visual Studio 2019, versión 16.9.0
Fecha de publicación: 2 de marzo de 2021
Resumen de las novedades de esta versión de Visual Studio 2019 16.9.0
C++
- AddressSanitizer:
- Nuestra compatibilidad con Address Sanitizer en Windows ha dejado de ser experimental y ha alcanzado la disponibilidad general.
- Se expandió la compatibilidad con RtlAllocateHeap, se corrigió un problema de compatibilidad con los interceptores RtlCreateHeap y RtlAllocateHeap al crear bloques de memoria ejecutables.
- Se agregó compatibilidad con la familia de funciones de memoria heredadas GlobalAlloc y LocalAlloc. Puede habilitar estos interceptores con
ASAN_OPTIONS=windows_hook_legacy_allocators=true
. - Se actualizaron los mensajes de error de los errores de intercepción e intercalación de la memoria oculta para que los problemas y las resoluciones sean explícitos.
- La integración del IDE ahora puede controlar la colección completa de excepciones que ASan puede informar.
- El compilador y el enlazador le sugerirán emitir información de depuración si se detecta que está realizando una compilación con ASan pero no emite información de depuración.
- Ahora puede establecer como destino la versión de LLVM del entorno de ejecución de OpenMP con el modificador de CL /openmp:llvm nuevo. Esto agrega compatibilidad con la cláusula lastprivate en las secciones #pragma omp y las variables de índice no asignadas en paralelo para bucles. Actualmente, el modificador /openmp:llvm solo está disponible para el destino amd64 y sigue siendo experimental.
- Los proyectos de CMake de Visual Studio ahora tienen compatibilidad de primera clase con el desarrollo remoto de Windows. Esto incluye la configuración de un proyecto de CMake con Windows ARM64 como destino, la implementación del proyecto en una máquina remota Windows y la depuración del proyecto en una máquina remota Windows desde Visual Studio.
- La versión de Ninja que se incluye con Visual Studio en Windows se actualizó a la versión 1.10. Consulte las notas de la versión de Ninja 1.10 para ver detalles de lo que incluye.
- La versión de CMake que se incluye con Visual Studio se actualizó a la versión 3.19. Consulte las notas de la versión de CMake 3.19 para ver detalles de lo que incluye.
- Varios tipos de bloqueo o protección en STL se marcaron como nodiscard: https://github.com/microsoft/STL/pull/1495
- IntelliSense:
- Se mejoró la estabilidad y la funcionalidad de la provisión de módulos importados y la finalización de unidades de encabezado en IntelliSense.
- Se agregó la opción "Ir a definición" en las importaciones de módulo, compatibilidad de indexación para exportación { … } y una referencia de módulo más precisa para los módulos con el mismo nombre.
- Se mejoró el cumplimiento del lenguaje de IntelliSense de C++ al agregar compatibilidad con la inicialización de copias de elementos temporales en la inicialización directa de referencias, __builtin_memcpy y __builtin_memmove, corrección de incoherencias entre las funciones constexpr y consteval, elementos temporales de duración extendida en expresiones constantes y tipos similares y enlace de referencias.
- Se agregó la finalización para make_unique, make_shared, emplace y emplace_back, lo que proporciona una finalización en función del parámetro de tipo especificado.
- MSVC ahora determina los tiempos de ejecución correctos de AddressSanitizer que se requieren para los archivos binarios. El proyecto de Visual Studio obtendrá automáticamente los nuevos cambios. Al usar AddressSanitizer en la línea de comandos, ahora solo tiene que pasar /fsanitize=address al compilador.
- Connection Manager de Visual Studio ahora admite claves privadas mediante el algoritmo de clave pública ECDSA.
- Se han actualizado a v11 las versiones de LLVM y Clang incluidas en nuestro instalador. Lea las notas de la versión de LLVM y Clang para obtener más información.
- Visual Studio ahora usará variables de CMake de archivos de cadena de herramientas para configurar IntelliSense. Esto proporcionará una mejor experiencia para el desarrollo integrado y de Android.
- Implementación de la propuesta Más contenedores Constexpr, que permite que los destructores y las nuevas expresiones sean constexpr. Esto allana el camino para utilidades como std::vector y std::string constexpr.
- Soporte extendido para módulos de C++20 IntelliSense, incluidos Ir a definición, Ir a módulo y finalización de miembros.
- Ahora se admiten plantillas de función abreviadas en el compilador MSVC.
Javascript/TypeScript
- La compatibilidad con la depuración de JavaScript/TypeScript de WebView2 basada en Edge Chromium ahora está disponible para aplicaciones como los proyectos WPF, WinForms y WinUI 3. Para habilitarla, seleccione el depurador de JavaScript en el cuadro de diálogo Propiedades del proyecto. Aquí puede encontrar detalles sobre cómo empezar a usarla.
Debugger
- Se ha agregado un nuevo analizador automático que inspecciona los subprocesos en busca de interbloqueos.
- Incorporación de un nuevo analizador automático que inspecciona la cola del finalizador de .NET Core y detecta objetos potencialmente bloqueadores.
- Visual Studio ahora filtra los fotogramas repetitivos redundantes de la pila de llamadas cuando el depurador se detiene en una excepción de StackOverflow. Ahora es posible ver la base de la pila en la que se originó una recursividad infinita, lo que esperamos que facilite la investigación de este tipo de errores.
Generador de perfiles
- Se ha agregado un nuevo escenario de instrumentación dinámica que es más rápido (no requiere VSInstr) y permite instrumentar las aplicaciones de .NET Core sin necesidad de PDB.
F# y herramientas de F#
Esta versión tiene varias características de productividad y mejoras de rendimiento para las herramientas de F# para Visual Studio:
- Compatibilidad con FSI de .NET Core
- Ayuda para la firma para aplicaciones de funciones
- 14 nuevas revisiones rápidas
- Correcciones significativas de rendimiento y capacidad de respuesta para las herramientas de F#
Puede leer sobre ellas en la actualización de F# y las herramientas de F# para Visual Studio 16.9 o las notas de la versión del producto.
- Ahora existe la finalización de IntelliSense para los símbolos del preprocesador.
- En el Explorador de soluciones ahora se muestran los nuevos generadores de código fuente de .NET 5.0.
- "Ir a todo" no mostrará resultados duplicados en netcoreapp3.1 y netcoreapp2.0.
- "Información rápida" ahora muestra los identificadores de advertencia del compilador o números para supresión.
- Las directivas using ahora se agregarán automáticamente al copiar y pegar tipos en un archivo nuevo.
- Al pulsar
;
para aceptar un método de una lista de finalización, ahora IntelliSense insertará automáticamente los paréntesis junto con un punto y coma para la creación de objetos y las llamadas de métodos. - Coloración semántica para registros de C# 9.0.
- Refactorización que quita descartes innecesarios.
- Refactorización que convierte una cadena literal y normal en una cadena interpolada manteniendo las llaves que estaban diseñadas para ir en la salida.
- Corrección de código en Visual Basic que quita la palabra clave shared al convertir métodos compartidos en un módulo.
- Una refactorización que sugiere el uso de
new(…)
en escenarios no conflictivos. - Una corrección de código que quita expresiones de igualdad redundantes tanto para C# como para Visual Basic.
- Los analizadores del estilo de código de .NET (IDE) se pueden aplicar ahora en la compilación
- Syntax Visualizer muestra el color de primer plano actual para mejorar los colores.
- Nueva información sobre herramientas al mantener el mouse sobre el identificador de diagnóstico para advertencias pragma.
- Ahora, al escribir la tecla RETORNO desde dentro de un comentario, la nueva línea se comenta automáticamente
- Mejoras de sugerencias de nombre de parámetro insertado
- Depuración de .NET Core con WSL 2
Indicaciones de audio del Explorador de pruebas y actualizaciones de accesibilidad
- Ahora puede configurar indicaciones de audio con el Explorador de pruebas, el menú "Agrupar por" es más accesible para los lectores de pantalla y la visualización de las salidas de pruebas largas se simplificó con vínculos en los que se puede hacer clic para abrir los archivos de registro de manera directa.
Actualizaciones del editor de Razor experimental
- Coloración semántica HTML y C#
- Cambios de nombre de símbolos C# reflejados en archivos de Razor cerrados
- Más bombillas de C# en archivos de Razor
- Mejoras adicionales en el formato de contenido mixto de archivos de Razor
- Implemente las aplicaciones de Steeltoe en Azure Spring Cloud mediante Publicar de Visual Studio (por ejemplo, haga clic con el botón derecho > Publish in Solution Explorer) (Publicar en el Explorador de soluciones).
- Mejor compatibilidad de .NET con Azure App Configuration como un servicio conectado
- Administre las opciones de configuración y las marcas de característica de la aplicación integrando Azure App Configuration como servicio conectado
Herramientas XAML (WPF, WinUI, UWP y Xamarin.Forms)
Herramientas de MVVM
- Compatibilidad con MVVM mejorada: en esta versión, hemos introducido bombillas en el editor XAML para generar propiedades y comandos en los modelos de vista disponibles. También hemos agregado bombillas para ayudar a establecer el contexto de la información de diseño en XAML en los modelos de vista disponibles para mejorar el enlace de IntelliSense.
Xamarin.Forms
En esta versión hemos realizado varias mejoras para los desarrolladores de Xamarin.Forms:
El modo "solo cambios" de Recarga activa de XAML es ahora el valor predeterminado para los proyectos de Xamarin.Forms 5.x: A partir de Visual Studio 16.9, el modo "solo cambios" es ahora la experiencia predeterminada de Recarga activa de XAML para los proyectos que tienen como destino Xamarin.Forms 5.x o posterior. Los proyectos que tienen como destino 4.x recurrirán automáticamente a la Recarga activa de XAML de "página completa", ya que "solo cambios" es compatible únicamente con Xamarin.Forms 5.x o una versión más reciente. Si usa Xamarin.Forms 5.x y desea usar el modo de recarga activa "página completa" anterior por algún motivo, puede hacerlo si va a la configuración de recarga activa en Herramientas > Opciones > Depuración > Recarga activa.
Actualizaciones del estado de recarga activa de XAML en la ventana de salida: los clientes de Xamarin.Forms que usan Recarga activa de XAML ahora pueden ver más detalles sobre lo que sucede con la canalización de Recarga activa de XAML mediante la ventana de salida. Para empezar, abra la ventana de salida con Ver > Salida y seleccione Recarga activa de Xamarin en Mostrar resultados desde en la parte superior de la ventana.
- Xamarin.Forms + UWP: se ha resuelto la excepción System.ExecutionEngineException: con el lanzamiento de Visual Studio 2019, versión 16.8, introdujimos involuntariamente una excepción del entorno de ejecución que desencadenaría errores del tipo System.ExecutionEngineException cuando los desarrolladores depurasen una aplicación de Xamarin.Forms que tuviese como destino Windows (UWP). A partir de esta versión (16.9, Preview 4), y en combinación con una actualización para NuGet Microsoft.NETCore.UniversalWindowsPlatform (versión 6.2.12 y posteriores), este problema ya debería estar resuelto. Nota: Esta corrección no es solo para Visual Studio 2019 versión 16.9. Si actualiza los proyectos para usar el nuevo paquete NuGet, también debería resolverse este problema para Visual Studio, versión 16.9.
Herramientas para Unity
- Vea objetos de juego raíz durante la depuración en el nuevo nodo de la escena activa de la ventana de variables locales.
- Vea todos los componentes de un objeto GameObject durante la depuración en el nodo nuevo GameObject de la ventana de variables locales.
- Vea todos los objetos y componentes de juego secundarios mediante los nodos de elementos secundarios y componentes de la ventana de variables locales.
- Vea la ubicación de un objeto GameObject en la escena al inspeccionar en la propiedad de la escena activa.
- Compatibilidad con JobEntityBatch/Lambdas al usar entidades con generadores de código fuente.
- Se ha mejorado la compatibilidad para la visualización de matrices de gran tamaño mediante el uso de cubos de índices.
- Resaltado de sintaxis para los sombreadores en el seguimiento de rayos, archivos UXML y USS.
- Visual Studio ahora detectará los componentes que faltan y le pedirá que los instale al usar proyectos de Unity.
- Actualización de la API de mensajes de Unity para todos los métodos utilizados como corrutinas.
- Se ha actualizado la marca Características en versión preliminar para la nueva experiencia de usuario de Git con un vínculo de comentarios integrado que le dirige directamente al equipo del producto.
- En las páginas Inicio y Conectar de Team Explorer se muestra contenido detallado para realizar la transición a la nueva experiencia de usuario de Git.
- Compatibilidad con los remotos personalizados en notificaciones de inserción de rama.
- Doble clic en una rama en la ventana del repositorio de Git para la restauración.
- Confirmación de los cambios con el método abreviado de teclado CTRL+ENTRAR.
- Inserte todas las etiquetas de la ventana Cambios de Git.
- El Instalador de Visual Studio ya no se eleva en el inicio
- El Instalador de Visual Studio ahora admite pantallas HDR
- El Instalador de Visual Studio admite el lector de pantalla del navegador
- Las actualizaciones del instalador se han simplificado en la actualización de Visual Studio
- El Instalador de Visual Studio agrega compatibilidad con el tema oscuro
Detalles de las novedades de Visual Studio 2019, versión 16.9.0
Productividad de Git
- Confirmación de los cambios con el método abreviado de teclado CTRL+ENTRAR
- Inserte todas las etiquetas de la ventana Cambios de Git.
Productividad de .NET
- La depuración de .NET Core con WSL 2 le permite ejecutar y depurar la consola de .NET Core y las aplicaciones web en WSL 2 desde Visual Studio. Esto permite a los desarrolladores de Windows que tienen como destino entornos de producción de Linux tener una experiencia de depuración local de mayor fidelidad.
- Ahora hay una refactorización que sugiere el uso de
new(…)
en escenarios no conflictivos. Coloque el cursor en la declaración de campo. Presione (Ctrl+. ) para activar los menús Acciones rápidas y refactorizaciones. Seleccione Usar ‘new(…)’.
- Ahora hay una corrección de código que quita expresiones de igualdad redundantes tanto para C# como para Visual Basic. Coloque el cursor en la expresión de igualdad redundante. Presione (Ctrl+. ) para activar los menús Acciones rápidas y refactorizaciones. Seleccione Remove redundant equality (Quitar igualdad redundante).
- Los analizadores del estilo de código de .NET (IDE) se pueden aplicar ahora en la compilación. Puede instalar los analizadores del estilo de código de .NET como paquete NuGet para C# y Visual Basic, o bien puede habilitarlos en Propiedades del proyecto. Para acceder a las Propiedades del proyecto, haga clic con el botón derecho en un proyecto en el Explorador de soluciones y seleccione Propiedades. A continuación, seleccione la pestaña Análisis de código, donde puede seleccionar Enforce CodeStyle on build (experimental) (Aplicación de CodeStyle en la compilación (experimental)).
- Syntax Visualizer (instalado con el SDK de .NET Compiler Platform) muestra ahora el color de primer plano actual para mejorar los colores. Solo tiene que usar el visualizador para ir al texto para el que desea cambiar los colores, o bien seleccionar en el editor y, a continuación, hacer clic en el color clasificado para cambiarlo.
- Ahora hay información sobre herramientas al mantener el mouse sobre el identificador de diagnóstico para advertencias pragma. La información sobre herramientas de diagnóstico también tiene un vínculo interactivo que va a la documentación.
- Ahora, al escribir la tecla RETORNO desde dentro de un comentario, tal vez observe que la nueva línea se comenta automáticamente. Se trata de una nueva opción que está activada de forma predeterminada. Para evitar que la nueva línea se comente automáticamente, vaya a Herramientas>Opciones>Editor de texto>C# o Básico>Avanzado y desactive Insertar // al principio de nuevas líneas al escribir // comentarios.
En 16.8 (versión preliminar 2), agregamos sugerencias de nombre de parámetro insertado que inserta elementos gráficos para literales, literales convertidos e instancias de objeto antes de cada argumento en las llamadas de función. En esta versión agregamos las siguientes mejoras:
Más opciones de personalización para los tipos de opciones gráficas que desea insertar.
Sugerencias de tipo insertado para variables con tipos inferidos y tipos de parámetro lambda.
Una opción para deshabilitar las sugerencias de nombre de parámetro insertado cuando los nombres de parámetro coinciden con la intención del método y cuando solo se diferencian en el sufijo.
Las directivas using ahora se agregarán automáticamente al copiar y pegar tipos en un archivo nuevo. En primer lugar, debe activar esta opción en Herramientas>Opciones>Editor de texto>C# o en Basic>Avanzado y seleccionar Add missing using directives on paste (Agregar las directivas using que faltan al pegar).
- Al pulsar
;
para aceptar un método de una lista de finalización, ahora IntelliSense insertará automáticamente los paréntesis junto con un punto y coma para la creación de objetos y las llamadas de métodos.
- Ahora hay coloración semántica para registros de C# 9.0. Puede personalizar los colores en Herramientas>Opciones>Entorno>Fuentes y colores. En Mostrar elementos, vaya a Tipos de usuario: Registros y seleccione el color que quiere aplicar a los registros.
- En C# 9.0, los descartes son innecesarios en ciertos casos de coincidencia de patrones. Ahora se atenúan los descartes innecesarios y se ofrece una corrección de código para quitarlos. Coloque el cursor en el descarte atenuado. Presione (Ctrl+. ) para activar los menús Acciones rápidas y refactorizaciones. Seleccione Remove unnecessary discard (Quitar descarte innecesario).
- Ahora hay refactorización que convierte una cadena literal y normal en una cadena interpolada que mantendrá las llaves que estaban diseñadas para ir en la salida. Esta refactorización no se ofrece si la cadena está asignada a una constante. Coloque el cursor en la cadena. Presione (Ctrl+. ) para activar los menús Acciones rápidas y refactorizaciones. Seleccione Convertir a cadena interpolada.
Ahora hay una corrección de código en Visual Basic que quita la palabra clave shared al convertir métodos compartidos en un módulo.
Ahora existe la finalización de IntelliSense para los símbolos del preprocesador. Comience a escribir la directiva
#if
para ver las opciones nuevas de finalización para los símbolos que actualmente se definen en el ámbito.
- El Explorador de soluciones ahora muestra los generadores de código fuente nuevos de .NET 5.0 bajo el nodo Analizador para que el usuario pueda recorrer y visualizar fácilmente el código generado.
- En la ventana Ir a todo no se mostrarán resultados duplicados en netcoreapp3.1 y netcoreapp2.0, así como los resultados de tipos parciales que solo existen para encapsular otro tipo anidado. Esto ayudará a despejar los resultados para que el usuario pueda buscar fácilmente el código y navegar a él. Ahora los resultados también incluyen el nombre de archivo de los símbolos parciales.
- "Información rápida" ahora muestra los identificadores de advertencia del compilador o números para supresión. Mantenga el cursor sobre los números o los identificadores de advertencia para ver la Información rápida del identificador de diagnóstico.
Gracias
Por último, pero no por ello menos importante, queremos dar las gracias al siguiente equipo de personas que han contribuido este mes a la productividad de .NET (también conocido como Roslyn):
- Youssef Victor (@Youssef1313):
$Main
se definió comoWellKnownMemberNames
PR n.° 49650- Se implementó tratar los parámetros de posición de registro como propiedades n.° 48329
- Se corrigió la línea punteada para la condición multilínea en
else if
PR n.° 48534
- Martin Strecker (@MaStr11):
- Compatibilidad con la inclusión en línea de otras cadenas interpoladas PR n.° 49229
- Preferencia de ayuda para firma en sobrecargas no obsoletas PR n.° 49961
- Joseph Musser (@jnm2):
- Se conservan los paréntesis que C# exige al simplificar la interpolación PR n.° 49655
- Implementación para detener la oferta de agregar DebuggerDisplay en tipos estáticos PR n.° 49824
- Huo Yaoyuan (@huoyaoyuan):
- No realizar conversión al refactorizar foreach y var PR n.° 49120
- Usar establecedores protegidos privados en las opciones de compilación PR n.° 49034
- Jon Senchyna (@TheSench): Característica para eliminar la ambigüedad de la
using
palabra clave PR n.° 48898 - Mathias Lykkegaard Lorenzen (@ffMathy): Incrementar el máximo de sugerencias a 5 PR n.º 49687
- Alireza Habibi (@alrz): Generar conversión explícita para las conversiones implícitas en la
use pattern matching
corrección de códigoPR n.º 49757 - Raf (Raffaele Rialdi) (@raffaeler): Se agregó compatibilidad para normalizar las propiedades automáticas en una sola línea PR n.º 49495
- Youssef Victor (@Youssef1313):
- Implementación de la corrección de código de Visual Basic para quitar Shared de los miembros del módulo PR n.º 48289
- Compatibilidad con el descriptor de acceso init en CSharpSyntaxFacts PR n.º 48137
- El nivel de advertencia predeterminado se ha elevado a "Más reciente" en las pruebas PR n.º 47077
- Eliminación de una supresión innecesaria PR n.º 48277
- Refactorización del método de extracción para trabajar con registros PR n.º 48531
- Corrección del nivel de advertencia para diagnósticos ocultos PR n.º 48397
- Corrección del nuevo error con tipo de destino con el recuento de Buscar todas las referencias PR n.º 48434
- Análisis de propiedades cuando contiene paréntesis PR n.º 48598
- Corrección de InvalidCastException cuando el filtro de excepciones contiene una expresión switch PR n.º 48260
- Louis Zanella (@louis-z): Implementación de refactorización que convierte las cadenas normales y textuales en una cadena interpolada que conserva las llaves PR n.º 48502
- Shimmy (@weitzhandler): Sugerencia de constructor predeterminado entre miembros PR n.º 48503
- Kai Jellinghaus (@HurricanKai: Conversión de GreenNode.CreateList en estático y ajuste de todos los usos PR n.º 48536
- Jon Senchyna (@TheSench):
- Actualización de las palabras clave F1 para diferenciar entre la semántica de la palabra clave predeterminada PR n.º 48500
- Actualización de las palabras clave F1 para eliminar la ambigüedad de una clase PR n.º 48506
- Incorporación de la palabra clave F1 para una clase usada como restricción de tipo genérico PR n.º 21037
- Petr Onderka (@svick): Corrección del control del identificador de comentario de documentación para dinámicas y tuplas PR n.º 48359
- Huo Yaoyuan (@huoyaoyuan):
- Corrección para no desencadenar una infracción del estilo de nomenclatura de los números con prefijos PR n.º 48306
- Corrección para que el analizador de IDE0057 administre correctamente la subcadena en la propia cadena PR n.º 48321
- Rastislav Novotny (@duracellko): Compatibilidad con NotNullIfNotNull en operadores binarios PR n.º 48490
- Alireza Habibi (@alrz): Corrección del análisis de patrones de tipos que aceptan valores NULL para una mejor recuperación de errores PR n.º 48447
- Lingling Tong (@LinglingTong): Habilitación del diagnóstico del modelo de incorporación de cambios de LSP para XAML PR n.º 49145
- David Maas (@PathogenDavid): Corrección de SkipLocalsInit de nivel de módulo con instrucciones de nivel superior PR n.º 49435
- Martin Strecker (@MaStr11): Compatibilidad con números de advertencia en la información rápida para las supresiones PR n.º 49102
- Adam Speight (@AdamSpeight2008): Mejora del rendimiento PR n.º 49459
- Adam Ralph (@adamralph): Fix invalid code snippet in adding optional parameters to public methods PR n.º 48725
Herramientas web de .NET
- Implemente las aplicaciones de Steeltoe en Azure Spring Cloud mediante Publicar de Visual Studio (por ejemplo, haga clic con el botón derecho > Publish in Solution Explorer) (Publicar en el Explorador de soluciones). Si no ve la opción, asegúrese de que el proyecto incluye el paquete NuGet Microsoft.Azure.SpringCloud.Client versión 1.0.0-preview.1 o posterior.
Herramientas Web
Al agregar App Configuration como un servicio conectado, su aplicación se conecta automáticamente al recurso de Azure App Configuration. Ahora se admite la generación automática de código para proyectos de la consola de .NET Core, así como agregar paquetes NuGet de manera automática para los proyectos de .NET Framework. Para integrar este servicio conectado a la aplicación, haga clic en Servicios conectados y agregue Azure App Configuration como una dependencia de servicio.
- La pestaña Servicios conectados ahora admite Azure App Configuration. App Configuration permite administrar de forma centralizada la configuración de la aplicación y las marcas de característica. Al agregar esta dependencia de servicio, el código se actualiza automáticamente para conectarse al recurso de App Configuration. Esto incluye la instalación de los paquetes NuGet más actualizados y el almacenamiento de los secretos localmente o en Key Vault.
Instalador de Visual Studio
El Instalador de Visual Studio ha incorporado varias características nuevas en respuesta a las solicitudes de los clientes.
Muchos usuarios usan ahora el instalador para identificar, iniciar y administrar varias copias de Visual Studio. Como ayuda a este patrón de uso, el Instalador de Visual Studio ya no necesita elevación al iniciarse, únicamente al realizar cambios en Visual Studio y en el equipo. Otras actividades, como exportar configuraciones de instalación, navegar por noticias y ver los detalles de la actualización ya no requieren que el usuario eleve primero.
En ocasiones, las versiones anteriores del instalador solicitaban a los usuarios que realizaran un paso adicional para actualizar el instalador. Con esta actualización, las actualizaciones de instalador necesarias se administran ahora como parte de la operación de instalación, lo que elimina el paso adicional.
El instalador agrega ahora la selección de tema de modo oscuro. Los usuarios pueden cambiar el tema del instalador a través del botón de sol y luna (☼/☽) de la barra de título. Las actualizaciones iniciadas desde el IDE de Visual Studio usarán la selección de tema actual de Visual Studio.
Indicaciones de audio del Explorador de pruebas y actualizaciones de accesibilidad
- El Explorador de pruebas puede reproducir un sonido cuando se completa una serie de pruebas. Puede seleccionar dos sonidos, uno para indicar que la serie de pruebas se realizó correctamente con todas las pruebas superadas y otro para indicar que la serie de pruebas se completó con al menos una prueba con errores. Esta característica se inició como una solicitud de usuario y mejora la accesibilidad del Explorador de pruebas al agregar una indicación de audio que resulta útil para los desarrolladores que tienen una discapacidad visual. La selección de sonido usa el cuadro de diálogo de sonido predeterminado de Windows 10, donde también puede seleccionar entre los sonidos preestablecidos o cualquier archivo de audio del equipo.
- El menú "Agrupar por" del Explorador de pruebas ahora es más accesible con un orden de palabras y frases más concisas cuando las lee un lector de pantalla.
- Se simplificó la visualización de las salidas de pruebas largas en el panel de detalles de las pruebas en el Explorador de pruebas con un vínculo para abrir directamente el archivo de registro en lugar del control de documento especial.
Experiencia de pruebas
- Se ha agregado compatibilidad con la recopilación de cobertura de código para proyectos de prueba de .NET Core que usan Fakes.
- Se ha reducido el tiempo necesario para combinar varios informes de cobertura de código.
IntelliCode
- IntelliCode ahora proporciona sugerencias de ediciones repetidas directamente en la lista de finalizaciones de IntelliSense. Puede obtener una vista previa del cambio sugerido, aplicarlo en esa ubicación u omitir sugerencias como estas directamente desde el elemento de finalización. Obtenga más información sobre las sugerencias de IntelliCode.
Actualizaciones del editor de Razor experimental
- Coloración semántica HTML y C#
- Cambios de nombre de símbolos C# reflejados en archivos de Razor cerrados
- Más bombillas de C# en archivos de Razor:
- Agregar atributo
DebuggerDisplay
- Crear y asignar propiedad
- Crear y asignar campo
- Implementar interfaz o clase abstracta, incluida la compatibilidad con "con patrón", es decir "Implementar interfaz con patrón de eliminación"
- Generar Equals, Hashcode, Constructor
- Agregar atributo
- Agregar comprobación de valores NULL y Agregar comprobaciones de valores NULL para todos los parámetros
- Mejoras adicionales en el formato de contenido mixto de archivos de Razor
Para habilitar el editor de Razor experimental, vaya a Herramientas>Opciones>Entorno>Características en versión preliminar, seleccione Enable experimental Razor editor (Habilitar editor de Razor experimental) y reinicie Visual Studio.
De Developer Community
Estos son algunos de los problemas con más votaciones en 16.9.0:
- El cuadro de diálogo "Búsqueda rápida" se abre en otro grupo de pestañas (izquierda) distinto del archivo actual en el grupo de pestañas actual a la derecha
- Distinción de mayúsculas y minúsculas al analizar meses
- No se pueden compilar aplicaciones de WPF destinadas a .NET 5
- VisualStudio 16.6.5 se bloquea después de continuar una operación "editar y continuar" durante la depuración
- Sintaxis del editor de JavaScript/error de resaltado de IntelliSense
- Iniciar sin depurar no funciona en los proyectos MSBuild para Linux
- SoftDebuggerSession.cs: referencia de objeto no establecida en la línea 1612
- Generación incorrecta de C2355 por parte de MSVC 16.7 para el uso de este puntero en la inicialización para un miembro no estático de la clase
- Desde la actualización de Xamarin a la versión 16.7, la compilación está abarrotada con advertencias
- Si se deshabilitaba IntelliCode 2.2.733.31896, se interrumpía TypeScript 3.x con un error CompositionFailedException al editar un archivo .ts
- "El valor no puede ser NULL. Nombre de parámetro: hierarchy".
- Typescript para IntelliSense se detenía de forma continua
- Al publicarse la función miembro heredada address-of con using-declaration se produce un error con C2448
- El Asistente para la publicación de ClickOnce para .NET Core 3.1 y .NET 5.0 en Visual Studio 2019 16.8 no genera la página de implementación publish.htm
- Después de la actualización 16.8, se reciben muchos errores de análisis de código a pesar de que ciertas reglas están establecidas en Advertencia
- Error de ausencia de código o generación de código incorrecto
- Error interno del compilador VS 16.7.0
- 16.7 regression auto constexpr with deduced array #include using std::array; void f() { using A1 = array; auto const v1 = array{
- El módulo con la partición no se compila
- Control de código fuente "Cannot start an operation to change files behind the solution when Build or Debug is in progress" (No se puede iniciar una operación para cambiar archivos detrás de la solución cuando la compilación o la depuración están en curso) en 16.7.4
- Regresión: error interno del compilador de C++ en 16.7.0 con /std:c++17 (archivo del compilador "msc1.cpp", línea 1591)
- VS2019 sigue borrando el directorio CMakeBuild cada vez que se toca CMakeFiles.txt o CMakeSettings.json
- Visual Studio 16.8.0 desaparece al empezar a crear un método
- El archivo no se guarda después del cambio
- No se puede compilar la inicialización de lista una matriz con static_cast en una función constexpr con VS2019 16.8.0 Preview 1
- Error al compilar std con clan clang-cl en la última versión de VS
- [MSConnect 3093410] std::get_time produce un error cuando se usan formatos sin separadores
- IntelliSense deja de funcionar cuando se usa Coroutines-TS con ASIO.
- IntelliSense deja de funcionar cuando se usa Coroutines-TS con ASIO.
- Visual Studio obliga al usuario a usar el tema de contraste alto cuando Windows está en modo de contraste alto.
- Visual Studio 2019 genera código incorrecto cuando se usa una construcción de bucle infinito con instrucciones continue y break explícitas.
- "Aparecen advertencias de validación (CSS 4.0) sin opción para cambiar a la validación de CSS 3.0
- IntelliSense: el mapa SCSS informa una secuencia inesperada de caracteres
- El panel Herramientas de diagnóstico está dañado o en blanco en VS 2019
- VS para Linux: El método abreviado de teclado Ctrl+Interrumpir para cancelar la compilación no funciona en soluciones complejas. No se puede cerrar VS.
- Error de operación de combinación y no confirmación de Git
- Error al agregar un informe nuevo (.rdl) "No se encuentra el miembro 0x80020003 DISP_E_MEMBERNOTFOUND"
- Módulos y chaiscript: error interno del compilador
- Ruta de acceso de depuración remota de Linux interrumpida con referencia de proyecto compartido
- El Explorador del ejecutor de tareas no funciona en la versión 16.8
- c2833 con el operador decltype
- El proyecto predeterminado WinForms de VB.Net Core recibe un error al crear Configuración.
- Microsoft Azure Tools: método no encontrado: "Void Microsoft.WindowsAzure.ServiceModel.Service.set_IsSLBPartialGS(Microsoft.WindowsAzure.ServiceModel.Expr
- __is_nothrow_constructible intrínseco omite las conversiones de argumento potencialmente desencadenantes
- No puede elegir /permissive en el "modo de cumplimiento"
- Error en el vínculo de Linux como referencia del proyecto
- Visual Studio obliga al usuario a usar el tema de contraste alto cuando Windows está en modo de contraste alto
- Después de la actualización 16.8, se reciben muchos errores de análisis de código a pesar de que ciertas reglas están establecidas en Advertencia
- Una aplicación de .NET Core 3.1 o .NET 5.0 instalada mediante ClickOnce puede generar un error al iniciarse tras haberse instalado.
- Falso positivo C33005 con _variant_t
- Error de operación de combinación y confirmación de Git
- No se pueden ver la tarea o la información de las pilas paralelas con el TFM net5.0-windows*
- Al hacer clic en el botón para actualizar la Comparación de esquemas de SQL, no se guardan los cambios en el archivo sqlproj
- Proyecto de base de datos: al arrastrar un archivo del Explorador de soluciones a una abierta, el archivo se elimina del sistema
- Error en el entrenamiento de modelos de IntelliCode en Visual Studio 2019
- Error en las sesiones de colaboración de LiveShare abiertas
Problemas conocidos
Consulte todos los problemas abiertos y las soluciones alternativas disponibles en Visual Studio 2019 en el vínculo siguiente.
Comentarios y sugerencias
Nos encantaría que nos diera su opinión. Puede informarnos de un problema mediante la opción Notificar un problema de la esquina superior derecha del instalador o del propio IDE de Visual Studio. El icono se encuentra en la esquina superior derecha. Puede realizar una sugerencia de producto o un seguimiento de los problemas en la comunidad de desarrolladores de Visual Studio, donde podrá hacer preguntas, encontrar respuestas y proponer nuevas características. También puede obtener ayuda gratuita para la instalación a través de nuestro servicio de soporte técnico de chat en directo.
Blogs
Saque partido de la información y de las recomendaciones disponibles en los blogs de Developer Tools que le mantendrán al día sobre las nuevas versiones y con publicaciones con mucha información sobre una gran variedad de características.
Historial de notas de la versión de Visual Studio 2019
Para obtener más información sobre versiones anteriores de Visual Studio 2019, consulte la página Historial de notas de la versión de Visual Studio 2019.