Visual Studio 2022 version 17.7 Release Notes
Watch the recordings of the Visual Studio 2022 launch event to learn about what's new, hear tips & tricks, and download free digital swag.
Developer Community | Visual Studio 2022 Roadmap | System Requirements | Compatibility | Distributable Code | Release History | License Terms | Blogs | Latest Release Known Issues | Whats New in Visual Studio Docs
Click a button to download the latest version of Visual Studio 2022. For instructions on installing and updating Visual Studio 2022, see Update Visual Studio 2022 to the most recent release. Also, see instructions on how to install offline.
Visit the Visual Studio site to download other Visual Studio 2022 products.
Visual Studio 2022 version 17.7 Releases
- Sep 12th 2023 — Visual Studio 2022 version 17.7.4
- Aug 29th 2023 — Visual Studio 2022 version 17.7.3
- Aug 22nd 2023 — Visual Studio 2022 version 17.7.2
- Aug 15th 2023 — Visual Studio 2022 version 17.7.1
- Aug 8th 2023 — Visual Studio 2022 version 17.7
Visual Studio 2022 Blog
The Visual Studio 2022 Blog is the official source of product insight from the Visual Studio Engineering Team. You can find in-depth information about the Visual Studio 2022 releases in the following posts:
released Sep 12th, 2023
Summary of What's New in this Release of Visual Studio 2022 version 17.7.4
- Updated version of Git used by Visual Studio to v 220.127.116.11.
- Fixed a crash while applying changes with hot reload on a decompiled module.
- Ensures the security of the VS Installer Elevation Service by adding quotes to the path, preventing process hijacking along the path.
- Visual Studio not asserting for 0xC0000005: Access violation
Security Advisories Addressed
- CVE-2023-36799A vulnerability exists in .NET where reading a maliciously crafted X.509 certificate may result in Denial of Service. This issue only affects Linux systems.
- CVE-2023-36796This security update addresses a vulnerability in DiaSymReader.dll when reading a corrupted PDB file which can lead to Remote Code Execution.
- CVE-2023-36794This security update addresses a vulnerability in DiaSymReader.dll when reading a corrupted PDB file which can lead to Remote Code Execution.
- CVE-2023-36793This security update addresses a vulnerability in DiaSymReader.dll when reading a corrupted PDB file which can lead to Remote Code Execution.
- CVE-2023-36792This security update addresses a vulnerability in DiaSymReader.dll when reading a corrupted PDB file which can lead to Remote Code Execution.
- CVE-2023-36759This security update removes pgodriver.sys, where reading a malicious file can lead to Elevation of Privilege.
- CVE-2023-36758This security update addresses a vulnerability in VSInstallerElevationService when running a malicious executable which can lead to Elevatio of Privilege.
released Aug 29th, 2023
Summary of What's New in this Release of Visual Studio 2022 version 17.7.3
- Added support to list simulators and devices with Xcode 15 and removed the NewsstandKit hard link dependency.
- Fixed an issue preventing the Visual Studio Installer from running when there is a symlink in the installer path.
- The new Include Cleanup feature for C++ which was added in 17.7 has been causing crashes for users, so we have disabled it for now, with a view to re-enable in 17.8
- Opening a solution hangs if any files from a certain project were open
- VS 2022 crashes when attempting to open .sql file
- Kestrel Url containing wildcards not working on Visual Studio 2022 17.7
- VSIX installation failure on VS2022
- With New VS 2022 Update 17.7.0 Functional test are not working
released Aug 22nd, 2023
Summary of What's New in this Release of Visual Studio 2022 version 17.7.2
- Certain endpoint security and application control programs were inducing instability in Visual Studio. This has been addressed.
- Fixed crashes experienced by some users of the "Install WSL For Me" experience.
- Users who opened a folder containing a CMake project may have experienced an indefinite hang in Visual Studio. The race condition causing this hang has been identified and fixed.
- Remove Github actions from solution explorer
- Diagnostic Suppressors are not taken into account in the QuickInfo tooltip with VS 2022 17.7
released Aug 15th, 2023
Summary of What's New in this Release of Visual Studio 2022 version 17.7.1
- Commented out code is not colored correctly
- Output Window for Application disappear
- Fixes Csproj Editor does not open due to AndroidPackageFormat
- Solution Folders cannot be renamed
released Aug 8th, 2023
Summary of What's New in this Release of Visual Studio 2022 version 17.7
|Comparing Files||🙏– 543 votes|
|Copy and Trim Indentation||🙏– 86 votes|
|Multi-branch Git Graph||🙏– 149 votes|
|Create new GitHub Actions|
|Parallel Stack Filtering|
|Collapse All Descendants for Solution Explorer||🙏– 7 votes|
|Auto-decompilation for External .NET Code||🙏– 29 votes|
|New Auto Insights for the CPU usage tool|
C++ and game development
Linux and embedded development with C++
|WSL Automatic Acquisition|
|Remote File Explorer Updates|
[Other C++ Updates...]
|npm Dependency Management in ASP.NET projects|
|Supporting Vite for React and Vue new project creation|
|Power Platform connected services|
|Support for Serverless SQL Pool in SSDT|
Installation and Updates
|Rollback now preserves all user settings|
Enterprise Management and Acquisition
|Ability for standard users to update and modify Visual Studio||🙏– 97 votes|
Microsoft 365 development
|Microsoft Teams development tools (Teams Toolkit)|
Other Developer Community Suggestions: You asked, we listened!
- Cannot import anymore tables into edmx. "Running transformation: System.NullReferenceException: Object reference not set to an instance of an object." 46 votes
- Selection in Batch Build was not remembered after restart 41 votes
- .vs folder grows unexpectedly large 32 votes
- Call stack and other windows not rendering correctly 21 votes
- SignTool Error: The /p option requires the /f option 12 votes
- In MAUI，Can't Use F7 To Xaml and Use Shift+ F7 To CS 10 votes
- Clicking pinned tab drags window out and unpin 9 Votes
- MSVC compiler hangs on user defined operator overload 8 votes
- HLSL Tools will crash Visual Studio when viewing shader files in Unreal Engine and the virtual file mapping has been provided 7 votes
- error C1010 with VS 2022 version 17.6.0 Preview 3 and precompiled headers
- SSDT IN VS 2022 IS TOTALLY BROKEN
- Compiler crashes for analysis of code including specialization of class template with nested non-template class referring to containing class
- VS failed to launch with random JSON dialog
- Azure Function's host.json being ignored unless a manual rebuild is done or code is modified
You no longer need to leave Visual Studio and rely on other tools to compare files. Now you can easily compare any file in Solution Explorer with other files by either:
- Right-clicking on a single file, selecting “Compare With…” from the context menu which will bring up File Explorer. Navigating to any file on disk and selecting it for comparison.
- Multi-selecting two files by holding down the Ctrl button then right-clicking and selecting “Compare Selected” from the context menu.
Please share your feedback here. We’d love to hear your thoughts on this new experience.
Copy and Trim Indentation
When you copy code from Visual Studio to another program (Outlook, Teams, Slack, etc), Visual Studio will now automatically fix the indentation for you.
Multi-branch Git Graph
Building on the work in preview, we've implemented the multi-branch graph to enable visualizing multiple branches in the same graph along with other UI improvements.
You can select other branches to compare to the currently checked out branch or use the hover eye icon to toggle branches on and off in the graph, keeping track of your incoming and outgoing branches on the currently checked out branch with the new summary icons. Additionally, you can see avatars for the authors in Azure DevOps repos, get smoother graph rendering updates, and maximize your space by collapsing the branches panel or opening your commit details.
Please share your feedback on this feature here
Create new GitHub Actions
You can now create new GitHub Actions workflows from Solution Explorer. It supports Azure Container Apps and Azure Kubernetes Service as destinations, and it supports deploying multiple projects with a single workflow. When your project is under source control on GitHub.com, a new node appears in Solution Explorer representing GitHub Actions (if you are not seeing the new node, make sure "Show GitHub Actions in Solution Explorer" is checked under Tools > Options > Preview Features). Right-click and select "Create new" to try out the new experience.
Parallel Stacks Filter
The Parallel Stack Window now supports filtering options. With filtering, you can easily focus on just the frames and threads that matter to you, so you can achieve greater clarity and get more done in less time. In additional to filtering we have now added the ability to Drag Select frames from the parallel stack window. So now you can easily perform operations like copy/paste, flag/unflag or freeze/thaw for all the selected frames at once.
Collapse All Descendants for Solution Explorer
- We've added a "Collapse All Descendents" command to the context menu when you right-click on a node in Solution Explorer. You can use this to collapse the selected node as well as its descendent nodes. We've also mapped this as a shortcut via the Ctrl+Left arrow keys.
We recognize that performance of Visual Studio is critical to you. With this in mind, we have optimized Program Database (PDB) files, resulting in improving debugging sessions and decreasing the project selection screen loading time for Unreal projects for example by 21% (~4 sec gain). Additionally, the F5 path is optimized, leading to a 5-10% improvement in the debugger's startup time and process launch.
All-in-One Search Responsiveness
Several accuracy and performance enhancements are coming to All-in-One Search. For example, exact matches now show higher in the results list and results update more accurately in real time as you type your query.
Try out the All-In-One Search experience by making sure it is enabled in Tools > Manage Preview Features > “New Visual Studio Search experience (restart required)” and using the Ctrl + T or the Ctrl + Q keyboard shortcut to launch it. If you have feedback to share with us about this feature, let us know here.
Find in Files Search Time
Find in Files search time has been significantly improved with various optimizations, resulting in a remarkable ~50% reduction in search time!
C# Spell Checker Memory Consumption
The LSP (Language Server Protocol) for the C# Spell Checker underwent significant improvements. By implementing a more efficient data structure and enabling streaming support, we achieved a remarkable 90% reduction in the memory footprint of the JSON transferred between the LSP Server and LSP Client. This enhancement leads to faster performance, increased efficiency and scalability for the spell-checking functionality.
C++ Unreal Engine Time to IntelliSense
In Unreal Engine projects, the time for IntelliSense and colorization to become ready in newly opened C++ files is significantly reduced. The generation of IntelliSense cache (IPCH) is now 30% faster in Unreal Engine 5.1 and 5.2 projects and 15% faster in Unreal Engine 4.27 projects.
Light Bulb Responsiveness
Performance enhancements to the light bulb feature in Roslyn have resulted in faster fixes for slow diagnostics like Fix Formatting and Simplify Type Name. Enjoy immediate suggestions and fixes, even in large documents or after making edits.
Solutions Load CPU Consumption
Loading large solutions is now more efficient, with reduced CPU consumption thanks to optimized hash creation methods. This enhancement is particularly beneficial for machines with multiple cores.
Auto-decompilation for External .NET Code
The Visual Studio Debugger supports Autodecompilation for external .NET code. Whenever you step into code that has been implemented externally, the debugger will automatically decompile it and display the point of execution.
This feature is particularly useful when analyzing call stacks, as you can double-click any stack frame and the debugger will navigate directly to the code. Additionally, you can debug the decompiled code and set breakpoints easily. All of the decompiled code is also shown under the External Sources node in Solution Explorer, make it easy to browse through the external files if needed.
If you wish to disable the automatic decompilation of external code, simply clear the "Automatically decompile to source when needed (managed only)" option under Tools > Options > Debugging.
New Auto Insights for CPU Usage tool
The CPU usage tool now provides additional insights and details for scenarios involving certain methods and properties, such as Enum.HasFlag, Enum.ToString, String.StartsWith, String(char), ConcurrentDictionary.Count, ConcurrentDictionary.Keys/Values, and DateTime.Now.
Additionally, there is now an 'Ask Copilot' option that uses the Copilot chat extension. When triggered, Copilot chat will explain why the issue occurred and suggest a fix.
C++ and game development
Unreal Engine Macros Formatting for C++
Visual Studio will detect and follow indentation and formatting rules for your Unreal Engine reflection macros. To turn on Unreal Engine specific formatting, search "Unreal Engine" in Options or go to Tools > Options > Text Editor > C/C++ > Code Style > Formatting > Unreal Engine and check "Apply special formatting for Slate declarative syntax and Unreal Engine reflection macros."
Build Insights in Visual Studio (C++)
Thanks to your feedback, we are happy to announce that Build Insights is now integrated with Visual Studio 2022! Build Insights provides you with valuable information needed when optimizing your C++ build times. Start your Build Insights .etl trace capture with the click of a button for your solution or projects. After compilation, Build Insights will create a diagnostic report that allows you to see expensive includes and navigate directly to header files. For power users, you can open Windows Performance Analyzer from within the report.
Unreal Engine Naming Convention Checker for C++
With the Unreal Engine Naming Convention checker, Visual Studio will now give you hints when your symbols are not conformant to the Unreal Engine coding style. After adding an .editorconfig file to your Unreal Engine project, Visual Studio will display naming convention warnings in the Error List and provide a Quick Fix option upon right-clicking.
Improved Doxygen overload resolution
Previously, when a specific function had a Doxygen comment, it did not appear in the Quick Info for each overload except for the one immediately following the comment. We now allow the documentation from another overload to be displayed in the Quick Info for all associated overloads.
Unreal Engine Blueprint Find All References
You can now search for references of
UFUNCTION in Unreal Engine Blueprints with the new Blueprint Find All References. To start, right-click on a symbol with Blueprint references. Then, click "Find All Blueprint References" to start the search. The latest version of the Unreal Engine plugin "Visual Studio Integration Tool" is required.
Address Sanitizer continue_on_error Support
We have expanded our Address Sanitizer support with a new
continue_on_error mode. This new runtime mode diagnoses and reports hidden memory safety errors, with zero false positives, as your app runs. Output to
stdout with set
ASAN_OPTIONS=continue_on_error=1, or to
set ASAN_OPTIONS=continue_on_error=2. See AddressSanitizer continue_on_error for more details.
Added new "Include Cleanup" feature. This provides suggestions to add direct includes whenever indirect includes are detected, and identifies any unused includes. This feature is disabled by default. To enable it, navigate to Tools > Options > Text Editor > C/C++ > IntelliSense and select "Enable #include cleanup". You can learn more about this feature in the Include Cleanup blog post.
Linux and embedded development with C++
WSL Automatic Acquisition
One-click downloads of WSL are now available with the Linux and Embedded Workload. When you open a CMake project that can target Linux, a gold bar will open for you to click and open a WSL installation process. By default, it will install an Ubuntu machine. Additionally, you can open the dialog by navigation at any time to Project > Install WSL for Me.
Remote File Explorer Updates
We have added a search capability to the Remote File Explorer. You are now able to search for files based on where you are in your remote machine along the top bar, and then right-click to go to any found file’s location. Additionally, we have added two new buttons to the toolbar to improve the Remote File Explorer experience, one to go to the home directory and one to open tools options.
Other C++ updates
- Added support for CMakePresets.json version 6. See the CMake documentation for details on what is available in this version.
- Upgraded the version of LLVM shipped with Visual Studio to version 16. See the LLVM and Clang release notes for what is available in this version.
- Added new intrinsics for overflow detection, such as
- The Connection Manager API is now publicly exposed for programmaticaly managing your connections.
- We have changed the linking model used by ASan. Instead of each runtime library setting (
/MTd) having its own way of providing the ASan runtime, all of those settings now depend on single DLL:
clang_rt.asan_dynamic-<arch>.dll. This means that programs that load binaries that link to the C Runtime differently will be able to be run under ASan without any compatibility issues, and
/MT(d)DLLs no longer need the host EXE to be built with ASan in order to run. Note that this means
/MT(d)binaries now also rely on the
clang_rt.asan_dyanmic-<arch>.dllbeing present on path for that program, so testing environments will need to be updated.
- You can now use the Visualize Expansion option on macros to view the expansion of nested macros step-by-step.
npm Dependency Management in ASP.NET projects
In your ASP.NET projects that leverage npm packages, Visual Studio will now show those packages from your package.json in the Dependencies node in Solution Explorer. This now enables you to get a clear view of all your solution dependencies in one place for .NET with references, NuGet packages, and now npm packages. You can add new packages or restore (npm install) all packages by right clicking on the npm node.
You can search and select which package you would like to add using the UI.
You can update or uninstall a specific package by right clicking on it.
Supporting Vite for React and Vue new project creation
This change also gives a performance boost to the process, resulting in a much faster time to create these types of projects. It also addresses the creation failure problem when you don't have the necessary dependencies installed locally on your machine.
- We've made updates to the HTTP Editor including a new Response View. The new Response View includes support for JSON highlighting as well as the ability to view; the raw response, the headers of the request and the request as it was sent to the web server.
- The green play button to send the request was replaced by code lens actions.
Power Platform connected services
- We've added Connected Services support for Microsoft Power Platform.
- You can create a custom connector to you Power Platform environment and create a dev tunnel to locally test and debug your Web API project.
- Added inline return type hints:
Since they are in preview and disabled by default. Enable them via Tools -> Options -> Text Editor -> F# -> Advanced -> Display return type hints
- Added new bulk code fixes:
See the full list of these code fixes in #15082
- Resolved an issue with parameter name hints crashing when using multi-line arguments
- Added an option to customize Quick Info description width: Tools -> Options -> Text Editor -> F# -> QuickInfo -> Preferred description width in characters. See more details in #14964
- Incorporated activity log into the output pane (for more information, refer to #15028)
- Fixed bulk code fix for removing unused opens
- Improved the speed of Quick Info link navigation
- Added support for the new interpolated strings syntax with multiple dollar signs (details and RFC):
- Introduced tooltips for inline hints:
A- Type hints:
B- Parameter name hints:
- Fixed parameter name hints for nested function calls (#15156) and custom operations (#15119)
- Fixed return type hints for cases where annotations are present alongside generic or type parameters (#15124)
Support for Serverless SQL Pool in SSDT
We are providing the capability of importing a database from Serverless SQL Pool into SSDT. It can be done by the same process by which a regular database is imported.
Users will also be able to publish a whole new project in the Serverless SQL Pool. The target platform needs to be set as SQL Serverless
Regular SSDT operations like Schema Compare, Data Compare, Addition of external tables can be performed on these tables.
- Fixed issue with publish using Azure Interactive Dir to an Azure Debugger.
- Changed the Nomenclature of
SQL Serverlessin the Target Platform to
Azure Synapse Analytics Serverless SQL Pool.
Installation and Updates
Visual Studio supports the ability to return to your previously installed version. Rolling back will return Visual Studio to the version installed prior to the last applied update, but it will keep any modifications to selected components chosen since that last update. Your common synchronized settings such as themes, fonts, key bindings, and windows layout will be restored. Similarly, your roamed settings will always be restored. A recent addition to this feature is that now your local customizations such as your user settings will be restored only if you are rolling back to version 17.7 Preview 3 or higher. For more information, please visit the Rollback blogpost.
Enterprise Management and Acquisition
Ability for standard users to update and modify Visual Studio
This version contains a new feature that will help enterprises adhere to security best practices while enabling their developers to update and modify their development environment. Administrators can now delegate installer functionality to standard users. So, if an administrator follows security best practices and restricts user permissions, then the administrator can now grant standard users access to installer functionality, thus allowing developers to update and modify the product.
To enable this configuration, an administrator will need to perform two simple steps on the client machine: install the latest 17.7 installer, and set the new global policy.
- You can acquire the latest installer on the client machine by updating the product.
- Set the global policy 'AllowStandardUserControl' REG_DWORD.
- A value of 1 enables just update and rollback.
- A value of 2 enables all installer functionality, including modify and install from Available tab.
This functionality applies to all versions Visual Studio 2017 and greater.
Many enterprise users have requested this capability and we hope that our solution meets your needs. Please try it out and let us know what you think!
Microsoft 365 development
Microsoft Teams development tools (Teams Toolkit)
We have fully tested the preview features in 17.6 Preview channel and now ship the preview features officially in 17.7 GA version. Including:
- Teams Toolkit update the Teams app templates project structure to make it more transparent and flexible to developers.
- In the new project, we introducing a new config file
teamsapp.yml, where users can see what actions Teams Toolkit performs behind the scenes when lifecycle commands like debug, provision and deploy etc are triggered. Users can clearly see the actions being conducted by Teams Toolkit and can customize the actions by editing the yml file to change the Teams Toolkit behavior.
- Now you can use VS native Dev Tunnel feature to create tunneling service for Teams app. NgRok is no longer the only way to create tunnel for Teams projects.
- TeamsFx .NET SDK updates
- Support to get a paginated list of targets where the bot is installed in notification bot.
- Support to get a paginated list of members of one-on-one, group, or team conversation in notification bot.
- Simplified Teams Tab app template is provided in this version.
- Several bug fix and UI improvements to ensure better user experience on Teams Toolkit