2022LogoЗаметки о выпуске Visual Studio 2022 версии 17.4


Совет

Просмотрите записи с мероприятия по запуску Visual Studio 2022, чтобы узнать о новых возможностях, услышать советы и скачать бесплатные цифровые образцы.

Сообщество разработчиков | Дорожная карта Visual Studio 2022 | Требования к системе | Совместимость | Распространяемый код | Журнал выпусков | Условия лицензии | Блоги | Известные проблемы последнего выпуска | Документация по новым возможностям в Visual Studio


Нажмите кнопку, чтобы скачать последнюю версию Visual Studio 2022. Инструкции по установке и обновлению Visual Studio 2022 см. в документации по обновлению до последнего выпуска Visual Studio 2022. Кроме того, см. инструкции по установке в автономном режиме.

Кнопка Скачивание профессиональной кнопкиСкачать корпоративную кнопку

Посетите сайт Visual Studio, чтобы скачать другие продукты Visual Studio 2022.


Поддержка диапазона времени

Корпоративные и профессиональные пользователи Visual Studio 2022 версии 17.4, настроенные на получение обновлений на канале LTSC версии 17.4, поддерживаются и получат исправления уязвимостей системы безопасности до июля 2024 года. Дополнительные сведения о базовых планах поддержки Visual Studio см. в политике поддержки Visual Studio 2022.

Щелкните одну из кнопок ниже, чтобы скачать самый безопасный выпуск Visual Studio 2022 версии 17.4 из канала LTSC 17.4. Дополнительные продукты LTSC 17.4 можно найти на сайте Подписки Visual Studio.

Кнопка Download Enterprise LTSCКнопка Download Professional LTSC

Выпуск Visual Studio Community поддерживается только в рамках Актуального канала с последним сервисным выпуском последней дополнительной версии Visual Studio.

Посетите сайт Visual Studio, чтобы получить доступ к ссылкам для наиболее актуальных версий продуктов Visual Studio 2022. Инструкции по установке и обновлению Visual Studio 2022 см . в обновлении Visual Studio 2022 до последнего выпуска. Руководство по Visual Studio Администратор istrator содержит рекомендации по развертыванию Visual Studio в организации.

Блог Visual Studio 2022

Блог Visual Studio 2022 является официальным источником сведений о продукте от группы разработчиков Visual Studio. Более подробные сведения о выпусках Visual Studio 2022 можно найти в следующих записях:

Мы рассмотрели ряд ошибок в этом выпуске и добавили новые функции на основе ваших предложений в Сообщество разработчиков. Спасибо за ваши постоянные отзывы. Ниже приведен список предложений, которые мы предоставляем в рамках этой предварительной версии.


Выпуски Visual Studio 2022 версии 17.4


17.4.18 Visual Studio 2022 версии 17.4.18

Выпущено 9 апреля 2024 г.

Проблемы, устраненные в этом выпуске 17.4.18

  • В этом исправлении ошибки клиент теперь может использовать загрузчик в макете и передать параметр --noWeb для установки на клиентском компьютере и убедиться, что установщик и продукт Visual Studio скачиваются только из макета. Ранее, иногда во время установки установщик не уважал параметр -noWeb и попытался самостоятельно обновить себя из Интернета.

Устранены рекомендации по безопасности

  • CVE-2024-21409 Уязвимость после использования существует в WPF, что может привести к повышению привилегий при просмотре недоверенных документов.
  • CVE-2024-28929 Это обновление устраняет уязвимость удаленного выполнения кода в драйвере Microsoft ODBC для Microsoft SQL Server.
  • CVE-2024-28930 Это обновление устраняет уязвимость удаленного выполнения кода в драйвере Microsoft ODBC для Microsoft SQL Server.
  • CVE-2024-28931 Это обновление устраняет уязвимость удаленного выполнения кода в драйвере Microsoft ODBC для Microsoft SQL Server.
  • CVE-2024-28932 Это обновление устраняет уязвимость удаленного выполнения кода в драйвере Microsoft ODBC для Microsoft SQL Server.
  • CVE-2024-289333 Это обновление устраняет уязвимость удаленного выполнения кода в драйвере Microsoft ODBC для Microsoft SQL Server.
  • CVE-2024-28934 Это обновление устраняет уязвимость удаленного выполнения кода в драйвере Microsoft ODBC для Microsoft SQL Server.
  • CVE-2024-28935 Это обновление устраняет уязвимость удаленного выполнения кода в драйвере Microsoft ODBC для Microsoft SQL Server.
  • CVE-2024-28936 Это обновление устраняет уязвимость удаленного выполнения кода в драйвере Microsoft ODBC для Microsoft SQL Server.
  • CVE-2024-28937 Это обновление устраняет уязвимость удаленного выполнения кода в драйвере Microsoft ODBC для Microsoft SQL Server.
  • CVE-2024-28938 Это обновление устраняет уязвимость удаленного выполнения кода в драйвере Microsoft ODBC для Microsoft SQL Server.
  • CVE-2024-28941 Это обновление устраняет уязвимость удаленного выполнения кода в драйвере Microsoft ODBC для Microsoft SQL Server.
  • CVE-2024-28943 Это обновление устраняет уязвимость удаленного выполнения кода в драйвере Microsoft ODBC для Microsoft SQL Server.
  • CVE-2024-29043 Это обновление устраняет уязвимость удаленного выполнения кода в драйвере Microsoft ODBC для Microsoft SQL Server.

17.4.17 Visual Studio 2022 версии 17.4.17

Выпущено 12 марта 2024 г.

Проблемы, устраненные в этом выпуске 17.4.17

Устранены рекомендации по безопасности

  • CVE-2024-21392 Уязвимость существует в .NET, где специально созданные запросы могут привести к утечке ресурсов, что приводит к отказу в обслуживании.
  • CVE-2024-26190 Уязвимость существует в MsQuic.dll, что может привести к выделению небольших блоков памяти до тех пор, пока подключение остается в живых.
  • CVE-2023-27911 Эта рекомендация повторно публикуется, чтобы указать, что пакет SDK для Autodesk® FBX® больше не поддерживается в Visual Studio 2022.

17.4.16 Visual Studio 2022 версии 17.4.16

Выпущено 13 февраля 2024 г.

Проблемы, устраненные в этом выпуске 17.4.16

Устранены рекомендации по безопасности

  • CVE-2024-0057 — уязвимость обхода функций безопасности существует, когда приложения на основе Microsoft платформа .NET Framework используют API-интерфейсы сборки цепочки X.509, но не полностью проверяют сертификат X.509 из-за ошибки логики.
  • CVE-2024-21386 Уязвимость существует в ASP.NET приложениях с помощью SignalR, где вредоносный клиент может привести к отказу в обслуживании.
  • CVE-2024-21404 Уязвимость типа "отказ в обслуживании" существует в .NET с поддержкой OpenSSL при анализе сертификатов X509.

17.4.15 Visual Studio 2022 версии 17.4.15

Выпущено 9 января 2024 г.

Проблемы, устраненные в этом выпуске 17.4.15

  • Обновлен MinGit до версии 2.43.0.1, которая поставляется с OpenSSL версии 3.1.4 и обращается к регрессии, когда сетевые операции были действительно медленными при определенных обстоятельствах.

Устранены рекомендации по безопасности

  • CVE-2024-20656 Уязвимость существует в службе VSStandardCollectorService150, где локальные злоумышленники могут повысить привилегии на узлах, где запущена затронутая установка Microsoft Visual Studio.
  • CVE-2023-32027 Эта рекомендация повторно публикуется для решения уязвимости microsoft ODBC Driver for SQL Server Remote Code Execution в Visual Studio.
  • CVE-2023-32025 Эта рекомендация повторно публикуется для решения уязвимости microsoft ODBC Driver for SQL Server Remote Code Execution в Visual Studio.
  • CVE-2023-32026 Эта рекомендация повторно публикуется для решения уязвимости microsoft ODBC Driver for SQL Server Remote Code Execution в Visual Studio.
  • CVE-2023-29356 Эта рекомендация повторно публикуется для устранения уязвимости microsoft ODBC Driver for SQL Server Remote Code Execution в Visual Studio.
  • CVE-2023-32028 Эта рекомендация повторно публикуется для решения уязвимости удаленного выполнения кода Microsoft SQL OLE DB в Visual Studio.
  • CVE-2023-29349 Эта рекомендация повторно публикуется для решения уязвимости microsoft ODBC и OLE DB Remote Code Execution в Visual Studio.
  • CVE-2024-0057 — уязвимость обхода функций безопасности существует, когда приложения на основе Microsoft платформа .NET Framework используют API-интерфейсы сборки цепочки X.509, но не полностью проверяют сертификат X.509 из-за ошибки логики.
  • CVE-2024-0056 Уязвимость существует в поставщике данных SQL Microsoft.Data.SqlClient и System.Data.SqlClient, где злоумышленник может выполнять атаку перехвата (иногда называется MITM или злоумышленником в середине, атакой) между клиентом SQL и сервером SQL.
  • CVE-2024-21319 Корпорация Майкрософт выпускает эти рекомендации по безопасности, чтобы предоставить сведения об уязвимости в шаблонах проектов ASP.NET Core.

17.4.14 Visual Studio 2022 версии 17.4.14

Выпущено 14 ноября 2023 г.

Проблемы, устраненные в этом выпуске 17.4.14

Из Сообщество разработчиков:

Устранены рекомендации по безопасности

  • CVE-2023-36038Уязвимость существует в службах IIS ASP.NET, где удаленный пользователь, не прошедший проверку подлинности, может выдавать специально созданные запросы к приложению .NET, что может привести к отказу в обслуживании.
  • CVE-2023-36049Уязвимость с повышением привилегий существует в .NET, где ненадежные URI, предоставленные System.Net.WebRequest.Create, можно использовать для внедрения произвольных команд на серверные FTP-серверы.
  • CVE-2023-36558Уязвимость обхода функций безопасности существует в ASP.NET, где неавторизованный пользователь может обойти проверку на формах сервера blazor, которые могут активировать непреднамеренные действия.
  • CVE-2023-36042Уязвимость типа "отказ в обслуживании" существует в Visual Studio, где неправильно сформированное имя может привести к бесконечному циклу.

17.4.13 Visual Studio 2022 версии 17.4.13

Выпущено 24 октября 2023 г.

Проблемы, устраненные в этом выпуске 17.4.13

Повторная публикация помощников по безопасности

  • УЯЗВИМОСТЬ CVE-2023-36799A существует в .NET, где чтение вредоносно созданного сертификата X.509 может привести к отказу в обслуживании. Эта проблема затрагивает только системы Linux.
  • CVE-2023-36796Это обновление безопасности устраняет уязвимость в DiaSymReader.dll при чтении поврежденного PDB-файла, что может привести к удаленному выполнению кода.
  • CVE-2023-36794Это обновление безопасности устраняет уязвимость в DiaSymReader.dll при чтении поврежденного PDB-файла, который может привести к удаленному выполнению кода.
  • CVE-2023-36793Это обновление безопасности устраняет уязвимость в DiaSymReader.dll при чтении поврежденного PDB-файла, что может привести к удаленному выполнению кода.
  • CVE-2023-36792Это обновление безопасности устраняет уязвимость в DiaSymReader.dll при чтении поврежденного PDB-файла, который может привести к удаленному выполнению кода.

17.4.12 Visual Studio 2022 версии 17.4.12

Выпущено 10 октября 2023 г.

Проблемы, устраненные в этом выпуске 17.4.12

  • Параметры средств сборки MSVC версии 143 C++ версии 14.32-17.2 и v14.34-17.4 теперь устанавливают правильную версию локальных распространяемых двоичных файлов приложения.

Устранены рекомендации по безопасности

  • CVE-2023-36435Уязвимость утечки памяти существует в MsQuic.dll что может привести к отказу в обслуживании. Эта проблема затрагивает только системы Windows.
  • CVE-2023-38171Уязвимость указателя NULL существует в MsQuic.dll что может привести к отказу в обслуживании. Эта проблема затрагивает только системы Windows.
  • CVE-2023-44487Уязвимость существует на веб-сервере ASP.NET Core Kestrel, где вредоносный клиент может затопить сервер специально созданными запросами HTTP/2, вызывая отказ в обслуживании.

17.4.11 Visual Studio 2022 версии 17.4.11

Выпущено 12 сентября 2023 г.

Проблемы, устраненные в этом выпуске 17.4.11

  • Обновленная версия Git, используемая Visual Studio до версии 2.41.0.3.
  • Набор инструментов MSVC исправлен так, что среда CL не завершается ошибкой при запуске сеанса vcperf с флагом "/noadmin". Это позволяет собирать данные для сборки Аналитика (и оптимизировать время сборки), не требуя повышения привилегий.

Из Сообщество разработчиков:

Устранены рекомендации по безопасности

  • УЯЗВИМОСТЬ CVE-2023-36799A существует в .NET, где чтение вредоносно созданного сертификата X.509 может привести к отказу в обслуживании. Эта проблема затрагивает только системы Linux.
  • CVE-2023-36796Это обновление безопасности устраняет уязвимость в DiaSymReader.dll при чтении поврежденного PDB-файла, что может привести к удаленному выполнению кода.
  • CVE-2023-36794Это обновление безопасности устраняет уязвимость в DiaSymReader.dll при чтении поврежденного PDB-файла, который может привести к удаленному выполнению кода.
  • CVE-2023-36793Это обновление безопасности устраняет уязвимость в DiaSymReader.dll при чтении поврежденного PDB-файла, что может привести к удаленному выполнению кода.
  • CVE-2023-36792Это обновление безопасности устраняет уязвимость в DiaSymReader.dll при чтении поврежденного PDB-файла, который может привести к удаленному выполнению кода.
  • CVE-2023-36759Это обновление безопасности удаляет pgodriver.sys, где чтение вредоносного файла может привести к повышению привилегий.

17.4.10 Visual Studio 2022 версии 17.4.10

Выпущено 8 августа 2023 г.

Проблемы, устраненные в этом выпуске 17.4.10

  • Устранена проблема, из-за которой все коммутаторы VSWhere не возвращали экземпляры в состоянии без запуска.

Устранены рекомендации по безопасности

  • CVE-2023-35390Уязвимость существует, когда некоторые команды dotnet используются в каталогах с более слабыми разрешениями, что может привести к удаленному выполнению кода.
  • CVE-2023-38180Уязвимость существует в Kestrel, где при обнаружении потенциально вредоносного клиента Kestrel иногда не удастся отключить его, что приводит к отказу в обслуживании.
  • CVE-2023-38178Уязвимость существует в .NET Kestrel, где вредоносный клиент может обойти ограничение потока QUIC в HTTP/3 как в ASP.NET, так и во время выполнения .NET, что приводит к отказу в обслуживании.
  • CVE-2023-35391Уязвимость существует в ASP.NET Core 2.1, .NET 7.0 и .NET 6.0 с помощью SignalR, когда использование заднего плана redis может привести к раскрытию информации.
  • CVE-2023-36897 Visual Studio 2010 Tools for Office Runtime Spoofing Vulnerability This security updates устраняет уязвимость, в которой удаленный злоумышленник не прошел проверку подлинности, может подписывать развертывания надстроек VSTO без допустимого сертификата подписи кода.

17.4.9 Visual Studio 2022 версии 17.4.9

Выпущено 11 июля 2023 г.

Проблемы, устраненные в этом выпуске 17.4.9

Устранены рекомендации по безопасности

  • CVE-2023-33127 .NET Remote Code Execution Уязвимость A существует в приложениях .NET, где диагностический сервер можно использовать для достижения межсеансового или межпользовательского повышения привилегий (EoP) и выполнения кода.
  • CVE-2023-33170 .NET Security Bypass Vulnerability A уязвимость существует в приложениях ASP.NET Core, где максимальное количество попыток блокировки учетной записи может не быть немедленно обновлено, что позволяет злоумышленнику попробовать дополнительные пароли.

17.4.8 Visual Studio 2022 версии 17.4.8

Выпущено 13 июня 2023 г.

Проблемы, устраненные в этом выпуске 17.4.8

  • Исправлена ошибка, из-за которой смежные плавали, используемые в магазине, иногда имеют свои верхние 32 бита не карта
  • Исправлено состояние гонки в инициализации ASAN, вызывающее сбои при запуске
  • Исправлены ложные срабатывания в отчетах об ошибках в некоторых случаях GlobalLock/Unlock и LocalLock/Unlock, где была выделена память до инициализации ASAN
  • Исправлена проблема ASAN с RtlReAllocateHeap с кучами, помеченными HEAP_REALLOC_IN_PLACE_ONLY

Устранены рекомендации по безопасности



17.4.7 Visual Studio 2022 версии 17.4.7

Выпущено 11 апреля 2023 г.

Проблемы, устраненные в этом выпуске 17.4.7

  • MSVC ASAN игнорирует файлы сопоставленной памяти, когда функции памяти Rtl* использовались для управления этой памятью.
  • Исправлен сбой при отправке недопустимых входных данных драйверу, используемому во время обучения PGO для драйверов режима ядра.
  • Исправлено разрешение оператора шаблона MSVC с помощью ISO C++17 и ISO C++20

Устранены рекомендации по безопасности


17.4.6 Visual Studio 2022 версии 17.4.6

Выпущено 14 марта 2023 г.

Проблемы, устраненные в этом выпуске 17.4.6

  • Исправлена регрессия производительности ASAN в отношении больших объемов потоков, обращаюющихся к одной куче одновременно. Кроме того, измените значение параметра windows_hook_legacy_allocators по умолчанию на true.
  • Исправлена ошибка, из-за которой конструкторы копирования и перемещения были удалены путем оптимизации переменной возврата, не удаляя инициализацию его аргументов по умолчанию.
  • Исправлено ложноположительное предупреждение C6031 из статического анализа.
  • Git 2.39 переименовывает значение для credential.helper из "manager-core" в "manager-core". Дополнительные сведения см. в разделе https://aka.ms/gcm/rename.
  • Обновления в пакет Mingit и Git для Windows версии 2.39.2, который обращается к CVE-2023-22490

Устранены рекомендации по безопасности

От сообщества разработчиков


17.4.5 Visual Studio 2022 версии 17.4.5

Выпущено 14 февраля 2023 г.

Проблемы, устраненные в этом выпуске 17.4.5

  • Исправлена регрессия в STL, которая может привести к тому, что копии std::string не будут завершаться null при связывании объектов, созданных более старыми версиями Visual Studio 2022 с теми, которые были созданы Visual Studio 2022 версии 17.4 или более поздней.
  • Исправлен разрыв совместимости двоичных файлов в std::async() для программ, созданных с помощью VS 2015, что может привести к сбоям, вызванным invalid_operation исключением, достигаемым функции noexcept.
  • Исправлена регрессия в STL, которая вызвала ошибку std::find или std::count при поиске отрицательных целочисленных значений со знаком в диапазонах без знака целых элементов.
  • Исправлена ошибка, из-за которой возвращаемые переменные иногда не отображались в окне "Контрольные" или "Локальные" в Visual Studio во время отладки.
  • Несколько инструкций в одном блоке кода, содержавшего вложенные вызовы встроенной функции компилятора "__builtin_offsetof", могут привести к сбою компилятора C++. Чтобы избежать сбоя, не вложены встроенные вызовы __builtin_offsetof.
  • Локальные переменные отображаются и оцениваются в окнах "Локальные" и "Контрольные" при отладке конструкторов Windows Forms.
  • Исправлена проблема, из-за @bind:get@bind:set@bind:after которой модификаторы атрибутов и модификаторы атрибутов не были распознаны, что приводило к ошибкам времени разработки.
  • Исправлена ошибка рефакторинг подписи изменений, вызванная в исключении после ChangeSignatureCodeRefactoringProvider неправильного автоматического закрытия фигурных скобок · Проблема #65298 · dotnet/roslyn (github.com).
  • Исправлена проблема, из-за которой терминал вызвал сбой при отсутствии рабочих нагрузок, и компьютер не установил распространяемый пакет C++.
  • Устраняет проблему, из-за которой VS может заморозить при открытии XAML-файла.
  • Обновлен интерпретатор CPython до версии 3.9.13.
  • Добавляет поддержку Xcode 14.2.
  • Обновления .NET MAUI до версии 7.0.59 (SR3) смhttps://aka.ms/dotnet-maui-releases. заметки о выпуске.
  • Обновления в пакет Mingit и Git для Windows версии 2.39.1.1, который обращается к CVE-2022-41903

Устранены рекомендации по безопасности

17.4.4 Visual Studio 2022 версии 17.4.4

Выпущено 10 января 2023 г.

Проблемы, устраненные в этом выпуске 17.4.4

  • Функция структуры документа отключена для исходных файлов C#
  • Устранена проблема при удалении шрифта Cascadia Code и Cascadia Mono во время процесса обновления Visual Studio.

От сообщества разработчиков

Устранены рекомендации по безопасности

  • CVE-2023-21538 .NET С уязвимостью типа "отказ в обслуживании " существует в .NET 6.0, где вредоносный клиент может вызвать переполнение стека, что может привести к атаке типа "отказ в обслуживании", когда злоумышленник отправляет недопустимый запрос на доступную конечную точку.

17.4.3 Visual Studio 2022 версии 17.4.3

Выпущено 13 декабря 2022 г.

Проблемы, устраненные в этом выпуске 17.4.3

  • Исправлена ошибка в распределителе, которая приводила к утечкам памяти при анализе нескольких единиц перевода C++ в одном вызове компилятора.
  • Исправлена ошибка, из-за которой переменные thread_local вызвали ошибку компоновщика, вызвавшей ошибку "неустранимая ошибка LNK1161: недопустимая спецификация экспорта".
  • Исправлена ошибка в распределителе, которая приводила к утечкам памяти при анализе нескольких единиц перевода C++ в одном вызове компилятора.
  • Исправлено базовое исключение, приводящее к золотой полосе с сообщением "Средство выполнения анализатора диагностики сбой" при редактировании кода C#/VisualBasic
  • Улучшена производительность отправки запроса обратной связи по Сообщество разработчиков при присоединении записей.
  • Добавляет поддержку Xcode 14.1 для Xamarin.iOS и Xamarin.Mac.
  • Добавляет поддержку Xcode 14.1 для .NET для iOS, tvOS, macOS, Mac Catalyst.
  • Обновления .NET MAUI до 7.0.52 (SR1.1) смhttps://aka.ms/dotnet-maui-releases. в заметках о выпуске.
  • Исправлена ошибка при развертывании приложений UWP на устройствах, которые еще не были связаны с компьютером, на котором выполняется Visual Studio.
  • В VS 17.4.3 в VS 17.4.3 включен интерфейс vs arm64. для средств сборки .NET WebAssembly и средств сборки .NET 6.0 WebAssembly. Это позволяет публикации blazor wasm с помощью компиляции AOT

От сообщества разработчиков

Устранены рекомендации по безопасности


17.4.2 Visual Studio 2022 версии 17.4.2

Выпущено 29 ноября 2022 г.

Проблемы, устраненные в этом выпуске 17.4.2

  • Исправлена проблема, из-за которой компилятор C++ завершает работу с помощью /analyze.
  • Исправлена ошибка компилятора, из-за которой мы неправильно удлиняли расширение
  • Исправлена проблема, из-за которой некоторые параметры форматирования C++ не сохранялись правильно между сеансами Visual Studio.
  • Исправлена проблема с зависанием при вставке
  • Эта версия Visual Studio включает пакет SDK для приложений Win 1.2.221109.1: каналы выпуска пакета SDK для приложений Windows | Документация Майкрософт дополнительные сведения.

От сообщества разработчиков


17.4.1 Visual Studio 2022 версии 17.4.1

Выпущено 15 ноября 2022 г.

Проблемы, устраненные в этом выпуске 17.4.1

  • Поиск arm64ec или ec в установщике теперь открывает соответствующие компоненты Arm64, содержащие поддержку arm64ec.
  • В Visual Studio 2022 версии 17.3 и более поздних версиях ML.NET построитель моделей будет зависать при обучении моделей классификации изображений с GPU. Эта взаимоблокировка устранена, и классификация изображений может быть обучена с помощью ЦП или GPU успешно.
  • Использование средств чтения с экрана с интегрированным терминалом теперь правильно предоставляет сведения о командах, выполняемых и их выходных данных.
  • Visual Studio не завершает работу при открытии дампа ядра Linux .NET 7.

От сообщества разработчиков


Сводка о новых возможностях в этом выпуске Visual Studio 2022 версии 17.4

Arm64
Эта предварительная версия продолжает создавать собственную поддержку Arm64 в Windows 11. Помимо поддержки разработки классических приложений .NET (WinForms и WPF), разработки компьютеров с помощью C++ (для проектов на основе MSBuild) и ASP.NET и веб-разработки, теперь мы включили рабочую нагрузку разработки универсальная платформа Windows. Дополнительные сведения см. в этой записи блога.

C++

  • Улучшены сообщения об ошибках компилятора, чтобы обеспечить более правильную и полезную информацию, особенно для концепций.
  • Добавлен экспериментальный флаг /experimental:log<directory> MSVC для вывода журналов сборки SARIF в указанный каталог.
  • Добавлена поддержка атрибутов C23 в IntelliSense и продолжалась поддержка модулей C++20.
  • Улучшена производительность индексирования при открытии нового решения. Крупные проекты могли видеть улучшение на 20-35% с 17,3.
  • Улучшена оптимизация именованных возвращаемых значений (NRVO) по следующим причинам:
    • Включение NRVO для случаев, связанных с обработкой исключений или циклами.
    • Включение NRVO даже в /Od том случае, если пользователь передает /Zc:nrvo флаг или /std:c++20 более позднюю версию или /permissive-.
    • Разрешение пользователям отключить NRVO с флагом /Zc:nrvo- .
  • Обновлена версия LLVM, поставляемая с Visual Studio до 15.0.1. Ознакомьтесь с заметками о выпуске LLVM и Clang , чтобы узнать, что доступно.
  • Добавлена поддержка артефактов Visual Studio для артефактов vcpkg с проектами CMake. Для проектов, включающих манифест vcpkg, среда будет активирована автоматически при открытии проекта. Дополнительные сведения об этом можно узнать в активации среды vcpkg в записи блога Visual Studio.
  • Теперь вы можете использовать контейнеры разработки для проектов C++. Дополнительные сведения об этой функции см. в записи блога "Контейнеры разработки для C++".
  • Сделал IntelliSense уважает порядок предварительно включаемых заголовков, когда один является PCH. Ранее, когда PCH использовался через /Yu и принудительно включен /FIчерез , IntelliSense всегда будет обрабатывать его сначала, прежде чем любые другие заголовки включены через /FI. Это не соответствовало поведению сборки, поэтому при этом заголовки изменений /FI обрабатываются в том порядке, в котором они указаны.
  • Удалены внутренние префиксы из имен CTest в test Обозреватель.
  • Обновлена версия CMake, поставляемая с Visual Studio, до версии 3.24.1. Ознакомьтесь с заметками о выпуске CMake, чтобы узнать, что доступно.
  • Обновление пакета SDK для Android
    • Скрипты Ant были удалены, поэтому пользователи больше не увидят шаблоны на основе муравей в диалоговом окне "Новый проект". Справку по миграции из шаблонов Ant в шаблоны Gradle см. в статье "Миграция сборок из Apache Ant" (gradle.org)
    • Добавлена поддержка сборки с помощью NDK 23 и 24
    • Обновлен компонент NDK до LTS версии 23
  • Добавлены векторные реализации ranges::min_element(), ranges::max_element()и ranges::minmax_element()
  • Мы продолжаем отслеживать последние разработки в стандартизации C++, поддержка следующих функций C++ 23 доступна, включая /std:c++latest в вариантах компилятора.
    • P2302ranges::contains, ranges::contains_subrange
    • Конструктор диапазона P2499string_view должен быть explicit
    • auto(x)P0849R8: decay-copy на языке
    • Часть компилятора еще не реализована; Часть библиотеки была реализована в режиме C++20 при первоначальной реализации диапазонов.
    • P0881R7<stacktrace>
    • P2301R1 добавление псевдонима pmr дляstd::stacktrace
    • P1328R1constexpr type_info::operator==()
    • ranges::iotaP2440R1, ranges::shift_left,ranges::shift_right
    • P2441R2views::join_with
  • Добавлен параметр "Навигация после создания объявления или определения", позволяющий выбрать поведение навигации функции "Создать объявление или определение". Вы можете выбрать между просмотром (по умолчанию) или открытием документа или без навигации.
  • Сборки Arm64 Visual Studio теперь объединяют версии Arm64 CMake и Ninja.
  • Добавлена поддержка предустановок CMake версии 4. Дополнительные сведения о доступных доступных заметках о выпуске CMake см. в заметках о выпуске CMake.
  • Подключение для удаленных систем с диспетчер подключений теперь поддерживает SSH ProxyJump, который используется для доступа к узлу SSH через другой узел SSH (например, для доступа к узлу за брандмауэром).

основные моменты Сообщество разработчиков

Отладка и диагностика

  • В визуализатор DataTable были внесены улучшения, такие как фильтрация, сортировка, экспорт и темы.
  • Чтобы экспортировать экспорт данных в формате CSV/Excel, используйте раскрывающийся список в правом верхнем углу.
  • Визуализатор также позволяет фильтровать нужную строку фильтра на основе данных. Он вернет все строки, содержащие значение, соответствующее строке фильтра. Вы также можете экспортировать отфильтрованные и отсортированные результаты в формате CSV/Excel.
  • Окно визуализатора будет темой для выбранной темы Visual Studio.

Возможности редактора

  • Звуковые подсказки теперь доступны в Visual Studio. Чтобы включить звуковые подсказки, перейдите к параметрам инструментов > , а затем перейдите к разделу "Общие текстовые редакторы > ". В разделе Параметры проверка параметр "Включить звуковые подсказки", чтобы включить звуковые подсказки. Если этот параметр проверка, Visual Studio будет воспроизводить звуковой сигнал, когда подсказка в редакторе поступает в строку с ошибкой, точкой останова или предупреждением. Он также будет играть подсказку, когда строка прибывает на строку, которая была добавлена или удалена при просмотре файла в представлении диффа. Эти подсказки могут быть отдельными включено или изменены в Параметры панель управления в Windows.
  • Удерживая клавишу SHIFT при повороте колесика мыши над редактором, редактор будет прокручиваться по горизонтали. Объем прокрутки редактора можно настроить в разделе "Параметры инструментов > " в разделе "Расширенный текстовый редактор > ".
  • Текущий номер строки в редакторе выделен для повышения видимости.
  • Теперь в области вывода есть кнопка, которая будет предварительно добавлять каждую строку с меткой времени, чтобы разработчики могли легко увидеть, сколько времени между шагами в более длительных процессах выполняется.
  • Исправлена проблема, из-за которой параметры принтера не сохранялись правильно в некоторых случаях.
  • При выборе текста в редакторе Visual Studio теперь автоматически выделяет соответствующие строки. Чтобы включить эту функцию, перейдите к параметрам инструментов > , а затем перейдите к разделу "Общие текстовые редакторы > ". В разделе "Отображение" проверка параметр "Показать совпадения выбора". При этом параметре проверка, при выборе одной строки текста из 100 символов или меньшей строки все совпадения будут выделены немедленно.

F#

  • Мы продолжаем улучшать подсказки для идентификаторов F#, исправляя несколько пограничных вариантов:

  • Также исправлен сбой Visual Studio для указания --version флагов компилятора

  • Подсказки для локальных функций теперь отображают имена аргументов

Подсказки для аргументов локальной функции

Инструменты Git

основные моменты Сообщество разработчиков

Другие возможности

  • Поддержка нескольких репозиториев означает, что вы можете одновременно иметь до 10 активных репозиториев Git, что позволяет работать с решением, охватывающим несколько репозиториев, и выполнять такие операции git, как фиксация, извлечение и отправка нескольких репозиториев одновременно. Начните использовать поддержку нескольких репозиториев, открыв решение или папку с проектами в нескольких репозиториях. Ознакомьтесь с нашей записью блога, чтобы узнать больше и поделиться своими отзывами.
  • Отмена отслеживания и пропуск отслеживаемых файлов Git
  • В соответствии с недавним обновлением системы безопасности Git мы улучшили взаимодействие пользователей с одним и несколькими репозиториями Git, улучшив состояние репозитория и используя новый диалог доверия.

Установка и обновления

Отката

Visual Studio теперь поддерживает возможность возврата к ранее установленной версии. Дополнительные сведения см . в блоге Rollback.

Удаление компонентов без поддержки

Установщик Visual Studio 2022 версии 17.4 содержит новую функцию, которая позволяет легко удалить все компоненты, установленные Visual Studio, которые перешли в состояние вне поддержки. Это поможет вам обеспечить безопасную и соответствующую среду. Разработчики могут инициировать это действие по обновлениям или изменениям, а ИТ-Администратор могут применять его по политике. Для тех предприятий, которые используют макеты, можно настроить макет один раз, а затем последующее обновление администратора будет учитывать этот параметр. Эта функция также работает для Visual Studio 2017 и 2019, если эти клиентские компьютеры были обновлены, чтобы использовать последний установщик Visual Studio. Дополнительные сведения о том, как работает эта функция, см. в руководстве по Администратор istrator Visual Studio или в записи блога.

Настройка политик с помощью шаблонов Администратор istrator (ADMX)

Сегодня мы выпустили файлы шаблонов Visual Studio Администратор istrative Template Files (ADMX/ADML), что позволяет ИТ-администраторам легко обнаруживать, управлять поведением Visual Studio, доступными для управления политикой. Файлы ADMX также легко интегрируются с общими средствами управления и развертывания, такими как редактор групповой политики или Microsoft Endpoint Manager. Дополнительные сведения см. здесь.

Обновления системы безопасности Visual Studio теперь доступны через канал обновления Майкрософт Обновл. Windows для бизнеса

Все обновления системы безопасности Visual Studio для всех поддерживаемых версий Visual Studio теперь доступны для современных подключенных к облаку устройств Azure Active Directory (Azure AD), использующих Обновл. Windows для бизнеса и управляемых решениями управления мобильными устройствами, такими как Microsoft Endpoint Manager (прежнее название — Intune). Эту функцию можно включить на клиентских устройствах, установив для политики Администратор istrator Обновления Enabled значение 2. Дополнительные сведения см. в записи блога и руководстве по Администратор istrators Visual Studio.

IntelliCode

Если IntelliCode предлагает предложение, которое изменяет или удаляет часть одного кода, предложение теперь отображается как представление diff на поверхности редактора для пользователей C#. С помощью ключа TAB пользователи могут принять прогноз.

Средства разработки Microsoft Teams (Teams набор средств)

  • В этой новой версии Teams набор средств обновления требуются для файла шаблона Azure Active Directory, проекта Параметры.json и файла манифеста приложения. Эти обновления выполняются автоматически после выполнения команды меню Teams набор средств и не изменяют исходный код проекта. В окне вывода отобразится состояние обновления.
  • Тип приложения Tab в мастере шаблона проекта приложения Microsoft Teams включает параметр настройки единого входа или нет. Добавьте его позже с помощью Project > Teams набор средств > добавить код Authentiation. Дополнительные сведения о набор средств Teams см. в документации.https://aka.ms/teams-toolkit-vs-docs

Производительность .NET

  • Существует новый встроенный пользовательский интерфейс переименования, позволяющий переименовать тип. Нажмите клавиши CTRL+R, R, чтобы открыть новый интерфейс встроенного переименования. Обратите внимание, что новый пользовательский интерфейс будет отображаться для типа с возможностью переименования комментариев, строк и файлов символов.

Встроенное переименование

  • Теперь есть возможность отключить исходный канал и внедренный источник. Это можно отключить в текстовом редакторе параметров > инструментов >> C# > Advanced и отменить выбор включения навигации по исходному каналу и внедренным источникам.

Отключение исходных ссылок и внедренных источников

Визуализатор DataTable

  • Теперь можно легко просмотреть структуру файла в окне структуры документа. В окне структуры документа отображается дерево символов файла в редакторе, помогающее быстро перемещаться и изменять файлы проекта. Вы можете открыть структуру документа, перейдя к просмотру>другой структуры документа Windows>или с помощью сочетания клавиш CTRL+ALT+T.

Структура документа

Инструменты тестирования

  • Live Unit Testing теперь предоставляет кнопку для сброса всего состояния. Проверив > состояние Live Unit Testing Live Unit Testing > для решения.
  • Live Unit Testing теперь поддерживает файлы Razor.
  • Запустите тесты, пока не завершится сбой, вы сможете найти ненадежные тесты и запустить модульный тест до тех пор, пока они не достигнут порогового значения в параметрах.
  • Просмотрите отчет о охвате кода, область вниз до только измененных файлов и строк с новым отчетом об изменении покрытия кода.

Улучшения производительности

Мы улучшили производительность в следующих областях Visual Studio в этом выпуске:

  • Поиск и замена в файлах
  • Переключение ветви Git
  • Производительность модульного теста
  • Оптимизация переключения конфигурации языковой службы
  • Адаптивное сохранение файла
  • Индексирование C++

Дополнительные сведения обо всех улучшениях производительности в этом выпуске.


Visual Studio в Dev Box

  • Так как Dev Box не находится в локальной сети, вам потребуется использовать общедоступный IP-адрес для подключения через Интернет к любым компьютерам Mac в локальной сети.
  • Если эмулятор Android не загружается, убедитесь, что Hyper-V включен, перейдя в диалоговое окно "Компоненты Windows". Если поле проверка Hyper-V не выбрано, включите его, а затем перезапустите поле разработки перед попыткой использовать эмулятор.

От сообщества разработчиков


Известные проблемы

. NETSDK: пакет SDK для .NET Ни один из моих проектов не загружается после обновления до версии 17.4 [7.0] Проекты, использующие определенные рабочие нагрузки, не загружаются, сборка и запуск, если установлены рабочие нагрузки пакета SDK для .NET 7( предварительная версия: если установлен пакет SDK для .NET 7, проекты с зависимостями рабочей нагрузки, например microsoft.net.workload.mono.toolchain, могут завершить сборку, загрузку и запуск. Пример этой проблемы описан здесь.

Решение.Лучший способ устранить проблему — удалить все пакеты SDK предварительной версии .NET 7. Подробные инструкции см. в инструкциях по удалению dotnet. Например, в Windows пакеты SDK для dotnet preview можно удалить с помощью программ добавления и удаления. Другой вариант — попытаться удалить папку C:\Program Files\dotnet\sdk-manifests\microsoft.net.workload.mono.toolchain, но это будет работать только для установки на основе файлов. Dotnet-core-uninstall — это еще один вариант удаления пакетов SDK для предварительной версии .NET 7.

Отладка Python и машинного смешанного режима: отладка Python и машинного смешанного режима имеет известную ошибку при работе с виртуальными средами. Из-за того, что Python для Windows использует заглушку python.exe для venvs, Visual Studio находит и загружает python.exe в качестве подпроцесса. Для Python 3.8 при запуске сеанса отладки, так как смешанный режим не поддерживает многопроцессную отладку, он заканчивается отладкой только этого процесса заглушки, а не фактического приложения. В сценариях подключения обходное решение заключается в подключении к правильной python.exe. Для запуска/F5 нет обходного решения, и, к сожалению, вам придется избежать venvs. Для версий Python до 3.8 отладка смешанного режима должна работать должным образом с venvs. Выполнение в глобальной среде не приведет к возникновению этих проблем для любой версии Python. Дополнительные сведения см. в статье "Не удается выполнить отладку как Python, так и native ".

Обнаружение и выполнение тестов Nunit: обнаружение и выполнение тестов Nunit из теста Обозреватель завершается ошибкой 17.4 с исключением "Неизвестная платформа 7.0" на панели вывода

Разрешение. Если у вас есть ссылка на Nunit3TestAdapter, убедитесь, что это обновление до версии 4.3.1 или более поздней версии.

ПакетNuGet Visual Studio 17.4 не создает пакет NuGet при публикации проекта библиотеки классов.

Решение Это намеренное изменение в версии 17.4, чтобы сделать поведение публикации в Visual Studio согласованным во всех типах проектов .NET. Чтобы создать пакет NuGet для проектов библиотеки классов, рекомендуется выполнить следующие действия.

  1. Задайте свойство проекта для создания пакета NuGet при сборке, как описано здесь или
  2. Запустите команду пакета, доступную при щелчке правой кнопкой мыши—> пакет, как описано здесь с помощью этого нового изменения, команда публикации создаст выходные данные публикации для библиотек классов, аналогичных тому, как он ведет себя для всех других типов проектов .NET. Дополнительные сведения см. на этой странице документации. Вы также можете использовать различные свойства msbuild пакета, чтобы изменить поведение пакета, как описано здесь.

Ознакомьтесь со всеми открытыми проблемами и доступными обходными решениями в Visual Studio 2022, следуя приведенным ниже ссылкам.


.NET 7 доступна сегодня

.NET 7 позволяет приложениям повысить производительность и новые функции для C# 11/F# 7, .NET MAUI, ASP.NET Core/Blazor, веб-API, WinForms, WPF и т. д. С помощью .NET 7 вы также можете легко контейнеризировать проекты .NET 7, настроить рабочие процессы CI/CD в действиях GitHub и обеспечить облачную наблюдаемость.

Отзывы и предложения

Мы будем рады узнать ваше мнение! Вы можете сообщить о проблеме или предложить функциюЗначок обратной связи с помощью значка отправки отзывов в правом верхнем углу установщика или интегрированной среды разработки Visual Studio или справки > по отправке отзывов. Вы можете отслеживать проблемы в сообществе разработчиков Visual Studio, позволяющем добавлять комментарии или искать решения. Кроме того, вам доступна бесплатная поддержка в чате по вопросам с установкой.


Блоги

Воспользуйтесь аналитикой и рекомендациями с сайта Developer Tools Blogs. Там вы найдете актуальные сведения обо всех новых выпусках и сможете читать публикации с подробным анализом самых разных функций.


К началу страницы