Freigeben über


„Visual Studio“-Symbol Versionshinweise: Visual Studio 2019, Version 16.9



Entwicklercommunity | Systemvoraussetzungen | Kompatibilität | Verteilbarer Code | Freigabeverlauf | Lizenzbedingungen | Blogs | Neuerungen in der Visual Studio-Dokumentation


Hinweis

Dies ist nicht die neueste Version von Visual Studio. Das neueste Release können Sie über die Visual Studio-Site herunterladen.



Neuerungen in Visual Studio 2019, Version 16.9

Supportzeitrahmen

Visual Studio 2019 16.9 ist die vierte unterstützte Wartungsbaseline für Visual Studio 2019. Enterprise- und Professional-Kunden, die eine langfristig stabile und sichere Entwicklungsumgebung einführen müssen, wird empfohlen, diese Version als Standard zu etablieren.  Wie in der Lebenszyklus- und Supportrichtlinie ausführlich erläutert wird, wird Version 16.9 bis Oktober 2022 mit Fixes und Sicherheitsupdates unterstützt. Oktober 2022 liegt ein Jahr nach der Veröffentlichung von Visual Studio 2019 16.11. Diese Version wurde als letzte Wartungsbaseline deklariert.

Darüber hinaus wird ab der Veröffentlichung von Version 16.9 die letzte Wartungsbaseline (Version 16.7) für weitere zwölf Monate (bis April 2022) unterstützt. Beachten Sie auch, dass Version 16.8 auch nicht mehr unterstützt wird. Für diese Zwischenversionen werden Wartungsfixes nur noch bis zur Veröffentlichung des nächsten geringfügigen Updates veröffentlicht.

Sie können die neueste und sicherste Version von Visual Studio 2019 16.9 im Downloadbereich von my.visualstudio.com herunterladen. Lesen Sie die neueste Version der Versionshinweise, oder besuchen Sie die Visual Studio-Website, um die neueste Version von Visual Studio 2019 herunterzuladen. Weitere Informationen zu den unterstützten Visual Studio-Baselines finden Sie in der Supportrichtlinie für Visual Studio 2019.

Releases von Visual Studio 2019, Version 16.9

Archivierte Versionsanmerkungen von Visual Studio 2019

Visual Studio 2019-Blog

Im Visual Studio 2019-Blog finden Sie alle wichtigen Informationen zu Produkten direkt vom Visual Studio-Engineeringteam. In den folgenden Beiträgen finden Sie ausführliche Informationen zu den Visual Studio 2019-Releases:


Versionshinweise-Symbol Visual Studio 2019, Version 16.9.26 Symbol „Neues Release“

Veröffentlichung: 11. Oktober 2022

Probleme, die in diesem Release behandelt werden:

  • Administratoren können das VS-Installationsprogramm auf einem Offlineclientcomputer über ein Layout aktualisieren, ohne VS zu aktualisieren.

Sicherheitshinweis

  • CVE-2022-41032 .NET-Sicherheitsrisiko durch Rechteerweiterungen In .NET 7.0.0-rc.1, .NET 6.0, .NET Core 3.1 und NuGet-Clients (NuGet.exe, NuGet.Commands, NuGet.CommandLine, NuGet.Protocol) besteht ein Sicherheitsrisiko, durch das ein böswilliger Akteur einen Benutzer dazu bringen könnte, beliebigen Code auszuführen.

Versionshinweise-Symbol Visual Studio 2019, Version 16.9.25

Sicherheitshinweis

  • CVE-2022-38013 .NET-Denial-of-Service-Sicherheitsrisiko In ASP.NET Core 3.1 und .NET 6.0 besteht ein Denial-of-Service-Sicherheitsrisiko, bei dem ein böswilliger Client einen Stapelüberlauf verursachen kann, der zu einem Denial-of-Service-Angriff führen kann, wenn ein Angreifer angepasste Nutzdaten sendet, die während der Modellbindung geparst werden.

Versionshinweise-Symbol Visual Studio 2019, Version 16.9.24

Veröffentlichung: 9. August 2022

Probleme, die in diesem Release behandelt werden:

  • Aktualisiert Git für Windows auf v2.37.1.1 und behebt CVE-2022-31012.

Sicherheitshinweis


Versionshinweise-Symbol Visual Studio 2019, Version 16.9.23

Veröffentlicht: 14. Juni 2022

Probleme, die in diesem Release behandelt werden:

  • LibraryManager wurde aktualisiert, um die Änderungen an der CDNJS-API zu berücksichtigen.

Sicherheitshinweis


Versionshinweise-Symbol Visual Studio 2019, Version 16.9.21

Veröffentlicht: 10. Mai 2022

Probleme, die in diesem Release behandelt werden:

  • Git für Windows Version, die von Visual Studio und installierbarer optionaler Komponente auf 2.36.0.1 verwendet wird, wurde aktualisiert
  • Ein Problem mit der Git-Integration wurde behoben, bei dem beim Pullen/Synchronisieren von Verzweigungen, die sich voneinander unterscheiden, kein lokalisierter Hinweis auf die Lösung des Ausgabefensters angezeigt wurde.

Sicherheitshinweis

CVE-2022-29117 .NET Denial of Service Vulnerability Ein Sicherheitsrisiko ist in .NET 6.0, .NET 5.0 und .NET Core 3.1 vorhanden, bei dem ein böswilliger Client Cookies bearbeiten und einen Denial of Service verursachen kann.

CVE-2022-23267 .NET Core Denial of Service Vulnerability Eine Sicherheitsanfälligkeit ist in .NET 6.0, .NET 5.0 und .NET Core 3.1 vorhanden, bei der ein böswilliger Client einen Denial of Service über übermäßige Speicherzuweisungen über HttpClient verursachen kann.

CVE-2022-29145 .NET Denial of Service Vulnerability Ein Sicherheitsrisiko ist in .NET 6.0, .NET 5.0 und .NET Core 3.1 vorhanden, bei dem ein böswilliger Client einen Denial of Service verursachen kann, wenn HTML-Formulare geparsed werden.

CVE-2022-24513 Sicherheitsrisiko durch Rechteerweiterungen Es besteht ein potenzielles Sicherheitsrisiko durch Rechteerweiterungen, wenn der Updater-Dienst für Microsoft Visual Studio lokale Konfigurationsdaten nicht ordnungsgemäß analysiert.


Versionshinweise-Symbol Visual Studio 2019, Version 16.9.20

Veröffentlicht am 19. April 2022

Probleme, die in diesem Release behandelt werden:

  • Behoben: vctip.exe-Regression aus 16.9.19

Versionshinweise-Symbol Visual Studio 2019, Version 16.9.19

Veröffentlichung: 12. April 2022

Probleme, die in diesem Release behandelt werden:

Sicherheitshinweis

CVE-2022-24765 Sicherheitsrisiko durch Rechteerweiterungen Es besteht ein potenzielles Sicherheitsrisiko durch Rechteerweiterungen in Git für Windows, durch die Git-Vorgänge außerhalb eines Repositorys ausgeführt werden können, während ein Git-Verzeichnis gesucht wird. Git für Windows wurde jetzt auf Version 2.35.2.1 aktualisiert.

CVE-2022-24767 Sicherheitsrisiko durch DLL-Hijacking Bei der Ausführung des Deinstallationsprogramms unter dem SYSTEM-Benutzerkonto besteht ein potenzielles Sicherheitsrisiko durch DLL-Hijacking in Git für Windows. Git für Windows wurde jetzt auf Version 2.35.2.1 aktualisiert.

CVE-2022-24513 Sicherheitsrisiko durch Rechteerweiterungen Es besteht ein potenzielles Sicherheitsrisiko durch Rechteerweiterungen, wenn der Updater-Dienst für Microsoft Visual Studio lokale Konfigurationsdaten nicht ordnungsgemäß analysiert.


Versionshinweise-Symbol Visual Studio 2019, Version 16.9.18

Veröffentlichung: 8. März 2022

Probleme, die in diesem Release behandelt werden:

Sicherheitshinweis

CVE-2020-8927 Sicherheitsanfälligkeit Eine Sicherheitslücke zur Remotecodeausführung ist in .NET 5.0 und .NET Core 3.1 vorhanden, bei der ein Pufferüberlauf in den Brotli-Bibliotheksversionen vor 1.0.8 vorhanden ist.

CVE-2022-24464 Sicherheitsanfälligkeit Bei der Analyse bestimmter Arten von HTTP-Formularanforderungen ist eine Denial of Service-Sicherheitsanfälligkeit in .NET 6.0, .NET 5.0 und .NET CORE 3.1 vorhanden.

CVE-2022-24512 Sicherheitsrisiko Bei Auftreten eines Stapelpufferüberlaufs in einer .NET Double Parse-Routine ist eine Sicherheitsanfälligkeit durch Remotecodeausführung in .NET 6.0, .NET 5.0 und .NET CORE 3.1 vorhanden.

CVE-2021-3711 OpenSSL-Pufferüberlaufrisiko Ein potenzieller Pufferüberlaufrisiko ist in OpenSSL vorhanden, das von Git für Windows genutzt wird. Git für Windows ist jetzt auf Version 2.35.1.2 aktualisiert, was dieses Problem behebt.


Versionshinweise-Symbol Visual Studio 2019, Version 16.9.17

Veröffentlichung: 8. Februar 2022

Probleme, die in diesem Release behandelt werden:

Sicherheitshinweis

CVE-2022-21986: Sicherheitsrisiko In .NET 5.0 und .NET 6.0 besteht ein Sicherheitsrisiko, das durch Denial-of-Service-Angriffe ausgelöst wird, wenn Kestrel-Webserverprozesse HTTP/2- und HTTP/3-Anforderungen enthalten.

CVE-2022-21871 Sicherheitsrisiko einer Rechteerweiterung der Standardsammlungsruntime des Diagnose-Hubs Es besteht ein Sicherheitsrisiko hinsichtlich einer Rechteerweiterung, wenn der Standardsammlungsdienst des Diagnose-Hubs Datenvorgänge falsch verarbeitet.


Versionshinweise-Symbol Visual Studio 2019, Version 16.9.16

Veröffentlichung: 11. Januar 2022

Probleme, die in diesem Release behandelt werden:

  • Zeitweiliger Absturz von „link.exe“ beim Erstellen großer Projekte mit Visual Studio 16.8.5 oder höher behoben.
  • Es wurde ein Problem behoben, bei dem Anwendungen mehrmals nicht debuggt werden konnten, wenn das Windows-Terminal als Standardterminal verwendet wird.
  • Setupfix zum Entsperren von Kunden bei eingeschränkten Konfigurationen
  • Es wurde ein Problem behoben, das verhinderte, dass ein Client einen aktuelleren Bootstrapper aktualisieren konnte. Sobald der Client den Bootstrapper und das Installationsprogramm verwendet, die im Januar 2022 oder später ausgeliefert wurden, sollten alle Updates, die nachfolgende Bootstrapper verwenden, für die Dauer des Produktlebenszyklus funktionieren.

Aus der Entwicklercommunity


Versionshinweise-Symbol Visual Studio 2019, Version 16.9.15

Veröffentlichung: 14. Dezember 2021

Probleme, die in diesem Release behandelt werden:

  • Python 3.9.7 wurde der Python-Workload hinzugefügt. Python 3.7.8 wurde aufgrund eines Sicherheitsrisikos entfernt.

Sicherheitshinweis

CVE-2021-43877 Sicherheitsrisiko In ANCM ist eine Rechteerweiterung möglich, wenn .NET Core-, .NET 5- oder .NET 6-Anwendungen in IIS gehostet werden.


Versionshinweise-Symbol Visual Studio 2019, Version 16.9.14

Veröffentlichung: 16. November 2021

Probleme, die in diesem Release behandelt werden:

  • Der Bootstrapper berücksichtigt jetzt den Parameter „--useLatestInstaller“, wodurch der neueste Installer in das Layout integriert wird. Dieser mit Visual Studio 2022 ausgelieferte neue Installer ermöglicht es Unternehmen, ihre Clients von einem Layoutstandort auf einen anderen umzustellen. Weitere Informationen finden Sie im [Administratorhandbuch zu Visual Studio](* Die Bootstrapper respektieren jetzt den Parameter „--useLatestInstaller“, der dazu führt, dass das neueste Installationsprogramm in das Layout integriert wird. Dieser mit Visual Studio 2022 ausgelieferte neue Installer ermöglicht es Unternehmen, ihre Clients von einem Layoutstandort auf einen anderen umzustellen. Weitere Informationen finden Sie im Administratorhandbuch zu Visual Studio.).

Versionshinweise-Symbol Visual Studio 2019, Version 16.9.13

Veröffentlichung: 9. November 2021

Probleme, die in diesem Release behandelt werden:

  • Es wurde ein Fehler behoben, der dazu führte, dass ein Link im Startmenü nicht mehr angezeigt wurde. Der Fehler trat nur auf, wenn ein Update für mehrere Instanzen verschiedener Produkt-SKUs auf dem gleichen Computer ausgeführt wurde.

Sicherheitshinweis

CVE-2021-42319 Sicherheitsrisiko einer Rechteerweiterung Für den im Installer für Visual Studio enthaltenen WMI-Anbieter besteht ein Sicherheitsrisiko hinsichtlich einer Rechteerweiterung.

CVE-2021-42277 Sicherheitsrisiko einer Rechteerweiterung im Standardsammlungsdienst des Diagnose-Hubs Es besteht ein Sicherheitsrisiko hinsichtlich einer Rechteerweiterung, wenn der Standardsammlungsdienst des Diagnose-Hubs Dateivorgänge falsch verarbeitet.


Versionshinweise-Symbol Visual Studio 2019, Version 16.9.12

Veröffentlichung: 12. Oktober 2021

Probleme, die in diesem Release behandelt werden:

  • Aktualisierung der ARM64- und ARM64EC-Schnittstellen zwischen der Binärdatei und der Runtime für die POGO-Instrumentierung.

Sicherheitshinweis

CVE-2021-41355 Sicherheitsrisiko einer Offenlegung in .NET 5.0

In .NET besteht ein Sicherheitsrisiko hinsichtlich der Offenlegung von Informationen, wenn „System.DirectoryServices.Protocols.LdapConnection“ Anmeldeinformationen unter Linux im Nur-Text-Format sendet.

CVE-2020-1971 DoS-Sicherheitsrisiko (Denial of Service) in OpenSSL

Für die von Git genutzte OpenSSL-Bibliothek besteht ein potenzielles DoS-Sicherheitsrisiko.

CVE-2021-3449 DoS-Sicherheitsrisiko (Denial of Service) in OpenSSL

Für die von Git genutzte OpenSSL-Bibliothek besteht ein potenzielles DoS-Sicherheitsrisiko.

CVE-2021-3450 DoS-Sicherheitsrisiko (Denial of Service) in OpenSSL

Für die von Git genutzte OpenSSL-Bibliothek besteht das Risiko einer potenziellen Flagumgehung.


Versionshinweise-Symbol Visual Studio 2019, Version 16.9.11

Veröffentlicht: 14. September 2021

Probleme, die in diesem Release behandelt werden:

  • Wir haben einen schwerwiegenden internen Compilerfehler behoben, der durch unbenannte Strukturen verursacht wurde, auf deren Felder aus SAL-Anmerkungen verwiesen wird.
  • Ein seltener Absturz bei der Analyse von Vorlagencode, der __uuidof verwendet, wurde behoben.

Sicherheitshinweis

CVE-2021-26434 Visual Studio-Sicherheitsrisiko aufgrund einer Rechteausweitung wegen falscher Berechtigungszuweisung

In Visual Studio besteht nach der Installation der Game-Entwicklung mit C++ und dem Auswählen der Workload „Unreal Engine-Installer“ ein Sicherheitsrisiko bei der Berechtigungszuweisung. Das System ist während der Installation anfällig für LPE und erstellt ein Verzeichnis mit Schreibzugriff für alle Benutzer.

Aus der Entwicklercommunity


Versionshinweise-Symbol Visual Studio 2019, Version 16.9.10

Veröffentlichung: 10. August 2021

Probleme, die in diesem Release behandelt werden:

  • Es werden keine Pfade mehr an den Datenträger gesendet, wenn gemeldet wird, welche Erweiterungen installiert sind.
  • Ein IntelliSense-Absturz wurde behoben, der beim Verarbeiten statischer Datenmember in klasseninternen Vorlagenspezialisierungen aufgetreten ist.
  • Es wurde ein Problem behoben, das die Befehlszeilenausführung des update-Befehls beeinträchtigt hat. Wenn das Update beim ersten Mal fehlschlägt, führt eine erneute Ausführung des update-Befehls jetzt dazu, dass das Update an der Stelle fortgesetzt wird, an der es unterbrochen wurde.

Sicherheitshinweis

CVE-2021-26423 Sicherheitsrisiko durch Denial-of-Service-Angriffe in .NET Core

Ein Denial-of-Service-Sicherheitsrisiko besteht, wenn .NET-Serveranwendungen (Core), die WebSocket-Endpunkte bereitstellen, beim Versuch, einen einzelnen WebSocket-Frame zu lesen, in Endlosschleifen geraten.

CVE-2021-34485 Sicherheitsrisiko bei der Veröffentlichung von Informationen in .NET Core

Ein Sicherheitsrisiko bei der Veröffentlichung von Informationen besteht, wenn vom Tool erstellte Speicherabbilder zum Erfassen von Absturzabbildern und Absturzabbildern bei Bedarf mit globalen Leseberechtigungen unter Linux und macOS erstellt werden.

CVE-2021-34532 Sicherheitsrisiko durch Veröffentlichung von Informationen in ASP.NET Core

Wenn ein JWT-Token protokolliert wird, weil es nicht analysiert werden kann, liegt ein Sicherheitsrisiko bezüglich der Veröffentlichung von Informationen vor.


Versionshinweise-Symbol Visual Studio 2019, Version 16.9.9

Veröffentlichung: 13. Juli 2021

Probleme, die in diesem Release behandelt werden:

  • Es wurde ein ARM64X-Problem behoben, bei dem Outlook bei der Verwendung von Add-Ins abstürzte.
  • Es wurde ein Problem im C++-Compiler behoben, bei dem if-Konvertierungen nicht ordnungsgemäß ausgeführt wurden.
  • Es wurde ein ASan-Problem mit der Kompatibilität im neuesten Windows-Update behoben.
  • ASan meldet keinen falsch-positiven Fehler zu überlappenden memcpy-Speicherbereichen mehr.
  • Eine Funktionsvorlage mit einem unbenannten Funktionsparameter des Arraytyps führte dazu, dass der Parser nachfolgende Funktionsdefinitionen übersprungen hat. Dadurch wurde ein falscher constexpr-Fehler aufgrund einer undefinierten Funktion verursacht, wenn ein Aufruf in einem konstanten Ausdruck ausgewertet wurde. Mit dem Fix wird die Analyse der übersprungenen Funktionsdefinition wieder ermöglicht.
  • Wir haben ein Leistungsproblem und False Positives behoben, die durch eine der Überprüfungserweiterungen zum Ermitteln von Fehlern in falsch verwendeten VARIANT-Datentypen verursacht wurden.
  • Wir haben ein Leistungsproblem behoben, das durch eine der Überprüfungserweiterungen zum Ermitteln von Fehlern in falsch verwendeten Enum-Werten als Index verursacht wurden.
  • Ein Arbeitsspeicherverlust beim Kompilieren mehrerer TUs wurde behoben.
  • Die Parallelitätsanalyse sollte keine falschen C26110-Warnungen (Fehler beim Abrufen einer Sperre) mit automatischen Sperrmustern mehr generieren.
  • Durch diese Korrektur wird das Verhalten für externe Header wiederhergestellt, indem die Analyse externer Header übersprungen und Warnungen von externen Headern unterdrückt werden.
  • Die Parallelitätsprüfungen in der Codeanalyse sind jetzt intelligenter. Sie lassen sich schwieriger durch komplexe Ablaufsteuerung täuschen.
  • Ein Problem im Zusammenhang mit der Layouterstellung wurde behoben.
  • Es wurde ein Problem behoben, bei dem Updates aufgrund fehlender Updatekanalinformationen nicht durchgeführt werden konnten.

Aus der Entwicklercommunity


Versionshinweise-Symbol Visual Studio 2019, Version 16.9.8

Veröffentlicht: 15. Juni 2021

Aus der Entwicklercommunity


Versionshinweise-Symbol Visual Studio 2019, Version 16.9.7

Veröffentlicht: 08. Juni 2021

Probleme, die in diesem Release behandelt werden:

  • Ein Fehler im SSA-Anweisungskloner wurde behoben.
  • Es wurde ein Problem behoben, das einen Absturz von „mspdbcore.dll“ verursacht hat.
  • Ein zeitintensiver Build bzw. ein Build mit Timeout von Kundencodebasen wurde korrigiert.
  • Es wurde ein Problem behoben, das Entwickler daran hinderte, PyTorch zu erstellen.
  • Behebt einen internen MSBuild-Fehler (MSB0001), der aufgetreten ist, als eine große Codebasis mit einem 32-Bit-MSBuild.exe-Prozess erstellt wurde.
  • Es wurde ein Problem im Containertoolfenster behoben, das einen Absturz von Visual Studio 2019 verursacht hat, wenn Entwickler versuchten, zugeordnete Ports anzuzeigen und dann zu einem anderen Container zu wechseln.

Sicherheitshinweis

CVE-2021-31957 Sicherheitsrisiko durch Denial-of-Service-Angriffe in ASP.NET

Ein Denial-of-Service-Sicherheitsrisiko besteht, wenn ASP.NET Core Clienttrennungen nicht ordnungsgemäß verarbeitet.

Aus der Entwicklercommunity

Die Entwicklercommunity verfügt über eine vollständige Liste aller Neuerungen, die in dieser Version enthalten sind.

Im Folgenden finden Sie einige der wichtigsten Punkte, die in Version 16.9.7 veröffentlicht wurden:

Versionshinweise-Symbol Visual Studio 2019, Version 16.9.6

Veröffentlicht am 18. Mai 2021

Probleme, die in diesem Release behandelt werden:

  • Der Fehler „Cannot access a disposed object. Object name:'System.Net.Http.StringContent'“ (Zugriff auf ein verworfenes Objekt nicht möglich. Objektname: „System.Net.Http.StringContent“) beim Erstellen eines Zertifikats oder Ausführen der automatischen Bereitstellung wurde behoben.
  • Ein Problem wurde behoben, das verhindert hat, dass das iOS Hot Restart-Feature ordnungsgemäß funktioniert.

Aus der Entwicklercommunity

Die Entwicklercommunity verfügt über eine vollständige Liste aller Neuerungen, die in dieser Version enthalten sind.

Im Folgenden finden Sie einige der wichtigsten Punkte, die in Version 16.9.6 veröffentlicht wurden:


Versionshinweise-Symbol Visual Studio 2019, Version 16.9.5

Veröffentlicht am 11. Mai 2021

Probleme, die in diesem Release behandelt werden:

  • Es wurde ein Problem behoben, bei dem Office-Tools bei der Verwendung von Exporten nicht wie erwartet funktionierten.
  • Es wurde ein Absturz bei Visual Studio 2019 behoben, der bei bestimmten virtuellen Aufrufen zwischen x64- und ARM64EC-DLLs aufgetreten ist.
  • Falsch positives Ergebnis beim Ausführen von Multithread-ASan-instrumentiertem Code behoben.
  • Ein Projektfehler, der den Fehler „HRESULT E_FAIL wurde von einem Aufruf der COM-Komponente zurückgegeben“ erzeugte, wurde behoben.
  • Behebt ein Problem beim Öffnen einer C++-Datei beim Start, das gelegentlich dazu führen würde, dass Visual Studio 2019 nicht mehr reagiert.
  • Es wurde ein Problem mit der Konfiguration von CmakeSettings.json-Dateien behoben, bei dem neue Einstellungen nicht erhalten blieben.
  • Ein interner Compiler-Fehler, der bei der Analyse einer Quelldatei auftrat, wenn der Dateipfad ein oder mehrere Nicht-ASCII-Zeichen enthält, wurde behoben.
  • Ein Problem beim Öffnen von Abdeckungsdateien, bei dem eine Bibliothek mehrere Einträge in der Codeabdeckungsdatei hat, wurde behoben.
  • Es wurde ein Fehler behoben, der dazu führte, dass Kunden, die sich mit Nicht-Arbeitskonten bei aktiviertem Remote-Desktop anmelden, den Zugriff verweigern konnten.
  • Es wurde ein Fehler behoben, der zum Absturz von Visual Studio 2019 führte, wenn Entwickler ihre Menüs anpassten und im Anpassungsdialog auf ein Trennzeichen klickten.
  • Unverankerte Dokumentfenster werden beim Öffnen einer Projektmappe wiederhergestellt.
  • Ein Problem wurde behoben, das dazu führte, dass Updates fehlschlagen, wenn ein Administrator ein neues Layout von Visual Studio für die Bereitstellung von Updates erstellt. Das Update des Clientcomputers schlägt fehl, da das Layout Speicherorte verschoben hat.
  • Ein Problem wurde behoben, das dazu führte, dass ein Projekt-Build mit aktivierter schneller Bereitstellung fehlschlug oder die Bereitstellung sehr lange dauerte.
  • Xcode 12.5 Support wurde hinzugefügt.
  • Ein Problem wurde behoben, das dazu führte, dass Updates fehlschlagen, wenn ein Administrator ein neues Layout von Visual Studio für die Bereitstellung von Updates erstellt. Das Update des Clientcomputers schlägt fehl, da das Layout Speicherorte verschoben hat.

Sicherheitshinweis

CVE-2021-27068 RCE beim Einpflanzen von python.exe in geschachtelten Ordnern möglich

Es besteht eine Sicherheitsanfälligkeit für entfernte Codeausführung, wenn ein Arbeitsbereich mit Python-Code geöffnet wird und dieser Arbeitsbereich eine python.exe in einem Skript-Unterordner enthält.

CVE-2021-31204 Sicherheitsrisiko durch Rechteerweiterungen in .NET Core

In .NET 5.0 und .NET Core 3.1 liegt ein Sicherheitsrisiko durch Rechteerweiterungen vor, wenn ein Benutzer eine einzelne Dateianwendung unter Betriebssystemen ausführt, die auf Linux oder macOS basieren.

Aus der Entwicklercommunity

Die Entwicklercommunity verfügt über eine vollständige Liste aller Neuerungen, die in dieser Version enthalten sind.

Im Folgenden finden Sie einige der wichtigsten Punkte, die in Version 16.9.5 veröffentlicht wurden:


Versionshinweise-Symbol Visual Studio 2019, Version 16.9.4

Veröffentlichung: 13. April 2021

Probleme, die in diesem Release behandelt werden:

  • Ein SFINAE-Fehler wurde behoben, der bei einigen Formen von Vorlagennamen in nicht abhängigen Basisklassen einen Fehler verursacht hat.
  • Problem behoben, bei dem IntelliCode versucht, sich in einem temporären Verzeichnis anzumelden und der Zugriff auf das temporäre Verzeichnis verweigert wurde.
  • Ein Problem, bei dem einige Visual Studio-Funktionen eingeschränkt waren, wenn auch Software zur Verwaltung von Zugriffsrechten von Drittanbietern installiert ist, wurde behoben.
  • Es wurde ein Problem behoben, bei dem Kunden wiederholt das Debuggen auf XBox starten, wobei immer mehr Kernelressourcen verbraucht werden. Schließlich muss die XBox neu gestartet werden, was zu einem Verlust des Zustands führt.
  • Es wurde ein Hänger beim Debuggen von nativem Code mit Insider Preview-Builds von Windows behoben.
  • Fehler bei der Barrierefreiheit mit Tastaturfokus wurde behoben.
  • Fehlende Xamarin-Vorlagen (iOS/Android-Klassenbibliothek, iOS/Android-Bindungsbibliothek, Android Wear, Xamarin.UITest) wurden im Dialogfeld „Neues Projekt“ erneut hinzugefügt. Diese Vorlagen wurden versehentlich ausgeblendet.
  • Für C++ CMake-basierte Projekte unter Linux, die eine SSH-Verbindung verwenden, wurde das in CMakeSettings.json durch die Eigenschaft remoteCMakeListsRoot angegebene Zielverzeichnis auf das vorherige Verhalten in VS 16.8 zurückgesetzt, bei dem das Ziel der Kopie dem Stammverzeichnis des Quellverzeichnisses entspricht. Details im Ticket Verbindung mit Linux-Remotecomputer verwendet falschen Zielpfad.

Sicherheitshinweis

CVE-2021-27064 Sicherheitsrisiko durch Rechteerweiterungen im Visual Studio-Installer

Eine Sicherheitsrisiko für Remotecodeausführung ist vorhanden, wenn das Visual Studio-Installationsprogramm den Feedbackclient in einem Status mit erhöhten Rechten ausführt.

CVE-2021-28313 / CVE-2021-28321 / CVE-2021-28322: Sicherheitsrisiko durch Rechteerweiterungen beim Standardcollectordienst für den Diagnosehub

Wenn der Diagnostics Hub Standard Collector bestimmte Datenvorgänge nicht ordnungsgemäß verarbeitet, besteht ein Sicherheitsrisiko durch Rechteerweiterungen.

Aus der Entwicklercommunity

Die Entwicklercommunity verfügt über eine vollständige Liste aller Neuerungen, die in dieser Version enthalten sind.

Im Folgenden finden Sie einige der wichtigsten Punkte, die in Version 16.9.4 veröffentlicht wurden:


Versionshinweise-Symbol Visual Studio 2019, Version 16.9.3

Veröffentlichung: 30. März 2021

Probleme, die in diesem Release behandelt werden:

  • Es wurde ein Absturz in MSBuild korrigiert, der bei Versuchen aufgetreten ist, eine Projektmappe mit „MSBuild.exe“ zu erstellen, die ein Websiteprojekt enthält.
  • Es wurde ein Absturzszenario korrigiert, das durch einige Abhängigkeiten von ServiceHub verursacht wurde.
  • Es wurde ein Blockierproblem behoben, durch das Benutzern des visuellen XAML-Diagnosetools auf Xbox- oder auf IoT-Geräten die Verwendung des Remotedebuggens verweigert wurde.

Aus der Entwicklercommunity

Die Entwicklercommunity verfügt über eine vollständige Liste aller Neuerungen, die in dieser Version enthalten sind.

Im Folgenden finden Sie einige der wichtigsten Punkte, die in Version 16.9.3 veröffentlicht wurden:


Versionshinweise-Symbol Visual Studio 2019, Version 16.9.2

Veröffentlichung: 16. März 2021

Probleme, die in diesem Release behandelt werden:

  • Aktualisieren von globalen Zeigernamen von ARM64X-Funktionen
  • Fix zum Extrahieren der ersten OBJ-Datei einer ARM64X-Bibliotheksdatei mit link-lib-extract
  • Ein Fehler wurde behoben, bei dem Code mit Address Sanitizer kompiliert wurde, und Optimierungen fehlerhaften Code generiert haben, was zum Absturz von Visual Studio 2019 führte.
  • Ein Absturz wurde korrigiert, indem Funktionen über den Dialog-Editor zum Ressourcen-Editor hinzugefügt wurden.
  • Nuget.org muss nicht mehr zweimal als Paketquelle entfernt werden.
  • Verbesserte Leistung beim Auswerten von NuGet-Paketen
  • Es wurde eine Fehlermeldung zu veralteten APIs gehoben, die Kunden erhalten haben, wenn sie den Azure SQL-Datenbank-Knoten in Server-Explorer verwendet haben.
  • Es wurde ein Problem behoben, das eine Fehlermeldung verursacht hat, die angibt, dass CascadePackage nicht ordnungsgemäß geladen wurde.
  • Es wurde ein Problem behoben, das dazu geführt hat, dass bei einem Erstellungsprojekt mit aktivierter schneller Bereitstellung die Bereitstellung fehlgeschlagen ist oder zusätzliche Zeit benötigt wurde.
  • Ein Problem wurde behoben, wodurch Hot Reload gespeicherte Änderungen im Vollbildmodus anzeigt.
  • Ein Problem mit Hot Reload wurde behoben, wodurch die visuelle Echtzeitstruktur nicht funktioniert hat oder Änderungen verursacht hat.

Aus der Entwicklercommunity

Die Entwicklercommunity verfügt über eine vollständige Liste aller Neuerungen, die in dieser Version enthalten sind.

Im Folgenden finden Sie einige der wichtigsten Punkte, die in Version 16.9.2 veröffentlicht wurden:


Versionshinweise-Symbol Visual Studio 2019, Version 16.9.1

Veröffentlichung: 09. März 2021

Sicherheitshinweis

CVE-2021-21300: Sicherheitsrisiko durch Remotecodeausführung in Git für Visual Studio

Wenn Visual Studio ein schädliches Repository klont, besteht eine Sicherheitsrisiko durch Remotecodeausführung.

CVE-2021-26701: Sicherheitsrisiko durch Remotecodeausführung in .NET Core

Eine Sicherheitsanfälligkeit bei Remotecodeausführung ist in .NET 5 und .NET Core aufgrund der Art der Textcodierung vorhanden.

Probleme, die in diesem Release behandelt werden:

  • Korrektur der Ausgabe falscher ARM64EC-Metadaten an OBJs.
  • Es wurde ein Problem behoben, bei dem in C++ mit aktiviertem FixIts (Standardoption) beim Öffnen von Code Fehlerwellenlinien angezeigt werden.
  • In einigen Fällen versucht C++-IntelliSense, eine extrem große Anzahl von Include-Pfaden zu verwenden, und reagiert nicht mehr.
  • Höhere Stabilität der Live Share in C++-Szenarien.
  • Ein Problem wurde behoben, bei dem IntelliCode das Laden von Symbolen beendet.
  • Verbessert das Laden von Projektmappen und die Schließzeit in Szenarien, in denen Benutzer den neuen experimentellen Razor-Editor aktiviert haben.
  • Es wurde ein Absturzszenario in ServiceHub korrigiert, das nach dem Öffnen des Dialogfelds „Erweiterungen und Updates“ und dem anschließenden Herunterfahren von Visual Studio auftreten konnte.
  • Es wurde ein Fehler korrigiert, bei dem eine Meldung angezeigt wird, dass bei der Suche nach Updates auf langsameren Computern keine Updates verfügbar waren.
  • Verbessert die Leistung beim Starten von WAP-Projekten aus Visual Studio während inkrementeller Änderungen.
  • Ein Problem wurde behoben, das bei Verwendung des italienischen Gebietsschemas zu einem Fehler beim Start des Setups geführt hat.
  • Ein Upgradeszenario wurde behoben, das dazu führte, dass das Installationsprogramm sehr lange nicht reagiert, während der .NET Core-Vorlagencache initialisiert wird.

Aus der Entwicklercommunity

Die Entwicklercommunity verfügt über eine vollständige Liste aller Neuerungen, die in dieser Version enthalten sind.

Im Folgenden finden Sie einige der wichtigsten Punkte, die in Version 16.9.1 veröffentlicht wurden:


Versionshinweise-Symbol Visual Studio 2019, Version 16.9.0

Veröffentlichung: 02. März 2021

Zusammenfassung der Neuerungen in diesem Release von Visual Studio 2019 Version 16.9.0

C++

  • Address Sanitizer:
    • Unsere Unterstützung für Adressbereinigung unter Windows ist nun nicht mehr experimentell und unterliegt allgemeiner Verfügbarkeit.
    • RtlAllocateHeap-Unterstützung wurde erweitert, ein Kompatibilitätsproblem mit RtlCreateHeap- und RtlAllocateHeap-Interceptors beim Erstellen von ausführbaren Speicherpools wurde behandelt.
    • Unterstützung für die GlobalAlloc- und LocalAlloc-Speicherfunktionsfamilie wurde hinzugefügt. Sie können diese Interceptors mit ASAN_OPTIONS=windows_hook_legacy_allocators=true aktivieren.
    • Fehlermeldungen für Fehler bei Schattenspeicher-Interleaving und Abfangen wurden aktualisiert, um Probleme und Auflösungen zu verdeutlichen.
    • Die IDE-Integration kann nun die komplette Sammlung von Ausnahmen verarbeiten, die ASan berichten kann.
    • Compiler und Linker schlagen die Ausgabe von Debuginformationen vor, wenn sie erkennen, dass Sie ASan zum Erstellen benutzen, aber keine Debuginformationen ausgeben.
  • Nun können Sie das Ziel der LLVM-Version der OpenMP-Runtime mit der neuen CL-Befehlszeilenoption „/openmp:llvm“ angeben. Damit wird sowohl für die lastprivate-Klausel in #pragma omp-Abschnitten als auch für unsignierte Indexvariablen Schleifenunterstützung hinzugefügt. Die Befehlszeilenoption „/openmp:llvm“ ist zurzeit nur für das amd64-Ziel verfügbar und befindet sich noch in der Experimentierphase.
  • CMake-Projekte von Visual Studio bieten jetzt erstklassige Unterstützung für die Remote-Windows-Entwicklung. Dies umfasst das Konfigurieren eines CMake-Projekts für Windows ARM64, das Bereitstellen des Projekts für einen Remote-Windows-Computer und das Debuggen des Projekts auf einem Windows-Remote Computer von Visual Studio aus.
  • Die mit Visual Studio unter Windows ausgelieferte Ninja-Version wurde auf 1.10 aktualisiert. Ausführliche Informationen zum Umfang finden Sie in den Versionshinweisen zu Ninja 1.10.
  • Die mit Visual Studio ausgelieferte CMake-Version wurde auf 3.19 aktualisiert. Ausführliche Informationen zum Umfang finden Sie in den Versionshinweisen zu CMake 3.19.
  • In STL wurden viele Sperr-/Wächtertypen als „nodiscard“ gekennzeichnet: https://github.com/microsoft/STL/pull/1495
  • IntelliSense:
  • MSVC bestimmt nun die korrekten Address Sanitizer-Runtimes, die für Ihre Binärdateien erforderlich sind. Die Änderungen werden für Ihr Visual Studio-Projekt automatisch übernommen. Wenn Address Sanitizer über die Befehlszeile genutzt wird, müssen Sie lediglich /fsanitize=address an den Compiler übergeben.
  • Der Verbindungs-Manager von Visual Studio unterstützt ab sofort private Schlüssel mit dem öffentlichen ECDSA-Schlüsselalgorithmus.
  • Die Versionen für LLVM und Clang wurde im Installationsprogramm auf Version 11 aktualisiert. Lesen Sie die Versionshinweise für LLVM und Clang, um weitere Informationen zu erhalten.
  • Visual Studio nutzt ab sofort CMake-Variablen aus Toolkettendateien, um IntelliSense zu konfigurieren. Dies führt zu einer besseren Servicequalität für eingebettete Entwicklung und Android-Entwicklung.
  • Implementierung des Vorschlags More Constexpr Containers, der Destruktoren und neue Ausdrücke als constexpr ermöglicht. Dies ebnet den Weg für Hilfsprogramme wie constexpr std::vector und std::string.
  • Erweiterte Unterstützung für IntelliSense für C++20-Module, einschließlich „Gehe zu Definition“, „Gehe zu Modul“ und Membervervollständigung.
  • Abgekürzte Funktionsvorlagen werden nun im MSVC-Compiler unterstützt.

Javascript/TypeScript

  • Jetzt steht Unterstützung für WebView2 JavaScript/TypeScript-Debuggen auf Edge Chromium-Basis für Anwendungen wie WPF-, WinForms- und WinUI 3-Projekte zur Verfügung. Es kann durch Auswahl des JavaScript-Debuggers im Dialogfeld „Projekteigenschaften“ aktiviert werden. Ausführliche Informationen zu den ersten Schritten finden Sie hier.

Debugger

  • Ein neues automatisches Analysetool wurde hinzugefügt, das Threads auf Deadlocks unterstützt.
Automatisches Analysetool, das Threads auf Deadlocks überprüft
  • Es wurde eine neue automatische Analyse hinzugefügt, die die .NET Core-Finalizerwarteschlange untersucht und potenziell blockierende Objekte erkennt.
Automatisches Analysetool, das die .NET Core Finalizer-Warteschlange prüft
  • Visual Studio filtert nun nach redundanten, sich wiederholenden Frames aus der Aufrufliste, wenn der Debugger aufgrund einer StackOverflow-Ausnahme angehalten wird. Es ist nun möglich, die Basis des Stapels anzuzeigen, bei der eine Endlosrekursion aufgetreten ist. Damit soll die Untersuchung dieser Art von Fehler vereinfacht werden.
Filtert nach redundanten, sich wiederholenden Frames aus der Aufrufliste, wenn der Debugger aufgrund einer StackOverflow-Ausnahme angehalten wird.

Profiler

  • Neues dynamisches Instrumentierungsszenario hinzugefügt, das schneller ist (erfordert nicht VSInstr) und die Instrumentierung von .NET Core-Anwendungen ohne PDB-Dateien ermöglicht.
Profilerstellung für die dynamische Instrumentierung

F# und F#-Tools

Diese Version verfügt über mehrere Produktivitätsfeatures und Leistungsverbesserungen für die F#-Tools für Visual Studio:

  • Unterstützung für .NET Core FSI
  • Signaturhilfe für Funktionsanwendungen
  • 14 neue Schnellkorrekturen
  • Wichtige Korrekturen der Leistung und Reaktionsfähigkeit für F#-Tools

Weitere Informationen finden Sie im F#- und F#-Toolsupdate für Visual Studio 16.9 oder in den Anmerkungen zu dieser Version des Produkts.

.NET-Produktivität

  • IntelliSense-Vervollständigung für Präprozessorsymbole ist jetzt vorhanden.
  • Der Projektmappen-Explorer zeigt nun die neuen .NET 5.0-Quell-Generatoren an.
  • „Zu allen wechseln“ zeigt netcoreapp3.1 und netcoreapp2.0 übergreifend keine doppelten Ergebnisse an.
  • Die QuickInfo zeigt nun Compilerwarnungs-IDs oder -nummern für Unterdrückungen an.
  • Using-Direktiven werden ab sofort automatisch hinzugefügt, wenn Typen kopiert und in eine neue Datei eingefügt werden.
  • Beim Drücken von ;, um eine Methode aus einer Vervollständigungsliste zu übernehmen, fügt IntelliSense jetzt automatisch die Klammern zusammen mit einem Semikolon für die Objekterstellung und Methodenaufrufe ein.
  • Semantische Farbgebung für C# 9.0-Datensätze
  • Refactoring, bei dem unnötige Ausschussvariablen entfernt werden
  • Refactoring, bei dem eine ausführliche und eine reguläre Zeichenfolge in eine interpolierte Zeichenfolge konvertiert werden, wobei geschweifte Klammern übernommen werden, die in der Ausgabe angegeben sein sollen
  • Codefix in Visual Basic, der das gemeinsam genutzte Schlüsselwort beim Konvertieren von Methoden entfernt, die für ein Modul freigegeben sind
  • Ein Refactoring, das vorschlägt, in nicht strittigen Szenarien new(…) zu verwenden.
  • Eine Codekorrektur, die redundante Gleichheitsausdrücke sowohl für C# als auch für Visual Basic entfernt.
  • Analysen des .NET-Codestils (IDE) können jetzt für den Build erzwungen werden
  • Der Syntax Visualizer zeigt die aktuelle Vordergrundfarbe für erweiterte Farben an.
  • Eine QuickInfo wird angezeigt, wenn Sie mit der Maus auf die Diagnose-ID für Pragma-Warnungen zeigen.
  • Wenn Sie die EINGABETASTE innerhalb eines Kommentars drücken, wird die neue Zeile jetzt automatisch auskommentiert.
  • Verbesserungen bei den Hinweisen zu Inlineparameternamen
  • .NET Core-Debuggen mit WSL 2

Test-Explorer-Audiohinweise und Barrierefreiheitsupdates

  • Sie können jetzt mit dem Test-Explorer Audiohinweise konfigurieren, das „Gruppieren nach“-Menü ist für Sprachausgaben besser zugänglich, und das Anzeigen einer langen Testausgabe ist durch klickbare Links zum direkten Öffnen der Protokolldateien einfacher.

Experimentelle Updates des Razor-Editors

  • Semantische HTML- und C#-Farbgebung
  • Umbenennen von C#-Symbolen, die in geschlossenen Razor-Dateien reflektiert werden
  • Weitere C#-Fehlerbehebungen in Razor-Dateien
  • Weitere Verbesserungen an der Formatierung gemischter Inhalte in Razor-Dateien

.NET-Webtools

  • Stellen Sie Ihre Steeltoe-Anwendungen mithilfe der Veröffentlichungsfunktion in Visual Studio für Azure Spring Cloud bereit. Klicken Sie beispielsweise mit der rechten Maustaste > „Publish in Solution Explorer“ (Im Projektmappen-Explorer veröffentlichen).

Webtools

  • Erweiterte .NET-Unterstützung für Azure App Configuration als verbundener Dienst
  • Verwalten Sie die Konfigurationseinstellungen und Featureflags Ihrer Anwendung, indem Sie Azure App Configuration als verbundenen Dienst integrieren.

XAML-Tools (WPF, WinUI, UWP und Xamarin.Forms)

MVVM-Tools

  • Verbesserte MVVM-Unterstützung: In dieser Version haben wir Glühbirnen im XAML-Editor eingeführt, um Eigenschaften und Befehle in verfügbaren view-models zu generieren. Wir haben auch Glühbirnen hinzugefügt, um den Entwurfs-DataContext in XAML auf verfügbare view-models festzulegen, um die Bindung von IntelliSense zu verbessern.

Xamarin.Forms

In diesem Release wurden mehrere Verbesserungen für Xamarin.Forms-Entwickler vorgenommen:

  • Der XAML Hot Reload-Modus „Changes only“ (Nur Änderungen) ist nun die Standardeinstellung für Xamarin.Forms 5.x-Projekte: Ab Visual Studio 16.9 ist „Changes only“ (Nur Änderungen) jetzt der XAML Hot Reload-Standardmodus für Projekte, die auf Xamarin.Forms 5.x oder höher abzielen. Für Projekte, die auf 4.x abzielen, wird automatisch ein Fallback auf „full page“ (vollständige Seite) von XAML Hot Reload durchgeführt, da „Changes only“ nur mit Xamarin.Forms 5.x oder höher kompatibel ist. Wenn Sie Xamarin.Forms 5.x verwenden und aus bestimmten Gründen den alten Hot-Reload-Modus „full page“ (vollständige Seite) verwenden möchten, können Sie diese Einstellung in den Hot Reload-Einstellungen unter Extras > Optionen > Debuggen > Hot Reload ändern.

  • XAML Hot Reload-Status wird im Ausgabefenster aktualisiert: Xamarin.Forms-Kunden, die XAML Hot Reload verwenden, können jetzt weitere Details zu den Vorgängen mit der XAML Hot Reload-Pipeline mithilfe des Ausgabefensters anzeigen. Öffnen Sie zunächst das Ausgabefenster mit Ansicht > Ausgabe, und wählen Sie dann unter Ausgabe anzeigen von am oberen Rand des Fensters die Option Xamarin Hot Reload aus.

XAML Hot Reload: Ausgabefensterinformationen
  • Xamarin.Forms + UWP – System.ExecutionEngineException aufgelöst: Ab dem Release von Visual Studio 2019, Version 16.8 wurde versehentlich eine Runtimeausnahme (runtime exception) eingeführt, die System.ExecutionEngineException-Fehler auslöst, wenn Entwickler die Xamarin.Forms-App mit Windows als Ziel (UWP) debuggen. Ab dieser Version (16.9 Preview 4) und in Kombination mit einem Update auf Microsoft.NETCore.UniversalWindowsPlatform (NuGet Version 6.2.12 und höher) sollte das Problem nun behoben sein. Hinweis: Diese Lösung ist nicht nur für Visual Studio 2019 Version 16.9 vorgesehen. Wenn Sie Ihre Projekte so aktualisieren, dass sie das neue NuGet-Paket verwenden, sollte dieses Problem auch für Visual Studio Version 16.9 behoben sein.

Tools für Unity

  • Anzeigen von Stammspielobjekten beim Debuggen im neuen Active Scene-Knoten des Fensters „Lokal“.
  • Zeigen Sie alle Komponenten eines GameObject beim Debuggen im neuen this.gameObject-Knoten des Fensters „Lokal“ an.
  • Zeigen Sie alle untergeordneten Spielobjekte und -komponenten mithilfe der Knoten „Children“ und „Components“ des Fensters „Lokal“ an.
  • Sehen Sie sich die Position eines GameObject in der Szene an, wenn Sie es in der Active Scene-Eigenschaft untersuchen.
  • Unterstützung für JobEntityBatch/Lambdaausdrücke, wenn Entitäten mit Quell-Generatoren verwendet werden.
  • Verbesserte Unterstützung für das Anzeigen großer Arrays mithilfe von Indexbucketing.
  • Syntaxhervorhebung für Raytrace-Shader, UXML- und USS-Dateien.
  • Visual Studio erkennt nun, welche Komponenten fehlen, und fordert Sie bei Verwendung von Unity-Projekten auf, diese zu installieren.
  • Unity-Nachrichten-API für alle Methoden aktualisiert, die als Coroutinen verwendet werden.

Git-Produktivität

  • Aktualisiertes Previewfunktionsflag für die neue Git-Benutzeroberfläche mit einem integrierten „Feedback geben“-Link, der Sie direkt zum Produktionsteam weiterleitet
  • Detaillierte Inhalte auf den Team Explorer-Seiten „Home“ und „Verbinden“ für den Übergang zur neuen Git-Benutzeroberfläche
  • Unterstützung für benutzerdefinierte Remoterepositorys in Branchpushbenachrichtigungen
  • Doppelklicken auf einen Branch im Git Repository-Fenster, um Check-Out auszuführen.
  • Commit von Änderungen mit der Tastenkombination STRG+EINGABETASTE.
  • Pushen aller Tags aus dem Fenster mit Git-Änderungen.

Visual Studio-Installer

  • Der Visual Studio-Installer erhält beim Start keine erhöhten Rechte mehr.
  • Der Visual Studio-Installer unterstützt ab sofort HDR-Anzeigen.
  • Der Visual Studio-Installer unterstützt die Navigatorsprachausgabe.
  • Updates des Installers wurden mit dem Visual Studio-Update vereinheitlicht.
  • Der Visual Studio-Installer unterstützt nun das dunkle Design.

Details zu den Neuerungen in Visual Studio 2019 Version 16.9.0

Git-Produktivität

  • Commitänderungen mit der Tastenkombination STRG+EINGABETASTE
STRG+EINGABE für Commit
Committen von Änderungen mit STRG+EINGABETASTE
  • Pushen aller Tags aus dem Fenster mit Git-Änderungen.
Pushen aller Tags
Pushen aller Tags an das Remoteelement

.NET-Produktivität

  • .NET Core-Debuggen mit WSL 2 ermöglicht Ihnen das Ausführen und Debuggen Ihrer .NET Core-Konsole und Webanwendungen in WSL 2 aus Visual Studio. Dadurch können Windows-Entwickler, die Linux-Produktionsumgebungen als Ziel verwenden, eine höhere Zuverlässigkeit beim lokalen Debuggen zu erreichen.
.NET Core-Debuggen mit WSL 2
.NET Core-Debuggen mit WSL 2
  • Es gibt jetzt ein Refactoring, das vorschlägt, new(…) in nicht strittigen Szenarien zu verwenden. Platzieren Sie den Cursor in der Felddeklaration. Drücken Sie (Ctrl+. ), um das Menü Schnellaktionen und Refactorings zu öffnen. Wählen Sie Use new(…) aus.
Refactoring „Use new(…)“
Refactoring „Use new(…)“
  • Es gibt jetzt eine Codekorrektur, mit der redundante Gleichheitsausdrücke sowohl für C# als auch für Visual Basic entfernt werden. Platzieren Sie den Cursor auf dem redundanten Gleichheitsausdruck. Drücken Sie (Ctrl+. ), um das Menü Schnellaktionen und Refactorings zu öffnen. Wählen Sie Redundante Gleichheit entfernen aus.
Codekorrektur für Ausdruck „Redundante Gleichheitsausdrücke entfernen“
Codekorrektur für Ausdruck „Redundante Gleichheitsausdrücke entfernen“
  • Analysen des .NET-Codestils (IDE) können jetzt für den Build erzwungen werden. Sie können die Analysen des .NET-Codestils als NuGet-Paket für C# und Visual Basic installieren, oder Sie können sie in den Projekteigenschaften aktivieren. Sie können die Projekteigenschaften aufrufen, indem Sie im Projektmappen-Explorer zunächst mit der rechten Maustaste auf ein Projekt klicken und dann Eigenschaften auswählen. Wählen Sie dann die Registerkarte Code Analysis aus, auf der Sie die Option CodeStyle beim Erstellen erzwingen (experimentell) auswählen können.
Fenster „Projekteigenschaften“ zum Aktivieren von .NET-Codestil-Analysetools
Fenster „Projekteigenschaften“ zum Aktivieren von .NET-Codestil-Analysetools
  • Der Syntax Visualizer (installiert mit dem .NET Compiler Platform SDK) zeigt jetzt die aktuelle Vordergrundfarbe für erweiterte Farben an. Navigieren Sie einfach mit der Schnellansicht zu dem Text, für den Sie Farben ändern möchten, oder wählen Sie ihn im Editor aus, und klicken Sie dann auf die klassifizierte Farbe, um sie zu ändern.
Farbliche Syntax Visualizer-Kennzeichnung
Farbliche Syntax Visualizer-Kennzeichnung
  • Es gibt jetzt eine QuickInfo, wenn Sie mit der Maus auf die Diagnose-ID für Pragma-Warnungen zeigen. Die Diagnose-QuickInfo verfügt auch über einen klickbaren Link, mit dem Sie zur Dokumentation navigieren können.
Diagnose-QuickInfo für Pragma-Warnungen
Diagnose-QuickInfo für Pragma-Warnungen
  • Wenn Sie die EINGABETASTE innerhalb eines Kommentars drücken, erkennen Sie, dass die neue Zeile jetzt automatisch auskommentiert wird. Dies ist eine neue Option, die standardmäßig aktiviert ist. Um zu verhindern, dass die neue Zeile automatisch auskommentiert wird, navigieren Sie zu Extras>Optionen>Text-Editor>C# oder Standard>Erweitert, und deaktivieren Sie // am Anfang neuer Zeilen beim Schreiben von //-Kommentaren einfügen.

In 16.8 Vorschau 2 wurden Hinweise zu Inlineparameternamen hinzugefügt, mit denen Randsteuerelemente für Literale, umgewandelte Literale und Objektinstanziierungen vor jedem Argument in Funktionsaufrufen eingefügt werden. In dieser Version wurden die folgenden Verbesserungen hinzugefügt:

  • Weitere Anpassungsoptionen für die Typen von Randsteuerelementen, die eingefügt werden sollen.

  • Inlinetyphinweise für Variablen mit abgeleiteten Typen und Lambda-Parametertypen.

  • Eine Option zum Deaktivieren von Inlineparameter-Namenshinweisen, wenn Parameternamen mit der Methodenabsicht übereinstimmen und Parameternamen sich nur durch das Suffix unterscheiden.

  • Using-Direktiven werden ab sofort automatisch hinzugefügt, wenn Typen kopiert und in eine neue Datei eingefügt werden. Sie müssen diese Option zunächst unter Extras>Optionen>Text-Editor>C# oder Basic>Erweitert aktivieren, indem Sie auf Add missing using directives on paste (Beim Einfügen fehlende using-Direktiven hinzufügen) klicken.

Beim Einfügen fehlende using-Direktiven hinzufügen
Beim Einfügen fehlende using-Direktiven hinzufügen
  • Beim Drücken von ;, um eine Methode aus einer Vervollständigungsliste zu übernehmen, fügt IntelliSense jetzt automatisch die Klammern zusammen mit einem Semikolon für die Objekterstellung und Methodenaufrufe ein.
Vervollständigung des Methodenaufrufs
Vervollständigung des Methodenaufrufs
  • Für C# 9.0-Datensätze gibt es keine semantische Farbgebung. Sie können die Farben über Extras>Optionen>Umgebung>Schriftarten und Farben anpassen. Scrollen Sie unter Elemente anzeigen zu Benutzertypen: Datensätze, und wählen Sie die Farbe aus, die auf die Datensätze angewendet werden soll.
Semantische Farbgebung für Datensätze
Semantische Farbgebung für Datensätze
  • In C# 9.0 sind Ausschussvariablen in bestimmen Fällen von Musterabgleichen unnötig. Unnötige Ausschussvariablen werden ab sofort ausgeblendet, und es wird ein Codefix angeboten, um sie zu entfernen. Zeigen Sie mit dem Cursor auf die ausgeblendete Ausschussvariable. Drücken Sie (Ctrl+. ), um das Menü Schnellaktionen und Refactorings zu öffnen. Klicken Sie auf Remove unnecessary discard (Nicht benötigte Ausschussvariable entfernen).
Nicht benötigte Ausschussvariable entfernen
Nicht benötigte Ausschussvariable entfernen
  • Es gibt nun ein Refactoring, bei dem eine ausführliche und eine reguläre Zeichenfolge in eine interpolierte Zeichenfolge konvertiert werden, wobei geschweifte Klammern übernommen werden, die in der Ausgabe angegeben sein sollen. Dieses Refactoring steht nicht zur Verfügung, wenn die Zeichenfolge einer Konstanten zugewiesen ist. Zeigen Sie mit dem Cursor auf die Zeichenfolge. Drücken Sie (Ctrl+. ), um das Menü Schnellaktionen und Refactorings zu öffnen. Klicken Sie auf In interpolierte Zeichenfolge konvertieren.
Konvertieren in eine interpolierte Zeichenfolge mit Beibehaltung geschweifter Klammern
Konvertieren in eine interpolierte Zeichenfolge mit Beibehaltung geschweifter Klammern
  • Es gibt nun einen Codefix in Visual Basic, der das gemeinsam genutzte Schlüsselwort beim Konvertieren von Methoden entfernt, die für ein Modul freigegeben sind.

  • IntelliSense-Vervollständigung für Präprozessorsymbole ist jetzt vorhanden. Beginnen Sie mit der Eingabe der #if-Direktive, um die neuen Vervollständigungsoptionen für Symbole anzuzeigen, die derzeit im Bereich definiert sind.

IntelliSense-Vervollständigung für Präprozessorsymbole
IntelliSense-Vervollständigung für Präprozessorsymbole
  • Der Projektmappen-Explorer zeigt nun die neuen .NET 5.0-Quell-Generatoren unterhalb des Analysetools an, damit Sie einfach navigieren und den generierten Code anzeigen können.
Quell-Generatoren-Knoten im Projektmappen-Explorer
Quell-Generatoren-Knoten im Projektmappen-Explorer
  • Im Fenster Zu allen wechseln werden weder netcoreapp3.1 und netcoreapp2.0 übergreifend doppelte Ergebnisse noch Ergebnisse für partielle Typen angezeigt, die nur zum Einschließen eines anderen geschachtelten Typs vorhanden sind. Dies hilft Ihnen dabei, die Ergebnisse zu bereinigen, sodass Sie problemlos nach Code suchen und dorthin navigieren können. Die Ergebnisse enthalten jetzt auch den Dateinamen für partielle Symbole.
Im Fenster „Zu allen wechseln“ werden netcoreapp3.1 und netcoreapp2.0 übergreifend keine doppelten Ergebnisse angezeigt
Im Fenster „Zu allen wechseln“ werden netcoreapp3.1 und netcoreapp2.0 übergreifend keine doppelten Ergebnisse angezeigt
  • Die QuickInfo zeigt nun Compilerwarnungs-IDs oder -nummern für Unterdrückungen an. Zeigen Sie mit dem Mauszeiger auf die Warnungs-IDs oder -nummern, um die QuickInfo für die Diagnose-ID anzuzeigen.
QuickInfo zu Compilerwarnungs-IDs oder -nummern für Unterdrückungen
QuickInfo zu Compilerwarnungs-IDs oder -nummern für Unterdrückungen

Vielen Dank!

Zu guter Letzt möchten wir uns bei den folgenden Personen bedanken, die in diesem Monat zur .NET-Produktivität beigetragen haben (alias Roslyn):

  • Youssef Victor (@Youssef1313):
    • Definiert $Main als WellKnownMemberNames PR 49650
    • Implementiert: Treat record positional parameters as properties (Behandeln von Datensatzpositionsparametern als Eigenschaften) PR 48329
    • Fixed the dotted line for multiline condition in else if (Korrektur der gepunkteten Linie für mehrzeilige Bedingung in „else if“) PR 48534
  • Martin Strecker (@MaStr11):
    • Support for inlining of other interpolated strings (Unterstützung des Inlinings anderer interpolierter Zeichenfolgen) PR 49229
    • Signature Help: Prefer non-obsolete overloads (Signaturhilfe: Bevorzugen nicht veralteter Überladungen) PR 49961
  • Joseph Musser (@jnm2):
    • Preserve parentheses required by C# when simplifying interpolation (Beibehalten der von C# benötigten Klammern bei Vereinfachung der Interpolation) PR 49655
    • Stop offering to add DebuggerDisplay on static types (Beenden des Angebots, statischen Typen DebuggerDisplay hinzuzufügen) PR #49824
  • Huo Yaoyuan (@huoyaoyuan):
    • Do not cast when refactoring 'foreach var' (Beim Refactoring von „foreach var“ nicht umwandeln) PR 49120
    • Use private protected setters in compilation options (Verwenden von privaten geschützten Settern in Kompilierungsoptionen) PR 49034
  • Jon Senchyna (@TheSench): Feature/disambiguate using keyword (Funktion zur eindeutigen Darstellung des using-Schlüsselworts) PR 48898
  • Mathias Lykkegaard Lorenzen (@ffMathy): Increase maximum suggestions to 5 (Erhöhen der maximalen Anzahl von Vorschlägen auf 5) PR 49687
  • Alireza Habibi (@alrz): Generate explicit cast for implicit conversions in the codefix (Generieren von expliziten Umwandlungen für implizite Konvertierungen in der „use pattern matching“-Codekorrektur) PR 49757
  • Raf (Raffaele Rialdi) (@raffaeler): Added support to normalize auto properties on a single line (Unterstützung für das Normalisieren von automatischen Eigenschaften in einer einzelnen Zeile wurde hinzugefügt) PR 49495
  • Youssef Victor (@Youssef1313):
    • Implementierung eines Visual Basic-Codefix zur Entfernung von Shared aus Modulmembern PR #48289
    • Unterstützung für die init-Zugriffsmethode in CSharpSyntaxFacts PR #48137
    • Aktualisierung von WarningLevel für Tests auf den aktuellen Wert PR #47077
    • Entfernen unnötiger Unterdrückungen PR #48277
    • Extrahieren von Methodenrefactoring zur Nutzung mit Datensätzen PR #48531
    • Fehlerbehebung für WarningLevel für ausgeblendete Diagnosen PR #48397
    • Fehlerbehebung eines neuen Fehlers mit Zieltyp bei der Referenzzählung für „Alle suchen“ PR #48434
    • Eigenschaftenanalyse bei enthaltenen Klammern PR #48598
    • Fehlerbehebung für InvalidCastException bei Ausnahmefiltern mit switch-Ausdrücken PR #48260
  • Louis Zanella (@louis-z): Implementiertes Refactoring für die Konvertierung regulärer und ausführlicher Zeichenfolgen in eine interpolierte Zeichenfolge mit Beibehaltung geschweifter Klammern PR #48502
  • Shimmy (@weitzhandler): Standardkonstruktorvorschlag zwischen Membern PR #48503
  • Kai Jellinghaus (@HurricanKai: Umwandlung von GreenNode.CreateList in ein statisches Element und Anpassen aller Nutzungsfälle PR #48536
  • Jon Senchyna (@TheSench):
    • Aktualisieren der F1-Schlüsselwörter zum Differenzieren zwischen der Semantik von Standardschlüsselwörtern PR #48500
    • Aktualisieren der F1-Schlüsselwörter zur Disambiguierung von Klassen PR #48506
    • Hinzufügen eines F1-Schlüsselworts für Klassen zur Verwendung als Einschränkung für allgemeine Typen PR #21037
  • Petr Onderka (@svick): Fehlerbehebung der Kommentar-ID in der Dokumentation für das Verarbeiten für dynamische Werte und Tupel PR #48359
  • Huo Yaoyuan (@huoyaoyuan):
    • Fehlerbehebung zur Vermeidung eines Triggers für Verletzungen des Benennungsstils für vorab definierte Zahlen PR #48306
    • Fehlerbehebung für das IDE0057-Analysetool für eine ordnungsgemäße Verarbeitung von untergeordneten Zeichenfolgen innerhalb einer Zeichenfolge selbst PR #48321
  • Rastislav Novotny (@duracellko): Unterstützung für NotNullIfNotNull bei binären Operatoren PR #48490
  • Alireza Habibi (@alrz): Fehlerbehebung für das Analysieren des Musters von Nullable-Typen für eine verbesserte Wiederherstellung nach Fehlern PR #48447
  • Lingling Tong (@LinglingTong): Aktivieren der LSP-Pullmodelldiagnose für XAML PR #49145
  • David Maas (@PathogenDavid): Fehlerbehebung für SkipLocalsInit auf Modulebene mit allgemeinen Anweisungen PR #49435
  • Martin Strecker (@MaStr11): Unterstützung für Warnungsnummern in QuickInfos für Unterdrückungen PR #49102
  • Adam Speight (@AdamSpeight2008): LeistungsverbesserungPR #49459
  • Adam Ralph (@adamralph): Beheben eines ungültigen Codeausschnitts beim Hinzufügen optionaler Parameter zu öffentlichen Methoden PR #48725

.NET-Webtools

  • Stellen Sie Ihre Steeltoe-Anwendungen mithilfe der Veröffentlichungsfunktion in Visual Studio für Azure Spring Cloud bereit. Klicken Sie beispielsweise mit der rechten Maustaste > „Publish in Solution Explorer“ (Im Projektmappen-Explorer veröffentlichen). Wenn die Option nicht angezeigt wird, sorgen Sie dafür, dass Ihr Projekt das NuGet-Paket Microsoft.Azure.SpringCloud.Client (Version 1.0.0-preview.1 oder höher) beinhaltet.
Bereitstellen Ihrer Steeltoe-Anwendungen in Azure Spring Cloud
Bereitstellen Ihrer Steeltoe-Anwendungen in Azure Spring Cloud

Webtools

Wenn Sie App Configuration als verbundenen Dienst hinzufügen, wird Ihre Anwendung automatisch mit Ihrer Azure App Configuration-Ressource verbunden. Das automatische Erstellen von Code für .NET Core-Konsolenprojekte sowie das automatische Hinzufügen von NuGet-Paketen für .NET Framework-Projekte wird jetzt unterstützt. Um diesen verbundenen Dienst in Ihre App zu integrieren, klicken Sie auf Verbundene Dienste und fügen Azure App Configuration als Dienstabhängigkeit hinzu.

Hinzufügen von App Config zu verbundenen Diensten
Hinzufügen von App Configuration als verbundenen Dienst
  • Die Registerkarte „Verbundene Dienste“ unterstützt nun Azure App Configuration. Mit App Configuration können Sie Anwendungseinstellungen und Featureflags zentral verwalten. Wenn Sie diese Dienstabhängigkeit hinzufügen, wird der Code automatisch aktualisiert, um eine Verbindung mit Ihrer App Configuration-Ressource herzustellen. Dies umfasst das Installieren der aktuellen NuGet-Pakete, und dass Ihre Geheimnisse lokal oder in Key Vault gespeichert werden.
Verwalten Ihrer Konfigurationen mit der Azure App Configuration-Dienstverbindung
Verwalten Ihrer Konfigurationen mit der Azure App Configuration-Dienstverbindung

Visual Studio-Installer

Der Visual Studio-Installer beinhaltet mehrere neue Features als Reaktion auf Kundenanfragen.

Viele Benutzer nutzen den Installer, um mehrere Kopien von Visual Studio zu identifizieren, zu starten und zu verwalten. Als Unterstützung für dieses Nutzungsmuster erfordert der Visual Studio-Installer beim Start keine Rechteerweiterungen mehr, sondern nur dann, wenn Änderungen an Visual Studio und dem Computer vorgenommen werden sollen. Für andere Aktivitäten wie das Exportieren von Installationskonfigurationen, Durchsuchen von Neuerungen und Anzeigen von Updatedetails ist es nicht mehr erforderlich, dass der Benutzer zuerst erhöht Rechte erhält.

Bei früheren Versionen des Installers wurden Benutzer gelegentlich dazu aufgefordert, weitere Schritte durchzuführen, um den Installer zu aktualisieren. Beginnend mit diesem Update werden erforderliche Updates für den Installer als Teil des Installationsvorgangs durchgeführt, wodurch ein zusätzlicher Schritt eingespart werden kann.

Der Installer bietet nun auch die Möglichkeit, das dunkle Design auszuwählen. Benutzer können das Design des Installers über die Sonnen-/Mondschaltfläche (☼ / ☽) in der Titelleiste ändern. Für in der Visual Studio-IDE gestartete Updates wird die aktuelle Designauswahl von Visual Studio übernommen.

Visual Studio mit dunklem Design und Inlineinstallerupdate
Visual Studio mit dunklem Design und Inlineinstallerupdate

Test-Explorer-Audiohinweise und Barrierefreiheitsupdates

  • Der Test-Explorer kann jetzt Sounds wiedergeben, wenn ein Testlauf abgeschlossen ist. Sie können zwei Sounds auswählen: einen Sound, der angibt, dass der Testlauf mit allen durchlaufenen Tests erfolgreich war, und einen zweiten Sound, der angibt, dass der Testlauf mit mindestens einem fehlerhaften Test abgeschlossen wurde. Diese Funktion wurde als Benutzeranforderung gestartet und verbessert die Barrierefreiheit des Test-Explorers durch Hinzufügen eines Audiohinweises, der für Entwickler mit einer Sehbehinderung nützlich ist. Zur Soundauswahl wird das standardmäßige Windows 10-Sounddialogfeld verwendet, in dem Sie auch vordefinierte Sounds oder eine beliebige Audiodatei von Ihrem Computer auswählen können!
  • Der Zugriff auf „Gruppieren nach“ durch Sprachausgaben im Test-Explorer ist jetzt mit präziseren Ausdrücken und Wortreihenfolgen verbessert worden.
  • Das Anzeigen der langen Testausgabe im Testdetailsbereich des Test-Explorers ist jetzt durch einen Link zum direkten Öffnen der Protokolldatei, anstelle die spezielle Dokumentsteuerung zu verwenden, vereinfacht worden.

Testfunktionalität

  • Für die Code Coverage-Erfassung wurde Unterstützung für .NET Core-Testprojekte hinzugefügt, die Fakes verwenden.
  • Die Zeit für das Zusammenführen mehrere Code Coverage-Berichte wurde reduziert.

IntelliCode

  • IntelliCode stellt jetzt wiederholte Bearbeitungsvorschläge direkt in der IntelliSense-Vervollständigungsliste bereit. Sie können eine Vorschau der vorgeschlagenen Änderung anzeigen, die Änderung an dieser Stelle anwenden oder Vorschläge wie diese ignorieren – direkt im Vervollständigungselement. Erfahren Sie mehr über IntelliCode-Vorschläge.

Experimentelle Updates des Razor-Editors

  • Semantische HTML- und C#-Farbgebung
  • Umbenennen von C#-Symbolen, die in geschlossenen Razor-Dateien reflektiert werden
  • Weitere C#-Fehlerbehebungen in Razor-Dateien:
    • Hinzufügen eines DebuggerDisplay-Attributs
    • Erstellen und Zuweisen von Eigenschaften
    • Erstellen und Zuweisen von Feldern
    • Implementieren einer Schnittstelle oder abstrakten Klasse, einschließlich der Unterstützung für „mit Muster“, d. h. „Implementieren der Schnittstelle mit Dispose-Muster“
    • Generieren von Equal-Elementen, Hashcode und Konstruktor
  • Hinzufügen von Überprüfung auf NULL und Hinzufügen aller Überprüfungen auf NULL für Parameter
  • Weitere Verbesserungen an der Formatierung gemischter Inhalte in Razor-Dateien

Um den experimentellen Razor-Editor zu aktivieren, gehen Sie zu Extras>Optionen>Umgebung>Vorschaufeatures, und wählen Sie Enable experimental Razor editor (Experimentellen Razor-Editor aktivieren). Starten Sie Visual Studio anschließend neu.

Aus der Entwicklercommunity

Die Entwicklercommunity verfügt über eine vollständige Liste aller Neuerungen, die in dieser Version enthalten sind.

Im Folgenden finden Sie einige der wichtigsten Punkte, die in Version 16.9.0 veröffentlicht wurden:


Bekannte Probleme

Unter dem folgenden Link können Sie sich über alle offenen Probleme und verfügbaren Problemumgehungen in Visual Studio 2019 informieren.

Feedback und Vorschläge

Wir freuen uns auf Ihr Feedback! Informieren Sie uns über die Option Ein Problem melden in der oberen rechten Ecke im Installer oder direkt in der Visual Studio-IDE über mögliche Probleme. Das Feedbacksymbol befindet sich oben rechts. Sie können einen Vorschlag zu einem Produkt einreichen oder Ihre Probleme in der Entwicklercommunity für Visual Studio nachverfolgen, in der Sie auch Fragen stellen und nach Antworten suchen sowie neue Features vorschlagen können. Über unseren Livechatsupport erhalten Sie zudem kostenlose Hilfe bei der Installation.


Blogs

Profitieren Sie von den Einblicken und Empfehlungen auf der Webseite mit Blogs zu Entwicklertools, um sich bei allen Releases auf dem neuesten Stand zu halten und Zugang zu ausführlichen Beiträgen zu zahlreichen Funktionen zu erhalten.


Verlauf der Versionshinweise zu Visual Studio 2019

Weitere Informationen bezüglich der früheren Versionen von Visual Studio 2019 finden Sie auf der Seite Verlauf der Versionshinweise zu Visual Studio 2019.


Seitenanfang