Примечания к выпуску Visual Studio

Мы рады объявить о доступности обновления Visual Studio 2026 августа. Этот выпуск знаменует собой начало новой эпохи для Visual Studio с глубокой интеграцией платформы искусственного интеллекта, более строгими основами и повышением производительности.

Скачайте Visual Studio 2026, чтобы воспользоваться этими новыми функциями и улучшениями.

Версия 18.9.1

Выпущено 18 августа 2026 г.

Основные исправления ошибок От сообщества
диалоговое окно предварительного просмотра команд Copilot недоступно для прокрутки, блокировки разрешений или запрета действий Запрос обратной связи
Исправление для тестового агента в версии 18.9.0

Обновление за август 18.9.0

Выпущено 11 августа 2026 г.

GitHub Copilot

Настройте уровень рассуждений модели в соответствии с вашей задачей

Выберите низкий, средний или высокий уровень усилий на обдумывание для поддерживаемых моделей, чтобы сбалансировать качество ответа и использование токенов.

Теперь есть возможность управлять объемом рассуждений модели при решении задачи. В Visual Studio 18.9 добавлены элементы управления уровнем мыслительных усилий поддерживаемых моделей, что позволяет выбирать низкий, средний или высокий уровень усилий в зависимости от задачи и бюджета токенов.

Как работает интенсивность мышления

Некоторые модели Copilot теперь поддерживают регулировку уровня мыслительных усилий:

  • Низкий уровень. Быстрое предоставление ответов при минимальном объеме рассуждений. Лучше всего подходит для простых вопросов и предложений по коду. Используется меньше токенов.
  • Средний уровень. Обеспечивается баланс между глубиной рассуждений и скоростью ответа. Лучше всего подходит для повседневных задач программирования.
  • Высокий — использует более глубокий анализ для решения сложных задач. Лучше всего подходит для сложных алгоритмов, архитектурных решений и сложных в отладке проблем. Расходуется больше токенов.

Регулировать уровень мыслительных усилий можно непосредственно в меню выбора моделей или в развернутом представлении Управление моделями. Низкие уровни помогают оставаться в пределах бюджета токенов, получая при этом полезную поддержку для каждой задачи.

Представление управления моделями с раскрывающимся списком уровня рассуждений с вариантами «Низкий», «Средний» и «Высокий»

Просмотр изменений и фиксаций с помощью агента Git

Выявляйте проблемы до создания pull request.

Вам не нужно ждать пул-реквеста, чтобы получить свежий взгляд на ваш код. Попросите агента Git просматривать ваши изменения или коммиты в процессе работы.

Проверка незафиксированных изменений

Перейдите к агенту Git в Copilot Chat и попросите его просмотреть изменения. Агент просматривает ваши незафиксированные изменения и показывает комментарии прямо в редакторе. Представление Git Changes показывает список, по которому можно быстро переходить к каждому комментарию.

Вы также можете выбрать значок проверки Copilot в окне "Изменения Git", чтобы начать проверку.

Встроенные комментарии в редакторе и список комментариев для каждого файла на панели Copilot Chat

Просмотреть коммит

Прикрепите коммит как контекст в Copilot Chat и попросите агента Git проверить его. Комментарии отображаются прямо в изменённых файлах в представлении конкретного коммита, отдельно от ваших рабочих файлов.

Вы также можете запустить проверку коммита непосредственно из инфопанели Git Changes после выполнения коммита или для любого коммита в окне Git Repository.

Встроенные комментарии к проверке коммита с замечаниями по каждому файлу в панели Copilot Chat

Когда вы запускаете проверку через Copilot Chat, продолжайте общение, чтобы глубже разобраться в результатах, получить пояснения или поработать над предложенными исправлениями. Проверки работают как с GitHub, так и с репозиториями Azure DevOps и используют службу проверки кода GitHub Copilot.

Пользовательские агенты на уровне организации

Владельцы организации GitHub теперь могут добавлять пользовательские агенты во всей своей организации.

Примечание. Для использования этой функции требуется организация GitHub.

Теперь вы можете делиться настраиваемыми агентами между репозиториями в вашей организации. Владельцы организаций и предприятий в GitHub могут добавлять пользовательских агентов, которыми смогут пользоваться все пользователи в организации. Это помогает участникам вашей команды работать согласованно и обеспечивает синхронизацию функционирования Copilot с рабочим процессом организации.

Если вы администратор, см. статью Подготовка к использованию пользовательских агентов в организации или Подготовка к использованию пользовательских агентов на предприятии.

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

Раскрывающийся список выбора агента, в котором отображаются пользовательские агенты уровня организации, описания и кнопки определений

Настройте пользовательских агентов на уровне организации для поддержки рабочего процесса своей команды.

Доступ к данным об использовании Copilot

Перейдите к сведениям об использовании вашего плана Copilot из контекстного окна или меню значка — как вам удобнее.

Отслеживайте использование своего плана Copilot, не выходя из рабочего процесса. В Visual Studio 18.9 проверить использование плана можно непосредственно из контекстного окна.

Нажмите на кольцевую диаграмму в правом верхнем углу поля запроса для просмотра использования в контекстном окне, а затем нажмите кнопку, чтобы открыть сведения об использовании плана полностью.

Значок кольцевой диаграммы в поле ввода запроса Copilot, открывающий сведения об использовании тарифного плана

Мы также усовершенствовали окно использования и уведомления, чтобы они стали понятнее и удобнее с точки зрения возможных вариантов действий. Вы будете знать, когда приближаетесь к своему лимиту и какие у вас есть варианты, чтобы продолжить.

Улучшенное управление моделью

Закрепляйте избранные модели, сворачивайте остальные и открывайте полный обзор управления со всеми сведениями о моделях и возможностями настройки.

Находить модели и управлять ими в Visual Studio 18.9 проще. Обновленное меню выбора моделей и новое представление для управления обеспечивают улучшенный контроль над моделями Copilot.

Улучшенное меню выбора моделей. Меню выбора быстрее сканируется и проще в использовании. Закрепляйте любимые модели, чтобы они оставались вверху, и сворачивайте модели, которыми вы редко пользуетесь, чтобы уменьшить беспорядок. Вы можете сосредоточиться на самых важных моделях.

Средство выбора моделей, показывающее элементы управления закреплением и свертыванием

Представление для управления моделями. Выберите Управление моделями в меню выбора, чтобы открыть развернутое представление со всеми сведениями и элементами управления.

  • Просматривайте информацию о стоимости, возможностях и размерах контекстного окна каждой модели.
  • Управляйте своими пользовательскими моделями и моделями Copilot в одной среде.

Представление управления моделями, показывающее сведения о модели и элементы управления

Средства работы с Git

Сводка с несколькими файлами 📣

Просмотр изменений файлов в едином диффе для быстрого понимания.

Сводное представление различий по нескольким файлам показывает все изменённые строки из нескольких файлов в едином представлении, чтобы вы могли быстро понять масштаб коммита или pull request, не переключаясь между файлами.

Единая панель с измененными строками из нескольких файлов

Кнопка Открыть сводку изменений доступна в нескольких местах:

  • Изменения Git
  • Сведения о фиксации в Git → Просмотр истории ветки
  • Запросы на включение изменений в окне Вид → Репозиторий Git

Список запросов на включение в настоящее время доступен только в Visual Studio Insiders с предварительной функцией Просмотр запросов на включение для репозитория Git.

Кнопка

📣 Посмотрите feature ticket, чтобы поделиться отзывами и продолжить разговор.

Поддержка подмодулы Git 📣

Управление подмодулами Git непосредственно в Visual Studio с помощью встроенной поддержки добавления, обновления, удаления и навигации.

Одна из самых востребованных функций Git — полноценная поддержка подмодулей — теперь доступна в Visual Studio 18.9, что позволяет управлять подмодулями, не выходя из интегрированной среды разработки.

Подмодули полностью интегрированы в интерфейс Git. Теперь вы получаете:

  • выделенный раздел «Подмодули» в окне репозитория Git;
  • Улучшенная видимость в разделе «Изменения Git».
  • Средство выбора веток и репозиториев, показывающее иерархию родительских и дочерних репозиториев.

Окно репозитория Git с разделом

В разделе «Подмодули» можно добавлять, обновлять и удалять подмодули. Visual Studio также автоматически обнаруживает и активирует подмодули при открытии решения или папки, не отображая их в общем списке локальных репозиториев, чтобы не загромождать его.

Выбор репозитория, показывающий иерархию родительского репозитория и подмодулей

По умолчанию подмодули доступны только для чтения. Если вы хотите работать в подмодуле, а не только использовать его, перейдите к разделу "Сервис" → параметры → системы управления версиями → Git, найдите автоматическую активацию нескольких репозиториев и выберите "Да", включите подмодулы.

Это первый этап эволюции данной функциональности; запланированы дополнительные усовершенствования, которые станут доступны в будущих выпусках.

📣 Посмотрите feature ticket, чтобы поделиться отзывами и продолжить разговор.

Worktrees: работа над несколькими ветвями одновременно 📣

Создавайте, открывайте рабочие деревья Git и управляйте ими, чтобы одновременно работать с несколькими ветвями без использования stash и повторного клонирования.

Если вам когда-нибудь приходилось откладывать незавершённую работу, чтобы проверить другую ветку, рабочие каталоги позволяют пропустить этот шаг. Каждое рабочее дерево — это отдельный рабочий каталог для того же репозитория, поэтому ваша незавершённая работа остаётся нетронутой, пока вы работаете в другом месте.

В окне Репозиторий Git щелкните правой кнопкой мыши любую ветвь и выберите Создать рабочее дерево из, чтобы создать рабочее дерево. Можно начать с новой ветви или использовать выбранную. Вы также можете создать рабочее дерево из любого коммита в графе истории. Откройте его в текущем окне или новом экземпляре Visual Studio, чтобы работать одновременно в обеих ветвях.

Контекстное меню для ветки, содержащее пункты «Создать рабочее дерево из этой ветки», «Открыть рабочее дерево в текущем окне», «Открыть рабочее дерево в новом окне» и «Удалить рабочее дерево»

Рабочие деревья отображаются рядом с вашими ветвями. Вы можете переключаться между ними в списке ветвей, меню выбора ветви или меню выбора репозитория. Когда закончите, щелкните правой кнопкой мыши рабочее дерево и выберите команду Удалить рабочее дерево для очистки.

Список ветвей репозитория Git с рабочими деревьями, показанными рядом с ветвями

📣 Посмотрите feature ticket, чтобы поделиться отзывами и продолжить разговор.

Проверяйте коммиты с Copilot

Получите конфиденциальную проверку кода от Copilot для ваших коммитов.

Проверка кода Copilot уже дает обратную связь по незафиксированным изменениям. Теперь вы можете выполнить ту же проверку на зафиксированных изменениях.

Щелкните правой кнопкой мыши любую фиксацию в окне репозитория Git и выберите "Проверить фиксацию " для проверки этой фиксации. Выберите два коммита, чтобы просмотреть все изменения между ними.

Контекстное меню, вызываемое правой кнопкой мыши, с пунктом «Просмотреть коммит» в окне репозитория Git

Вы также можете сослаться на коммит в Copilot Chat и попросить агента Git проверить его.

Окно Copilot Chat с запросом агента Git просмотреть определенный коммит

Комментарии проверки Copilot отображаются непосредственно в изменённых файлах. Отдельный коммит открывается в окне Подробности коммита. В режиме просмотра Compare Commits открывается диапазон между двумя коммитами. Выберите любой комментарий, чтобы перейти непосредственно к коду.

Встроенный комментарий проверки Copilot, отображаемый в окне сведений о коммите

Отзывы остаются локальными в сеансе Visual Studio и работают с репозиториями GitHub и Azure DevOps.

Чтобы включить эту функцию, перейдите в Сервис → Параметры → GitHub → Copilot → Интеграция с системой управления версиями и включите Проверять изменения Git локально и предлагать рекомендации на основе комментариев.

Сравнение файла с рабочим деревом 📣

Сравните более раннюю версию файла с текущими локальными изменениями.

Хотите узнать, как файл изменился с момента предыдущей фиксации? Теперь вы можете сравнить любую версию файла с текущим рабочим деревом.

В Обозреватель решений щелкните правой кнопкой мыши файл и выберите Git → просмотреть журнал. Затем в истории файла щелкните правой кнопкой мыши по коммиту и выберите Сравнить с рабочим деревом.

Контекстное меню в истории файлов, показывающее «Сравнить с рабочим деревом»

Visual Studio открывает дифф с версией фиксации слева и рабочей версией дерева справа. Все изменения можно просмотреть с момента фиксации, включая зафиксированные и незафиксированные изменения.

Представление Diff, показывающее зафиксированную версию файла слева и рабочую версию дерева справа

📣 Посмотрите feature ticket, чтобы поделиться отзывами и продолжить разговор.

Обновления проверки PR — автодополнение и хронология 📣

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

Мы продолжаем улучшать работу с запросами на включение изменений в Visual Studio.

Вкладка «Обзор» в представлении pull request в Visual Studio с автозавершением и хронологией обновлений

  • Автозавершение / автоматическое слияние: настройте pull request так, чтобы он завершался автоматически после получения всех необходимых одобрений и прохождения проверок политик.
  • Обновление временной шкалы: просмотр журнала запросов на вытягивание push-уведомлений, голосов и других событий на вкладке "Обзор ".

Эти обновления работают с репозиториями GitHub и Azure DevOps.

📣 Посмотрите feature ticket, чтобы поделиться отзывами и продолжить разговор.

Основные исправления ошибок От сообщества
Исправления TypeScript 7.0 в VS. Это обновление устраняет проблемы, о которых сообщалось ранее, связанные с IntelliSense и автоматическим импортом, доступностью быстрых исправлений, навигацией и поиском по коду, всплывающими подсказками при наведении, результатами списка задач, диагностикой Vue и расширением выделения. Компиляция при сохранении по-прежнему остается известной проблемой при включенной службе Native Language.
Щелчок правой кнопкой мыши по выбранному элементу в Обозревателе решений в решении C++ не открывает контекстное меню Запрос обратной связи

Версия 18.8.3

Выпущено 11 августа 2026 г.

Устранены проблемы безопасности, указанные в рекомендациях CVE Описание
Уязвимость раскрытия информации в .NET CVE-2026-62898 Использование после бесплатного использования в Microsoft QUIC позволяет несанкционированным злоумышленнику раскрывать информацию по сети.
Уязвимость обхода функции безопасности .NET CVE-2026-62899 Несогласованная интерпретация HTTP-запросов (контрабанда HTTP-запросов и ответов) в .NET позволяет неавторизованному злоумышленнику обойти функцию безопасности по сети.
Уязвимость раскрытия информации в .NET CVE-2026-62900 Неправильное удаление конфиденциальной информации перед хранением или передачей в .NET позволяет несанкционированным злоумышленнику раскрывать информацию по сети.
уязвимость .NET к отказу в обслуживании CVE-2026-62901 Неконтролируемое потребление ресурсов в .NET позволяет несанкционированным злоумышленнику запретить службу через сеть.
Уязвимость повышения привилегий в .NET CVE-2026-62886 Целочисленное переполнение или обходное решение в .NET позволяет несанкционированным злоумышленникам повысить привилегии локально.
Уязвимость повышения привилегий в .NET CVE-2026-62871 Внеграничная запись в .NET позволяет неавторизованному злоумышленнику повысить привилегии локально.
Уязвимость удалённого выполнения кода в .NET Core CVE-2026-70354 Внеграничная запись кучи существует в WindowsDesktop.App DirectWriteForwarder.dll, когда XpsDocumentWriter.Write(String) обнаруживает 16-разрядную итераторную оболочку.
Уязвимость раскрытия информации в .NET CVE-2026-62902 Включение функциональных возможностей из ненадежной области управления в .NET позволяет несанкционированным злоумышленникам раскрывать информацию по сети.
уязвимость .NET удаленного выполнения кода CVE-2026-62897 Целочисленное переполнение или обходное решение в .NET Framework позволяет неавторизованному злоумышленнику локально выполнять код.
Уязвимость повышения привилегий в .NET CVE-2026-62909 Неправильное обработка исключительных условий в .NET позволяет авторизованному злоумышленнику повысить привилегии локально.
Уязвимость Git для Windows CVE-2026-62960 Это обновление безопасности обновляет Git для Windows и MinGit для устранения уязвимости CVE-2026-62960.

Предстоящее удаление отдельного компонента Git for Windows в Windows 8.1

Git для Windows заканчивает поддержку Windows 8.1, поэтому Git для Windows отдельный компонент больше не будет доступен через установщик Visual Studio на Windows 8.1.

Это изменение влияет только на дополнительную установку Git на уровне системы. Функции Git, встроенные в Visual Studio, не затрагиваются. Если вы используете этот компонент, обновите поддерживаемую версию Windows, чтобы продолжить получение текущих обновлений и исправлений безопасности Git.

Версия 18.8.2

Выпущено 28 июля 2026 г.

Основные исправления ошибок От сообщества
При обновлении расширения не удаляется старая версия, в результате чего VS загружает обе копии Запрос обратной связи

Версия 18.8.1

Выпущено 22 июля 2026 г.

Основные исправления ошибок От сообщества
ASP.NET .NET Framework 4.8 шаблонов больше не предлагает представления и контроллеры Запрос обратной связи

Обновление 18.8.0 за июль

Выпущено 14 июля 2026 г.

GitHub Copilot

Встроенные .NET и Azure навыки

Откройте встроенные .NET и Azure навыки в Visual Studio, чтобы настроить рабочий процесс агента.

В Visual Studio теперь есть созданные специалистами из команд .NET и Azure встроенные навыки, которые помогут вам тщательнее настроить свой агентский рабочий процесс и эффективнее выполнять задачи разработки. Эти навыки доступны при установке соответствующих рабочих нагрузок .NET и Azure.

Вы можете найти навыки в категории «Встроенные» в окне выбора инструментов. Наведите курсор на каждый навык, чтобы увидеть его описание и путь к нему, и используйте меню с тремя точками, чтобы открыть навык или папку, где он находится.

Встроенные навыки .NET и Azure в средстве выбора инструментов

Встроенные навыки в настоящее время по умолчанию отключены, поэтому вы можете просмотреть их и включить только те, которые подходят для ваших задач. Это даёт вам контролируемый способ получать помощь с пошаговыми указаниями, адаптированную к предметной области, прямо там, где вы работаете. Вы также можете узнать больше о навыках .NET и навыках Azure по ссылкам.

Отслеживание использования и оповещения Copilot

Будьте в курсе использования Copilot благодаря отслеживанию в режиме реального времени и оповещениям при приближении к лимитам.

GitHub Copilot недавно перешел на оплату на основе использования, поэтому использование Copilot теперь вычисляется на основе потребления токенов, а не по запросу (подробнее можно узнать в блоге GitHub).

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

Что нового

Обновленное окно "Использование Copilot" в Visual Studio дает более четкое представление о текущем использовании на основе новой модели выставления счетов, что упрощает отслеживание того, насколько интенсивно вы используете Copilot в процессе разработки. Метрики использования будут обновляться в реальном времени, чтобы вы могли выявлять закономерности и соответствующим образом планировать свою работу.

В любое время откройте окно сведений об использовании в меню значка CopilotИспользование Copilot.

Окно использования Copilot с текущими показателями использования

Visual Studio также оповещает вас об использовании упреждающим образом, чтобы у вас было время на корректировку использования, прежде чем вы достигнете каких-либо лимитов.

Вы будете видеть оповещения, когда:

  • Вы приближаетесь к своему лимиту использования
  • Вы достигли своего лимита использования
  • Вы активировали дополнительное использование (также называемое избытком) после достижения лимита использования

Время появления оповещения о приближении к лимиту использования можно настроить, скорректировав порог предупреждения в процентах от квоты в параметрах, то есть вы можете контролировать, насколько рано будет появляться оповещение.

Продолжение следует

Это только начало. Мы постоянно совершенствуем Visual Studio, чтобы оптимизировать использование вами Copilot и дать вам более четкое представление о том, как вы используете эту технологию. В ближайших выпусках вас ждет еще больше обновлений в различных областях продукта.

Поделитесь своим мнением

Нам интересно, что мы можем сделать, чтобы вам было проще разбираться в том, как вы используете Copilot. Поделитесь своими отзывами и предложениями с нами в Сообществе разработчиков.

Попробуйте новый агент (предварительная версия)

Переключитесь на более умного и менее многословного агента Copilot.

В Copilot Chat в Visual Studio появился новый пункт Агент (предварительная версия) в списке выбора агента, основанный на том же SDK GitHub Copilot, который используется в GitHub Copilot CLI. Агент чаще справляется с задачами с первой попытки, и для того, чтобы он не сбивался с курса, требуется меньше уточнений. Кроме того, ответы стали короче, и их легче быстро просматривать.

Как попробовать

  1. Откройте GitHub Copilot Chat.
  2. Щелкните меню выбора агента внизу окна.
  3. Выберите Агент (предварительная версия)

Средство выбора агента в Copilot Chat, где в разделе

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

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

Просмотреть выделенный код с Copilot

Получайте от Copilot целенаправленную обратную связь по проверке любого выбранного вами кода.

Иногда вам не нужен полный обзор кода, просто второе мнение по конкретному блоку кода. Выберите код в редакторе, щелкните правой кнопкой мыши и выберите Действия CopilotReview Selection.

Copilot оставляет внутристрочные комментарии к выбранному фрагменту, которые можно просмотреть и применить. Используйте значок со звездочками в любом комментарии, чтобы применить предложенный вариант кода или, если его нет, попросить Copilot создать его для вас.

Контекстное меню с отображением действий Copilot, где выделена команда «Проверить выделенный фрагмент»

В основе этого лежит GitHub Copilot code review — тот же интерфейс, который вы видите при просмотре своих изменений в окне Git Changes перед коммитом.

Пользовательские инструкции на уровне организации

Владельцы организации теперь могут добавлять пользовательские инструкции, чтобы настраивать ответы Copilot для всей организации.

Note: Эта функция требует, чтобы репозиторий принадлежал GitHub организации.

GitHub владельцы организации теперь могут добавлять пользовательские инструкции для Copilot для адаптации ответов на конкретные потребности и предпочтения всей организации. Это особенно полезно для команд, которые хотят настроить правила для использования Copilot или иметь общие инструкции, от которых могут воспользоваться все участники команды. Сведения для администраторов организации, которые хотят настроить эти инструкции, см. в разделе Добавление пользовательских инструкций для организации. Обратите внимание, что пользовательские инструкции предназначены для настройки параметров и не подходят для применения политик.

При работе с репозиториями, принадлежащими вашей организации, автоматически применяются пользовательские инструкции на уровне организации. Эти инструкции можно просмотреть в списке ссылок во время взаимодействия с Copilot и щелкнуть ссылку, чтобы просмотреть полные инструкции.

Пользовательские инструкции на уровне организации, отображаемые в списке ссылок

Если вы предпочитаете не использовать инструкции уровня организации или не хотите избежать потенциальных конфликтов с инструкциями на уровне пользователя, вы можете отключить эту функцию. Перейдите к Tools → Options → GitHub → Copilot → Copilot Chat и снимите флажок Использовать пользовательские инструкции на уровне организации.

Средства работы с Git

Обновления запросов на включение изменений 📣

Ответьте на комментарии к PR и откройте страницу PR в отдельной вкладке.

Проверять pull request’ы стало проще и удобнее благодаря этим обновлениям.

  • Реакции Emoji на комментарии: те же реакции, что доступны в веб-версии, поддерживаются и в GitHub, и в Azure DevOps.

Эмодзи-реакции на комментарий к pull request в GitHub

  • Открыть pull request в новой вкладке: нажмите Открыть в новой вкладке в заголовке pull request, чтобы открыть pull request в отдельной вкладке. Расположите её рядом с кодом, чтобы сделать макет проверки более гибким.

Кнопка

📣 Посмотрите feature ticket, чтобы поделиться отзывами и продолжить разговор.

Подключить ветви к Copilot Chat

Спросите Copilot о любой ветке, прикрепив её в окне Git Repository.

Ветви присоединяются к коммитам, изменениям и PR как к контексту, который можно добавить в Copilot Chat. Щелкните правой кнопкой мыши любую ветвь в окне репозитория Git и выберите "Добавить в чат ", чтобы включить ее в беседу.

Контекстное меню в ветви в окне репозитория Git с параметром

Например, попросите Copilot рассказать мне об этой ветке, чтобы получить краткое описание, прежде чем углубляться в код.

C++

Автообнаружение MSVC Build Tools во всех установках VS

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

Теперь вы можете включить автоматическое обнаружение средств сборки MSVC во всех установках Visual Studio IDE и Visual Studio Build Tools на вашем компьютере, что обеспечивает корректное разрешение закреплённого VCToolsVersion, даже если он находится в другой установке.

Ранее Visual Studio выполняла поиск в других установках подходящего набора инструментов только в том случае, если в текущей установке не было набора инструментов для целевой платформы. Например, если ваш проект был нацелен на v143 и в текущем экземпляре Visual Studio уже был установлен anyv143 набор инструментов, поиск прекращался на этом, даже если вы явно закрепили определённый VCToolsVersion, который существовал только в другой установке.

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

Как включить

Установите для EnableVCToolsVersionDiscovery значение true в своем проекте или Directory.Build.props:

<PropertyGroup>
  <EnableVCToolsVersionDiscovery>true</EnableVCToolsVersionDiscovery>
  <VCToolsVersion>14.43.34604</VCToolsVersion>
</PropertyGroup>
Почему это важно
  • Закрепление версий фактически работает: указанный параметр VCToolsVersion учитывается независимо от того, какая установка содержит ее, даже если текущая установка уже имеет тот же набор инструментов платформы в другой версии.
  • Создание воспроизводимости. Закрепление известной версии набора инструментов в команде, не беспокоясь о отдельных обновлениях интегрированной среды разработки, изменяющих поведение компилятора.
  • Без ручного переопределения путей: ссылки на наборы инструментов между установками разрешаются автоматически, вместо того чтобы вам приходилось вручную прописывать VCToolsInstallDir.
Основные исправления ошибок От сообщества
_statusfp, запланированная перед операциями с плавающей запятой Запрос обратной связи
Исправляет проблему, которая приводила к некорректной генерации кода при разыменовании указателя на базирующийся указатель.
Исправляет проблему с деклтипом переменных, захваченных значением в некоторых неизменяемых лямбда-файлах.
IntelliSense для C++ в v145 помечает неразрешённые директивы include и ложные синтаксические ошибки Запрос обратной связи
Visual Studio зависает при остановке отладчика на точке останова, достигнутой из окна Интерпретации Запрос обратной связи

Версия 18.7.4

Выпущено 14 июля 2026 г.

Основные исправления ошибок От сообщества
Обновлено MinGit до версии 2.54.0.2
IntelliSense для C++ в v145 помечает неразрешённые директивы include и ложные синтаксические ошибки Запрос обратной связи
Устранены проблемы безопасности, указанные в рекомендациях CVE Описание
Уязвимость повышения привилегий в .NET CVE-2026-47300 В обработчике проверки подлинности Negotiate в ASP.NET Core существует уязвимость повышения привилегий: LdapAdapter некорректно проверяет LDAP-запросы, что позволяет аутентифицированному злоумышленнику обходить проверки авторизации.
Уязвимость повышения привилегий в .NET CVE-2026-47303 В обработчике проверки подлинности Negotiate в ASP.NET Core обнаружена уязвимость повышения привилегий, при которой LdapAdapter путает идентификаторы CN и sAMAccountName, что позволяет прошедшему аутентификацию злоумышленнику выдать себя за другого пользователя.
уязвимость .NET к отказу в обслуживании CVE-2026-47302 Уязвимость типа "отказ в обслуживании" существует в .NET XML-обработке, где обработка EncryptedXml и синтаксический анализ повторяющихся атрибутов в XmlTextReader вызывают неконтролируемое потребление ресурсов.
Уязвимость обхода функции безопасности .NET CVE-2026-47304 Уязвимость обхода функции безопасности существует в реализации шифрования XML .NET (System.Security.Cryptography.Xml), что позволяет злоумышленнику создавать XML-подписи с помощью пустого HMAC и обхода защиты подписей.
уязвимость .NET к отказу в обслуживании CVE-2026-50524 В .NET существует уязвимость типа «отказ в обслуживании», при которой некорректно сформированные пакеты TLS во время согласования SslStream в System.Net.Security приводят к сбою приложения или к потере его отклика.
Уязвимость обхода функции безопасности .NET CVE-2026-50528 В .NET существует уязвимость, позволяющая обойти функцию безопасности: реализация System.Net.Security.SslStream игнорирует привязку канала, что позволяет злоумышленнику обходить проверки авторизации в ходе защищённой связи.
уязвимость .NET к отказу в обслуживании CVE-2026-50525 Уязвимость типа "отказ в обслуживании" существует в реализации шифрования XML .NET (System.Security.Cryptography.Xml), где созданная цепочка преобразования XML вызывает неконтролируемое потребление ресурсов.
уязвимость .NET к отказу в обслуживании CVE-2026-50648 Уязвимость типа "отказ в обслуживании" существует в реализации шифрования XML .NET (System.Security.Cryptography.Xml), где созданный зашифрованный XML вызывает неконтролируемое потребление ресурсов.
уязвимость .NET к отказу в обслуживании CVE-2026-50527 Уязвимость типа "отказ в обслуживании" существует в реализации шифрования XML .NET (System.Security.Cryptography.Xml), где неправильно проверенные входные данные приводят к переполнению буфера на основе стека.
.NET уязвимость к незаконному изменению CVE-2026-50526 В процессе сборки образов контейнеров в .NET SDK существует уязвимость, допускающая подмену: предсказуемое расположение кэша, доступное для записи всем пользователям, позволяет локальному злоумышленнику внедрять вредоносные двоичные объекты в образы контейнеров, собираемые другими пользователями на той же машине.
уязвимость .NET к отказу в обслуживании CVE-2026-50651 В .NET существует уязвимость типа «отказ в обслуживании», при которой злоумышленник может переполнить HTTP/2-подключения SocketsHttpHandler кадрами SETTINGS и PING ACK, что приводит к состоянию нехватки памяти в Http2Connection.
Уязвимость спуфинга .NET CVE-2026-50659 В клиенте SMTP .NET (System.Net.Mail) существует уязвимость подмены, при которой скрытая передача команд SMTP через последовательности CRLF, разделённые между буферами, позволяет внедрять произвольные почтовые команды.
уязвимость .NET удаленного выполнения кода CVE-2026-50646 Уязвимость удаленного выполнения кода существует в Windows Presentation Foundation (WPF) при анализе специально созданных входных данных XAML, что позволяет злоумышленнику выполнять произвольный код в контексте текущего пользователя.
уязвимость .NET удаленного выполнения кода CVE-2026-50649 Уязвимость удаленного выполнения кода существует в Windows Presentation Foundation (WPF) при анализе специально созданных входных данных XAML, что позволяет злоумышленнику выполнять произвольный код в контексте текущего пользователя.
Уязвимость повышения привилегий в .NET CVE-2026-50650 Уязвимость с повышением привилегий существует в Windows Presentation Foundation (WPF) при анализе специально созданных входных данных XAML, что позволяет злоумышленнику повысить привилегии в затронутой системе.
уязвимость удаленного выполнения кода Visual Studio CVE-2026-47305 В Visual Studio существует уязвимость удалённого выполнения кода, при которой обход механизма Mark-of-the-Web (MOTW) позволяет специально сформированному файлу .vcxproj с InitialTargets или PreBuildEvent выполнять команды проекта при открытии решения.

Версия 18.7.3

Выпущено 30 июня 2026 г.

Основные исправления ошибок От сообщества
VSCopilot ChatError: Не удается найти экземпляр службы Microsoft.VisualStudio.Copilot.ICopilotInteractionService. Запрос обратной связи
Окно Copilot Chat не инициализируется из-за NullReferenceException в ThreadsViewModel.AddThreadInternalAsync Запрос обратной связи

Версия 18.7.2

Выпущено 23 июня 2026 г.

Основные исправления ошибок От сообщества
Исправлена проблема, из-за которой чат Copilot не открывался из-за исключения RemoteInvocationException Запрос обратной связи
Исправлена регрессия в std::regex, из-за которой повторяющийся шаблон с проверкой lookahead вызывал исключение вместо корректной обработки. Запрос обратной связи

Версия 18.7.1

Выпущено 16 июня 2026 г.

Основные исправления ошибок От сообщества
Устранение плохой контрастности текста подсказки в светлой теме Запрос обратной связи
Исправлена проблема с некоторыми неоднозначными квалифицированными идентификаторами, для которых не выполнялась диагностика

Обновление 18.7.0 июня

Выпущено 9 июня 2026 г.

Интегрированная среда разработки (IDE)

Цвет темыEdit 📣

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

В Visual Studio теперь есть новая страница параметров Цвета темы, которая позволяет настраивать любой цветовой токен Fluent прямо в IDE — без необходимости устанавливать расширение. Настройки сохраняются для каждой темы, поэтому каждая тема сохраняет собственный набор настроек.

Редактор цветов темы

Что можно сделать
  • Настраивайте любой маркер Fluent на лету - цвета акцента, состояния наведении указателя мыши, хром оболочки и многое другое. Найдите нужный маркер и выберите новый цвет.
  • Сброс отдельного цвета — сбросьте отдельный токен, не сбрасывая все остальные пользовательские настройки.
  • Настраивайте поверх любой темы — ваши переопределения применяются поверх выбранной темы.
  • Новые маркеры для разделения заголовков оболочки и окна — позволяют предоставлять заголовки оболочки и вкладок разные цвета (удобно, если вы хотите более ретро-внешний вид).
Как добраться туда

Используйте новую команду меню " Изменить цвета темы " или откройте страницу " Среда → визуальный интерфейс" → цвета темы в параметрах.

📣 Посмотрите feature ticket, чтобы поделиться отзывами и продолжить разговор.

Продуктивность

Цветные эмодзи

Visual Studio теперь отображает эмодзи в полном цвете в интегрированной среде разработки, делая комментарии кода, файлы markdown и беседы чата более экспрессивными.

Теперь Visual Studio отображает эмодзи в полном цвете во всей среде разработки. Независимо от того, документируете ли вы код с помощью полезных визуальных подсказок или общаетесь в чате, эмодзи теперь отображаются во всех цветах и деталях, а не в виде монохромных контуров.

Где вы увидите цветные эмодзи

Цветные эмодзи доступны в следующих местах:

  • Пометки внутри кода - расставляйте графические индикаторы возле пунктов TODO, сигналов о проблемах либо названий секций
  • Файлы Markdown — просматривайте и редактируйте документы Markdown с расширенной поддержкой эмодзи
  • GitHub Copilot Chat — просматривайте цветные эмодзи в ответах чата и ваших вопросах
  • Окна выходных данных - журнал сборки и протоколы теперь воспроизводят значки в полноцветном виде
  • Обозреватель решений — эмодзи в именах файлов и элементах проекта теперь отображаются в цвете

Цветные эмодзи

Почему это важно

Цветные эмодзи облегчают визуальный обзор исходного текста и ускоряют поиск ключевых фрагментов. Красный значок ❌ в комментарии заметнее, чем серый контур, а зелёный значок ✅ даёт более понятный визуальный отклик. Казалось бы, незначительная доработка существенно повышает удобство восприятия исходного текста ‑ особенно при работе с обширными проектами, где наглядные пометки заметно ускоряют ориентирование.

Воспроизведение значков опирается на актуальные технологии работы со шрифтами, обеспечивая единообразный внешний вид независимо от используемой редакции Windows; в итоге картинка на вашем экране в точности соответствует той, которую наблюдают участники команды.

GitHub Copilot

Отслеживание использования Copilot и оповещения

Будьте в курсе использования Copilot благодаря отслеживанию в режиме реального времени и оповещениям при приближении к лимитам.

GitHub Copilot недавно перешел на оплату на основе использования, поэтому использование Copilot теперь вычисляется на основе потребления токенов, а не по запросу (подробнее можно узнать в блоге GitHub).

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

Что нового

Обновленное окно "Использование Copilot" в Visual Studio дает более четкое представление о текущем использовании на основе новой модели выставления счетов, что упрощает отслеживание того, насколько интенсивно вы используете Copilot в процессе разработки. Метрики использования будут обновляться в реальном времени, чтобы вы могли выявлять закономерности и соответствующим образом планировать свою работу.

В любое время откройте окно сведений об использовании в меню значка CopilotИспользование Copilot.

Окно использования Copilot с текущими показателями использования

Visual Studio также оповещает вас об использовании упреждающим образом, чтобы у вас было время на корректировку использования, прежде чем вы достигнете каких-либо лимитов.

Вы будете видеть оповещения, когда:

  • Вы приближаетесь к своему лимиту использования
  • Вы достигли своего лимита использования
  • Вы активировали дополнительное использование (также называемое избытком) после достижения лимита использования

Время появления оповещения о приближении к лимиту использования можно настроить, скорректировав порог предупреждения в процентах от квоты в параметрах, то есть вы можете контролировать, насколько рано будет появляться оповещение.

Продолжение следует

Это только начало. Мы постоянно совершенствуем Visual Studio, чтобы оптимизировать использование вами Copilot и дать вам более четкое представление о том, как вы используете эту технологию. В ближайших выпусках вас ждет еще больше обновлений в различных областях продукта.

Поделитесь своим мнением

Нам интересно, что мы можем сделать, чтобы вам было проще разбираться в том, как вы используете Copilot. Поделитесь своими отзывами и предложениями с нами в Сообществе разработчиков.

Предложения для следующего редактирования на большом расстоянии

GitHub Copilot теперь может предлагать изменения в любом месте файла, а не только рядом с курсором.

Предложения по следующим правкам (next edit suggestions, NES) в GitHub Copilot расширяют возможности завершений кода Copilot: Copilot не просто вставляет код в месте, где находится курсор, а предлагает правки для внесения поблизости, прогнозируя, что бы вы изменили дальше. Это отличное дополнение к завершениям кода, но область его действия была ограничена узким диапазоном вокруг текущей позиции курсора. На практике изменения, которые необходимо внести, часто находятся гораздо дальше в файле.

Теперь Copilot может предлагать правки в любом месте файла благодаря функции предложений следующих правок на большом расстоянии. Вместо того чтобы ограничиваться изменениями рядом с курсором, Copilot может прогнозировать и предлагать правки во всем файле, помогая поддерживать единообразие и вносить связанные изменения, даже если они далеко друг от друга.

Предложения для следующего изменения на большом расстоянии, показывающие предложение по редактированию далеко от текущего положения курсора

Если вы хотите узнать больше о внутреннем устройстве предложений правок на расстоянии, прочитайте эту запись в блоге с подробным разбором обучения и оценки модели. В настоящее время эта функциональность по умолчанию отключена. Чтобы опробовать эту функцию, перейдите в раздел Инструменты → Параметры → Текстовый редактор → Встроенные подсказки и установите флажок Включить предложения расширенного диапазона. Опробуйте эту возможность и поделитесь с нами своими впечатлениями!

Проверка доверия для серверов MCP

Обнаруживает все изменения конфигураций и ресурсов сервера MCP и запрашивает повторное утверждение перед запуском.

Серверы MCP расширяют возможности Copilot, но обеспечивают их безопасность. Visual Studio теперь включает проверку доверия для серверов MCP, уровень безопасности, который определяет, когда конфигурация или ресурсы сервера изменились с момента последнего утверждения и предложит повторно утвердиться перед продолжением.

Принцип работы

Доверие проверяется в двух точках во время запуска сервера:

  1. Доверенная конфигурация - Перед запуском серверного процесса текущая конфигурация сервера сравнивается с ранее утверждённой эталонной конфигурацией. Если конфигурация изменилась, вам будет предложено подтвердить доверие в диалоговом окне.
  2. Доверие к ресурсам — после запуска сервера и загрузки его компонентов (инструментов, промптов, ресурсов, инструкций) их цифровой отпечаток сравнивается с последним доверенным отпечатком. Если ресурсы изменились, в диалоговом окне доверия показано, в чём заключаются расхождения между старой и новой версиями.

Диалоговое окно доверия MCP с запросом пользователя на просмотр изменений

Решения доверия

При появлении запроса можно:

  • Примите изменения — доверяет один раз и обновляет базовые показатели для будущих сравнений.
  • Всегда доверять — для этого сервера запрос больше не появится.
  • Отклонить изменения — прерывает запуск сервера и оставляет его в состоянии, отклоненном доверием. Доверие повторно проверяется при следующей попытке активации.

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

Проверка доверия также автоматически пропускается, если сервер является встроенным, для реестра MCP задана политика RegistryOnly (то есть он заранее одобрен политикой организации), вы ранее выбрали для этого сервера вариант «всегда доверять» или отключили эту функцию.

Эта функция включена по умолчанию. Вы можете управлять им на Tools → параметры → GitHub → Copilot → Copilot Chat → диалоговое окно "Показать доверие" перед запуском инструментов с обновленного сервера MCP.

Средства работы с Git

Просматривайте и утверждайте запросы на включение изменений в IDE 📣

Просматривайте изменения в запросах на включение, оставляйте комментарии и утверждайте их, не покидая Visual Studio.

Получили пул-реквест на ревью или обратную связь, которую нужно обработать самостоятельно? Независимо от того, находится ли ваш репозиторий на GitHub или в Azure DevOps, вы можете работать с ним, не покидая Visual Studio.

Просмотр и открытие запросов на включение изменений

Выберите любой запрос на включение изменений, чтобы открыть встроенное представление просмотра, не переключаясь на ветку. Найдите запросы на вытягивание в окне Git Repository (View → Git Repository), Git Changes или Git → GitHub (или Azure DevOps) >Просмотреть запросы на вытягивание.

Слева — список запросов на включение изменений, справа — обзор выбранного PR с описанием и изменёнными файлами

  • Описание PR, изменённые файлы, коммиты, связанные элементы и рецензенты в одном представлении
  • Переключение между активными PR без затрагивания вашей рабочей ветки
  • Просмотр сведений о коммитах и изменений в отдельных коммитах в PR
Комментирование и обсуждение

Оставляйте отзывы прямо в режиме просмотра различий и продолжайте обсуждение, не переключаясь в браузер.

Дифф в файле с встроенным потоком комментариев с кнопкой ответа и разрешения

  • Комментарии к конкретным строкам, ответы и завершение обсуждения
  • Комментарии по каждому файлу, показанные в списке изменений
  • В комментариях отображаются встроенные изображения и форматированный текст, как в браузере
Утверждение, завершение и слияние

Когда будете готовы, утвердите и завершите PR в Visual Studio. Действия для голосования и завершения доступны из любого представления, поэтому вы можете утверждать, просматривая изменения.

  • Утвердите запрос на вытягивание, используя дополнительные варианты голосования в раскрывающемся списке Azure DevOps
  • Просматривайте проверки статуса, конфликты слияния и обязательные одобрения на вкладке "Обзор"
  • Завершите или объедините запрос на включение изменений с возможностью преобразовать его в черновик, отменить или закрыть

Вы можете настроить эту функцию в Инструменты → Параметры → Предварительные возможности:

  • Комментарии к запросам на слияние
  • Просмотреть запросы на включение изменений для репозитория Git

📣 Посмотрите feature ticket, чтобы поделиться отзывами и продолжить разговор.

Добавить PR-запросы в Copilot Chat

Прикрепите контекст pull request напрямую к Copilot Chat.

Copilot Chat уже знает о ваших коммитах и изменениях, а теперь вы тоже можете добавить pull-реквесты в обсуждение.

Щелкните правой кнопкой мыши pull request в окне Git Repository и выберите Add to Copilot Chat, чтобы добавить его контекст, включая описание PR, измененные файлы и комментарии. Вы также можете напрямую сослаться на запрос на включение изменений в поле ввода чата, набрав # и идентификатор запроса на включение изменений.

Например, попросите Copilot: «Подведи итоги по этому запросу на включение изменений», чтобы быстро получить общее представление без необходимости читать каждый файл.

Добавление запроса на вытягивание в Copilot Chat из окна репозитория Git

Убедитесь, что СервисПараметрыПредварительные возможностиПросмотр запросов на включение для репозитория Git включен.

C++

Агент модернизации GitHub Copilot для C++

Сценарии обновления MSVC для модернизации GitHub Copilot завершили общедоступную предварительную версию и теперь общедоступны.

Агент модернизации GitHub Copilot — это инструмент на базе ИИ в Visual Studio, который помогает модернизировать и обновлять ваши приложения. Мы рады сообщить о том, что наши первые сценарии C++, которые помогают обновить проекты, чтобы использовать последнюю версию средств сборки Microsoft C++ (MSVC) завершили общедоступную предварительную версию и теперь общедоступны.

Оставаясь в курсе последних версий MSVC, вы получаете доступ к новым функциям, улучшениям производительности и обновлениям системы безопасности. Агент модернизации для C++ упрощает этот процесс, анализируя проект, выявляя проблемы совместимости и выполняя четкий план обновления, чтобы обеспечить плавное переход на последнюю версию MSVC. Вы можете запустить его в автоматизированном режиме, чтобы сократить усилия вручную или в интерактивном режиме, чтобы просмотреть и утвердить оценку, план и шаги выполнения.

Как приступить к работе
  1. В Visual Studio откройте проект C++, который компилируется с помощью MSVC.
  2. Запустите агент модернизации с помощью одного из следующих методов:
    • Щелкните правой кнопкой мыши решение или проект в Обозреватель решений и выберите Modernize, or
    • Откройте окно Copilot Chat и введите @Modernize свой запрос на обновление.
  3. Сообщите агенту @Modernize , что вы хотите обновить до последней версии MSVC.

Visual Studio с агентом модернизации GitHub Copilot активно модернизирует 10-летний пример на C++

Благодаря многим пользователям, которые оценили агент модернизации GitHub Copilot на своих проектах C++ во время общедоступной предварительной версии! Ваши отзывы способствовали улучшению опыта, и мы рады продолжать строить эту основу для поддержки более сценариев модернизации C++ в будущем. Сообщите нам, что вы хотите увидеть дальше, поделившись своими предложениями и отзывами по адресу Сообщество разработчиков.

Поддержка PackageReference в проектах C++ 📣

C++ .vcxproj проекты теперь поддерживают экспериментальную поддержку NuGet PackageReference, как в командной строке, так и в Visual Studio IDE.

Теперь NuGet PackageReference поддерживается для проектов C++ Visual Studio (.vcxproj). Эта функция сейчас экспериментальна и отключена по умолчанию.

Чтобы включить эту возможность в проектах на C++, задайте для свойства EnableNativePackageReferenceSupport значение true в группе свойств Globals вашего проекта или в файле Directory.Build.props. Затем можно добавить зависимости PackageReference так же, как и для своих проектов .NET.

PackageReference позволяет ссылаться на пакеты NuGet непосредственно в файле проекта и автоматически восстанавливать и включать их в сборку. Это более современный способ управления зависимостями по сравнению с более старым подходом packages.config. Дополнительные сведения о PackageReference см. в документации NuGet о PackageReference и руководстве по миграции с packages.config на PackageReference.

Эта функция основана на существующей поддержке, добавленной для проектов C++/CLI, предназначенных для современных версий .NET.

Область и совместимость:

  • Поддерживаются: проекты на собственном C++ (.vcxproj) и проекты C++/CLI, ориентированные на .NET Core или .NET 5+.
  • Не поддерживается: проекты C++/CLI, предназначенные для .NET Framework. Для этих проектов можно продолжать использовать старый подход packages.config для зависимостей NuGet.
  • Не поддерживается: проекты C++, ссылающиеся на проекты C++/CLI или проекты C#. Мы изучаем поддержку этого сценария в будущем обновлении. Тем временем можно воспользоваться одним из следующих обходных путей, чтобы PackageReference заработал:
    • Установка <ReferenceOutputAssembly>false</ReferenceOutputAssembly> и <SkipGetTargetFrameworkProperties>true</SkipGetTargetFrameworkProperties> для элемента <ProjectReference> позволит NuGet игнорировать его и избежать проблем с восстановлением и сборкой.
    • Задайте для AssetTargetFallback значение, включающее целевые платформы, совместимые с подключенным проектом C#. Например: <PropertyGroup> <AssetTargetFallback>net472;net10.0</AssetTargetFallback> </PropertyGroup>.

📣 Посмотрите feature ticket, чтобы поделиться отзывами и продолжить разговор.

Основные исправления ошибок От сообщества
Сбой компоновщика MSVC версии 14.51 в IncrCalcPtrs Запрос обратной связи
Релизная сборка MSVC CL.exe приводит к внутренней ошибке компилятора в plutovg-font.c Запрос обратной связи
CHPE /d2hybrid:emit_guest_references вызывает ICE Запрос обратной связи
Исправлена проблема, из-за которой наименование VC Redistributable возвращалось к более старой версии.
Исправление порядка содержимого в окне Copilot Chat после обновления VS

Версия 18.6.3

Выпущено 9 июня 2026 г.

Устранены проблемы безопасности, указанные в рекомендациях CVE Описание
Уязвимость к повреждению памяти SQLite CVE-2025-6965 Существует уязвимость в версиях SQLite до 3.50.2, где количество статистических терминов может превышать количество доступных столбцов. Это может привести к повреждению памяти.
уязвимость пакета SDK .NET для повышения привилегий CVE-2026-45490 dotnet.exe workload elevate — произвольное создание или усечение файла через именованный канал LogFile позволяет несанкционированному злоумышленнику локально повысить привилегии.
Уязвимость подмены в .NET Core CVE-2026-45491 Путем перехода по каналу Symlink в System.Formats.Tar при извлечении записей tar можно записывать произвольные файлы.
Уязвимость ASP.NET Core, связанная с отказом в обслуживании CVE-2026-45591 DoS-атака через переполнение стека из-за глубоко вложенных массивов MessagePack в SignalR и Blazor Server.

Версия 18.6.2

Выпущено 27 мая 2026 г.

Основные исправления ошибок От сообщества
Публикация через Web Deploy завершается ошибкой в Visual Studio Community 2026 Insiders для устаревшего проекта ASP.NET Запрос обратной связи
Исправлена ошибка для агента Claude Opus 4.5: необработанное исключение в AskInConversationAsync: StreamJsonRpc.RemoteInvocationException: Недопустимые символы в пути Запрос обратной связи
Устранение сбоев сборки для компилятора — макросы с вложенными скобками внутри VA_OPT неправильно материализованы при импорте из единицы заголовка

Версия 18.6.1

Выпущено 20 мая 2026 г.

Основные исправления ошибок От сообщества
Arm64: не удается задать точки останова vs2026 Запрос обратной связи

Обновление 18.6.0 за май

Выпущено 12 мая 2026 г.

Интегрированная среда разработки (IDE)

Системные тёмная/светлая темы 📣

Автоматически переключать темы Visual Studio при переходе системы между светлым и тёмным режимами, чтобы ваша IDE оставалась в синхронизации с окружением.

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

Как использовать его

  1. Откройте Инструменты → Параметры → Среда → Визуальный интерфейс
  2. Настройка цветовой темы для использования системного параметра
  3. Выбор темы "Свет системы" и "Темная тема системы"

При смене темы Windows среда Visual Studio автоматически применяет соответствующую тему.

Видео, показывающее, как Visual Studio переключается со светлой на тёмную тему при изменении системной темы Windows

📣 Посмотрите feature ticket, чтобы поделиться отзывами и продолжить разговор.

GitHub Copilot

Просмотр и управление навыками агента

Просматривайте, редактируйте и находите все навыки агента Copilot в окне чата.

Теперь вы можете просмотреть все навыки агента в одном месте. Щелкнув значок инструментов в правом нижнем углу окна чата, вы можете открыть выделенную панель навыков, которая перечисляет все навыки, обнаруженные из рабочей области и профиля пользователя, что упрощает просмотр доступных на первый взгляд.

На панели вы можете управлять навыками напрямую, не покидая Visual Studio:

  • Изменение навыка — щелкните меню с тремя точками (⋯) для любого навыка, чтобы открыть и изменить его непосредственно в VS.
  • Открыть местоположение файла — используйте то же меню, чтобы перейти прямо к файлу навыка на диске.
  • Поиск навыка — используйте панель поиска в верхней части, чтобы быстро найти определенный навык по имени или ключевому слову.

Панель навыков в окне чата с доступными навыками с параметрами управления

Это основывается на поддержке навыков агента, представленной ранее, что дает вам более удобный способ просмотра и поддержания навыков. Попробуйте и поделитесь своими отзывами!

Сводная разница по нескольким файлам для изменений в Copilot

Просматривайте все изменения Copilot в нескольких файлах в едином сводном представлении с детальными функциями принятия и отмены.

Когда Copilot редактирует несколько файлов, вам больше не нужно просматривать каждый из них отдельно. В новом представлении сводки diff с несколькими файлами отображаются все изменения в одном месте.

Нажмите кнопку Открыть сводку изменений в рабочем наборе Copilot Chat после того как Copilot завершит редактирование. Вы увидите одну вкладку со всеми измененными файлами и их диффами вместе.

Скриншот с кнопкой

Вы можете принять или отменить изменения на разных уровнях:

  • Во всех файлах одновременно
  • На основе каждого отдельного файла
  • Для каждого отдельного фрагмента диффа

Вы также можете открыть любой файл отдельно, чтобы просмотреть его полный контекст.

Снимок экрана: представление сводки с несколькими файлами, отображающее несколько файлов с встроенными диффами и элементами управления accept/undo

Используйте элементы управления в левом верхнем углу, чтобы:

  • Свернуть все содержимое файла , чтобы просмотреть только заголовки файлов для быстрого обзора
  • Перемещение между блоками диффа с помощью кнопок «следующий» и «предыдущий» для быстрого просмотра изменений

Это представление упрощает понимание того, что изменил Copilot в вашей кодовой базе, и дает вам точный контроль над тем, какие изменения сохранить.

Индикатор окна контекста

Посмотрите, сколько контекста использует Copilot, и оптимизируйте его с помощью функции суммирования одним щелчком.

При чате с Copilot он отслеживает журнал беседы, вложенные файлы и другие контексты, чтобы дать вам соответствующие ответы. Это называется окном контекста и имеет ограничение. После заполнения Copilot может перестать отслеживать предыдущие части беседы.

Теперь вы можете точно увидеть, сколько пространства из окна контекста вы использовали с новым индикатором.

Найдите значок кольца в правом верхнем углу окна запроса Copilot Chat. Эта мини-кольцевая диаграмма заполняется по мере роста беседы, показывая вам на первый взгляд, сколько контекста вы использовали.

Щелкните индикатор, чтобы увидеть:

  • Точный процент используемого контекста
  • Подробное описание того, что способствует контексту
  • Кнопка "Сжать беседу" для упрощения беседы и освобождения места

Индикатор окна контекста с кольцом процента, показатель использования - 45%, и перечень, включающий сообщения беседы, файлы рабочей области и другие источники

При низком уровне контекста нажмите кнопку "Сводка ", чтобы сжать предыдущие части беседы. Это позволяет сохранять чат, не теряя важный контекст или запуская новую беседу.

Индикатор контекстного окна после обобщения, показывающий сокращение использования и уведомляющий о том, что разговор был обобщен

Планирование перед сборкой с помощью режима планирования

Создайте и выполните итерацию планов реализации перед внесением изменений в код.

Иногда необходимо продумать подход, прежде чем переходить к коду. Новый режим чата Planning позволяет совместно работать с Copilot в плане реализации без внесения изменений в базу кода.

Принцип работы

Выбранный режим плана

При выборе режима Planning Copilot выполняет двухэтапный процесс:

  1. Изучение и уточнение — Copilot использует средства только для чтения, чтобы понять базу кода и задаёт уточняющие вопросы. Для простых задач он немедленно проектирует план.
  2. Драфт и уточнение - Copilot создает подробный план реализации, который можно просмотреть, обсудить и уточнить вместе.

Режим планирования создания плана реализации

Когда вы будете готовы, нажмите кнопку "Реализовать план ", чтобы передать его в режим агента для выполнения.

Реализация плана в режиме агента

Планы сохраняются в формате markdown

Copilot сохраняет каждый план как файл Markdown в вашем репозитории по адресу .copilot/plans/plan-{title}.md. Этот файл является одним источником истины. Его можно изменить непосредственно в редакторе или уточнить его с помощью чата. Copilot обнаруживает изменения и поддерживает план в актуальном состоянии.

Когда следует использовать режим планирования
  • Большие функции . Разбиите сложную работу на четкие шаги перед написанием кода.
  • Неизвестные кодовые базы — позвольте Copilot сначала изучить и объяснить, прежде чем предлагать изменения.
  • Совместная работа группы — предоставление общего доступа к планам в виде файлов markdown для проверки перед реализацией

Средства работы с Git

Добавить коммит в Copilot Chat

Присоединяйте контекст коммита к Copilot Chat напрямую из среды IDE.

Вы проверяете коммит и хотите, чтобы Copilot помог понять его, выявить проблемы или основать на нём новые изменения? Вместо поиска идентификатора коммита и вставки его в чат теперь можно щелкнуть правой кнопкой мыши по коммиту и добавить его непосредственно в контекст Copilot Chat.

Эту команду можно найти на следующих поверхностях:

  • История Git (Просмотр истории веток Git>)
  • История файла (щелкните правой кнопкой мыши файл в Обозреватель решений, а затем Git > Просмотр истории)
  • Annotate (Blame) ( щелкните правой кнопкой мыши в редакторе, а затем Git > Annotate (Blame))

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

Добавить коммит в Copilot Chat

Copilot получает коммит как контекст, поэтому вы можете задать такие вопросы: объясни это изменение, это вызывает какие-либо проблемы, или внести аналогичное изменение для другого файла.

Copilot Chat с контекстом коммита

Инструкции по сообщению коммита перемещены

Индивидуальные инструкции для сообщений коммитов теперь используют файл инструкций Copilot вместо настроек Visual Studio.

Если вы использовали пользовательские инструкции текстового ввода Commit message custom instructions в разделе GitHub → Copilot → интеграция с системой управления версиями для настройки сообщений фиксации, создаваемых Copilot, этот параметр более не будет применяться. В дальнейшем инструкции по оформлению сообщений коммитов управляются через файл пользовательских инструкций Copilot.

Это приводит инструкции коммит-сообщений в соответствие с тем, как пользовательские инструкции Copilot работают в репозитории, сохраняя все в одном месте.

Настройка пользовательских инструкций

Добавьте комментарий к коммиту в файл инструкций Copilot вашего репозитория. Полные сведения о настройке см. в разделе "Добавление инструкций по репозиторию".

Файл инструкций Copilot с правилами сообщений коммита

C++

Улучшенная оптимизация итеративных сборок C++

Улучшены сценарии оптимизации для сборок C++, когда GitHub Copilot для анализа производительности сборки в Windows выявляет потенциальные улучшения, которые могут быть заметны только в итеративных сборках.

При использовании GitHub Copilot для анализа производительности сборки в Windows Copilot может обнаружить регрессию при анализе полной пересборки. В таких случаях Copilot теперь повторно запускает сопоставимую инкрементную сборку. Это позволяет лучше отразить реальный выигрыш от таких оптимизаций, как использование предварительно скомпилированных заголовков и рефакторинг заголовков, которые могут казаться медленнее при полной пересборке, но значительно ускоряют ваши повседневные рабочие процессы.

Спросите у @BuildPerfCpp в чате GitHub Copilot, как оптимизировать время сборки

GitHub Copilot производительность сборки для Windows

GitHub Copilot производительность сборки для Windows использует Build Insights для выявления и устранения проблем с производительностью сборки в проектах C++ с помощью MSVC. Этот агент анализирует процесс сборки, подсказывает, что можно оптимизировать, и вносит нужные изменения, тем самым ускоряя данный процесс:

  1. Ускорьте синтаксический анализ заголовков за счет создания предварительно скомпилированных заголовков и оптимизации путей включения (например, удаления неиспользуемых включений).
  2. Рефакторинг функций для ускорения синтаксического анализа функций или упразднения потребности в нем.
  3. Модернизация кода C++, чтобы использовать новые функции языка, ускоряющие компиляцию.
  4. Оптимизация параметров сборки для параллельного создания нескольких сборок и использования оптимальных параметров компоновщика.
Начало работы
  1. Убедитесь, что режим агента GitHub Copilot включен в интегрированной среде разработки.
  2. Откройте проект C++ .
  3. Попросите @BuildPerfCpp в окне GitHub Copilot Chat для оптимизации времени сборки.

Примечание. Build Insights должна быть запущена для сбора данных о производительности сборки. Ей также необходимо получить разрешения, необходимые для того, чтобы собирать данные о трассировке ETL. Один раз примите запрос UAC, чтобы разрешить технологии Build Insights собирать из MSVC данные о событиях ETW.

Попросите @BuildPerfCpp в чате GitHub Copilot, чтобы оптимизировать время сборки.

Поддержка Segment Heap для C++

Новые проекты C++ для MSBuild и CMake теперь по умолчанию используют сегментную кучу, что помогает приложениям воспользоваться современными функциями Windows для управления памятью и обеспечения безопасности.

Visual Studio теперь по умолчанию включает поддержку Segment Heap для новых проектов C++. Сегментная куча — это современная реализация кучи в Windows, которая повышает производительность, масштабируемость и безопасность по сравнению с устаревшей кучей NT. Это изменение помогает приложениям применять эти преимущества и подготавливает их к будущим возможностям платформы.

Это поведение можно настроить в свойствах проекта в разделе "Средство манифеста" → входные и выходные данные. Существующие проекты не изменяются автоматически, но могут использовать те же параметры.

Средства сборки MSVC версии 14.51

Улучшена поддержка C++23, производительность и множество исправлений ошибок.

Средства сборки Microsoft C++ (MSVC) версии 14.51 теперь доступны и устанавливаются по умолчанию с рабочими средами для настольных приложений и игр C++. Чтобы проверить, установлен ли он, просто убедитесь, что один или оба из этих компонентов выбраны в установщике.

  1. Средства сборки MSVC для x64/x86 (последняя версия)
  2. Средства сборки MSVC для ARM64/ARM64EC (последняя версия)

Вы также можете выбрать один из компонентов, помеченных номером версии 14.51, чтобы закрепить установку на эту версию.

Screenshot с компонентами установщика Visual Studio для MSVC версии 14.51

Номер версии, напечатанный cl.exe и link.exe, будет не менее 14.51.36231.

Стабильный выпуск версии 14.51 будет получать исправления в течение 9 месяцев, как описано в документе Новая модель выпуска и жизненный цикл поддержки Microsoft C++ Build Tools .

Ниже приведен полный список нововведений.

Соответствие стандартам C++

Команда фронтенда продолжает внедрение возможностей CPP23 и CPP20 и исправление ошибок совместимости.

  • Реализации C++23: Подробные сведения см. в записи блога Поддержка CPP23 в MSVC Build Tools 14.51.
  • Улучшения Consteval: Несколько исправлений для обработки функции consteval, constexpr new/delete в модулях, резервные массивы в инициализаторах списков, /experimental:constevalVfuncVtable поведение теперь включено по умолчанию, и улучшена диагностика ошибок для неудачных выражений констант.
  • Улучшения корутины: Корутин связан с глобальными рефакторингами и нерекомендуемыми экспериментальными заголовками корутин.
  • Модернизация синтаксического анализатора: Рекурсивный нисходящий синтаксический анализатор теперь обрабатывает [[attributes]], с дальнейшими улучшениями в восстановлении после ошибок и удалении устаревших методов доступа к маркерам.
  • Улучшения языка C: Добавлена _Atomic поддержка квалификатора, удалена неправильная диагностика для элементов гибкого массива C99 и добавлена __typeof__ поддержка типов функций.
Создание кода

Оптимизатор серверной части получил значительные инвестиции во многих областях:

  • Оптимизации на основе профилей с использованием выборок: Поддержка оптимизаций на основе профиля, использующего выборки, с помощью вспомогательных инструментов. Дополнительные сведения см. в следующей записи блога.
  • Улучшения оптимизации статического одноцелевого назначения (SSA): Реализованы десятки новых шаблонов алгебраического упрощения, включая шаблоны для тернарных операторов, арифметические шаблоны и min/max.
  • Common Subexpression Elimination (CSE): Улучшение csE нагрузки [x + C] через соединения if/else, избыточные хранилища и улучшены многобайтовые проверки псевдонимов.
  • Скалярная замена агрегатов (SROA): Более агрессивная распаковка структур.
  • Оптимизации циклов: Исправление знаковых проверок линейной функции (LFTR) и оптимизация циклов с использованием счётчиков, когда основная индуктивная переменная используется после завершения цикла.
  • Встраивание: Расширенное ограниченное встраивание вызова и улучшено распространение информации о типах параметров при встраивании.
  • Распространение копирования: Несколько улучшений распространения копирования для целых констант и последовательных копий.
  • Сокращение силы: Реализовано сокращение преобразований в качестве оптимизации уменьшения силы.
  • Предикаты и потоки переходов: Улучшение оптимизаций с использованием предикатов для устранения проверок границ, включая более эффективное использование предикатов из минимальных паттернов.
  • Макет стека: Теперь компилятор предпочитает сохранять регистры, сохраненные вызываемой функцией, на стеке, а не использовать теневые слоты, уменьшая накладные расходы на пролог и эпилог функции.
  • PGO: Улучшены компромиссы размера и скорости на уровне функций для компенсации нерепрезентативных профилей и улучшения оптимизации PGO.
  • Ограничение указателей: Добавлена поддержка семантики ограничения указателя для включения дополнительных оптимизаций псевдонимов.
  • Оптимизации сопоставления шаблонов: Новые шаблоны для MSUB/MADD создания, ADC/SBB для условного добавления и вычитания, и варианты CMOVE/NE.
  • Intel APX: Предварительная поддержка Intel APX (Advanced Performance Extensions) в цепочке инструментов MSVC. Эта поддержка включается через параметр компилятора /feature:APX для использования различных возможностей APX, таких как расширенные регистры общего назначения (EGPR), новое место назначения данных (NDD), отсутствие обновления флагов (NF), новые условные инструкции ISA и оптимизированные операции сохранения и восстановления регистров. Они задокументированы по адресу https://www.intel.com/content/www/us/en/developer/articles/technical/advanced-performance-extensions-apx.html.

Другие изменения в создании кода:

  • Параметр /volatileMetadata компилятора больше не включен по умолчанию для x64 и x86; используйте /volatileMetadata явно для выдачи переменных метаданных.
ARM64 и SVE
  • Поддержка SVE (масштабируемое расширение вектора): Основная новая функция, которая предоставляет SVE ARM в MSVC, включая поддержку фронтенда для скалярных и агрегированных типов SVE, построение встроенных функций, сохранение и восстановление регистров вызываемой функции, передачу параметров вариативной функции, установку заголовочных файлов и поддержку tryblock/funclet. Были устранены многочисленные ошибки ICE и неправильной компиляции.
  • Усадочная упаковка: Исправлены несколько проблем, включая информацию о фрагменте разворачиваемой области, ошибки генерации кода, связанные с прерыванием chkstk X15, и области усадки с несколькими точками входа.
  • Качество кода: Новые шаблоны, оптимизация CSEL pow2, 0 + ORR → CSET + ORR_SHIFT, удаление лишних NEON_DUPR после NEON_INSR, шаблоны ARM NEON для x264, улучшение слияния инструкций, повторное назначение регистров после глобальных регистров и настройка выравнивания функций.
  • ПАКЕТ SDK ДЛЯ DIA: Полная поддержка SVE в интерфейсе отладки, включая RtlpGetSveContextPointers и IDiaStackWalkHelper3.
SIMD и векторизация
  • Векторизатор SLP: Улучшения векторизации уровня суперсловного параллелизма (SLP):
    • Векторизация скалярной редукции
    • Поддержка векторных инструкций общего назначения и расширенных размеров
    • Оптимизации перестановок и поддержка выборки для превышенного размера
  • Улучшения векторизатора: Перемещение проверок перекрытия указателей внутреннего векторизованного цикла на родительские циклы, поддержка циклов для подсчета символов, поддержка разрозненного доступа к памяти для 2-байтовых типов данных и улучшение эвристики для низких значений счетчика итераций на ARM64.
  • AVX/SSE: AVX512memcpy/memset, AVX2 memcmp переопределение, AVX10.2 и векторизованные шаблоны битмаски для x264.
Компоновщик и PDB
  • DIA: Безопасность при инициализации потоков COM и поддержка SVE.
  • Фаззинг PDB: Запущен фаззинг PDB в ночных сборках.
  • SPGO: Оптимизации, управляемые профилем на основе образцов, доступны для использования.
Стандартная библиотека (STL)

В GitHub репозиторий microsoft/STL отслеживает состояние с высоким уровнем детализации; см. статью Changelog для средств сборки MSVC 14.51. Новые доступные и примечательные функции библиотеки:

  • P0429R9 - <flat_map>
  • P1222R4 - <flat_set>
  • P2255R2 — характеристики типа для определения привязывания ссылок к временным объектам
  • P2590R2 — явное управление временем жизни
  • P2674R1 - is_implicit_lifetime

Другие заметные изменения:

  • Мы основательно переработали <regex>, чтобы устранить давние проблемы корректности и производительности, которые присутствуют с момента его первоначальной реализации в VS 2008 с пакетом обновления 1 (SP1). После почти двух десятилетий переполнение стека, наконец, исправлено!
  • Мы продолжали улучшать и добавлять алгоритмы STL с векторизацией SIMD, используя SSE4.2 и AVX2 для x64/x86, а недавно выпущенные в MSVC Build Tools 14.51 NEON для ARM64/ARM64EC.
  • Мы реализовали 18 решений вопросов LWG.
  • Мы удалили устаревшие функции, не являющиеся стандартными, например TR1, <hash_map>, <hash_set><experimental/filesystem>stdext::checked_array_iteratorи .stdext::unchecked_array_iterator

Все это было возможно благодаря нашим удивительным GitHub участникам.

AddressSanitizer (ASan)
  • Поддержка ARM64: Улучшена поддержка ASan для ARM64 с полным комплектом библиотек, исправлениями ошибок перехвата и устранением ложных срабатываний.
  • SanitizerCoverage: Исправлена обработка блок-списков, проблемы кодегена и объявления пересылки, чтобы обеспечить вызов инициализаторов sancov.
  • Производительности: Кэшированные кучи для улучшения производительности во время операций теневой памяти.
Модули и IFC
  • Обновление версии IFC: Интерфейс MSVC создает файлы IFC в соответствии со спецификацией IFCверсии 0.44.
  • Исправление параллелизма: Исправлена ошибка гонки состояния после освобождения памяти при параллельном разрешении отладочных записей IFC.
Статический анализ
  • Консолидация EspX: Объединены EspX и его расширения, такие как CppCoreCheck, в одну библиотеку DLL, упрощая развертывание.
  • Исправления ошибок: Исправлены ложные срабатывания при разыменовании местоположения "inexact", а также ряд внутренних ошибок компилятора (ICE) при использовании параметра /analyze.
ARM64EC & ARM64X
  • Поддержка сопрограмм. Устранена проблема отсутствия точек входа для вспомогательных функций сопрограмм и ramp-функций.
  • ICF: Улучшена идентичная оптимизация свертывания COMDAT (ICF) в двоичных файлах ARM64X.
  • Изменяемый XMM: Исправлено назначение изменяемого XMM в ARM64EC.
Diagnostics
  • Исправлена ошибка, из-за которой предупреждение C4319 не испускается при компиляции кода на C.
  • Удалены неправильные диагностические сообщения для элементов гибкого массива C99.
  • Предупреждение C4789 улучшено для уменьшения ложных срабатываний.
Информация об отладке
  • Включено удаление отладочной информации для уменьшения размера PDB.

Устранены проблемы с билетами

В этом выпуске были исправлены следующие проблемы, сообщаемые клиентом:

Основные исправления ошибок От сообщества
Неправильное движение кода ARM64 /EHa Запрос обратной связи
[Регрессия] сбой, характерный для ARM64, в MSVC 19.50.35728 для ARM64 Запрос обратной связи
Исправить decltype члена, объявленного как mutable и заключённого в скобки, внутри функции-члена с квалификатором const.
Исправьте проблему, из-за чего возникает ошибка C2106 при использовании определенных тернарных выражений в LHS назначения
Исправлена ложная ошибка C2106 в некоторых случаях инициализации с участием членов типа массива. Запрос обратной связи
Обновление установщика для включения последнего обслуживающего обновления Windows SDK версии 10.0.26100 (10.0.26100.8249) и Windows SDK версии 10.0.28000 (10.0.28000.1839)

Версия 18.5.3

Выпущено 12 мая 2026 г.

Устранены проблемы безопасности, указанные в рекомендациях CVE Описание
Уязвимость к повреждению памяти SQLite CVE-2025-6965 Существует уязвимость в версиях SQLite до 3.50.2, где количество статистических терминов может превышать количество доступных столбцов. Это может привести к повреждению памяти.
Уязвимость подмены в .NET Core CVE-2026-32175 В .NET Core существует уязвимость подмены, когда платформа неправильно обрабатывает специально сформированные файлы.
Уязвимость повышения привилегий в .NET CVE-2026-32177 Переполнение буфера в куче в .NET позволяет несанкционированному злоумышленнику локально повысить привилегии.
Уязвимость повышения привилегий в .NET CVE-2026-35433 Неправильная проверка входных данных в .NET позволяет неавторизованному злоумышленнику повысить привилегии локально.
Уязвимость ASP.NET Core, связанная с отказом в обслуживании CVE-2026-42899 Цикл с неустранимым условием выхода ("бесконечный цикл") в ASP.NET Core позволяет несанкционированным злоумышленнику запретить службу через сеть.

Версия 18.5.2

Выпущено 28 апреля 2026 г.

Основные исправления ошибок От сообщества
[После обновления до версии 18.5] Ввод клавиатуры может перестать отвечать после использования функции "Поиск в файлах" Запрос обратной связи
Последняя установка VS 2026 Insiders (11709.129) удаляет инструменты сборки 14.50. Запрос обратной связи
Клод Opus 4.7 перестал работать после последнего обновления Запрос обратной связи
[C++] Недопустимая генерация кода для switch(*optional) в 64-разрядной версии Visual Studio 2026 Запрос обратной связи
Устранены проблемы безопасности, указанные в рекомендациях CVE Описание
ASP.NET Core уязвимость на повышение привилегий CVE-2026-40372 Неправильная проверка криптографической подписи в ASP.NET Core позволяет авторизованному злоумышленнику повысить привилегии по сети.

Версия 18.5.1

Выпущено 21 апреля 2026 г.

Основные исправления ошибок От сообщества
F# Пустые строки в кодовых выражениях приводят к FS045 Запрос обратной связи
Добавление пользовательского интерфейса для отображения процесса мышления модели Запрос обратной связи

Обновление за апрель 18.5.0

Выпущено 14 апреля 2026 г.

Интегрированная среда разработки (IDE)

Обновления схемы редактора JSON

Редактор JSON обновлен для поддержки дополнительных функций схемы JSON.

Редактор JSON теперь поддерживает новые спецификации схемы JSON, предоставляя доступ к современным функциям схемы, таким как $defs, $anchorи улучшенная поддержка словаря.

Ранее редактор поддерживал только черновик схемы JSON 4 и черновик 7. Теперь можно использовать следующее:

Это означает улучшенное средство IntelliSense и проведение проверок при работе со схемами, которые используют последние спецификации.

GitHub Copilot

Используйте навыки агента 📣

Агенты Copilot в Visual Studio теперь автоматически обнаруживают и применяют навыки, заданные в вашем репозитории или профиле пользователя.

Агенты Copilot в Visual Studio теперь могут автоматически обнаруживать навыки. Навыки агентов представляют собой многократно используемые наборы инструкций для обработки конкретных задач, включая запуск конвейера сборки, генерацию шаблонного кода или соблюдение стандартов кодирования команды. Однократное определение навыка обеспечивает экономию времени и согласованность поведения в рамках рабочего процесса. Примеры от сообщества представлены в разделе awesome-copilot.

Навыки обнаруживаются в следующих местах:

  • Навыки рабочей области или проекта (хранятся в репозитории): .github/skills/, .claude/skills/, .agents/skills/.
  • Персональные навыки (хранятся в профиле пользователя): ~/.copilot/skills/, ~/.claude/skills/, ~/.agents/skills/.

Чтобы создать навык, выполните приведенные действия.

  1. Создайте каталог для навыка рабочей области или каталог для личного навыка.
  2. Создайте подкаталог для вашего навыка. Выделите отдельный каталог для каждого навыка (например, .github/skills/github-issues/).
  3. Создайте файл SKILL.md в данном каталоге. Используйте формат спецификации agentskills.io/specification.
  4. При необходимости добавьте скрипты, примеры или дополнительные ресурсы в каталог навыка.

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

чат Copilot, показывающий активный навык

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

📣 Посмотрите feature ticket, чтобы поделиться отзывами и продолжить разговор.

Интеграция с облачным агентом

Запускайте новые сессии облачного агента прямо из Visual Studio.

Облачные агенты, включая агента программирования Copilot, запускаются на удаленной инфраструктуре для изолированного и масштабируемого выполнения. Теперь вы можете запустить новые сеансы агента облака непосредственно из Visual Studio.

Облачная опция в селекторе агентов чата

Для активации выберите Cloud в средстве выбора агента окна чата с последующим указанием требуемой задачи. Облачный агент сначала запрашивает разрешение на открытие задачи в вашем репозитории, а затем создает pull request для её решения. Во время подготовки PR можно продолжать работать над другими задачами в Visual Studio либо закрыть Visual Studio и вернуться позже. Когда pr будет готов, вы получите уведомление и сможете просмотреть его в Visual Studio или в браузере.

Рабочий процесс облачного агента от проблемы до PR

В настоящее время облачный агент в Visual Studio работает с помощью агента программирования Copilot. Чтобы использовать его, убедитесь, что вы находитесь в репозитории GitHub и что Copilot имеет разрешение на создание проблем в этом репозитории. Попробуйте эту службу и сообщите нам свое мнение.

Создание собственных пользовательских агентов 📣

Определите настраиваемые агенты, адаптированные к рабочему процессу вашей команды, с помощью файлов .agent.md в репозитории или профиле пользователя.

Пользовательские агенты помогают создавать специализированные агенты Copilot для рабочего процесса вашей команды. Доступные возможности включают осведомленность о рабочей области, понимание кода, использование инструментов, выбранной модели и соединений MCP с внешними источниками знаний, такими как внутренняя документация, системы дизайна, API и базы данных.

Пользовательские агенты определяются файлами .agent.md в репозитории или профиле пользователя. Агенты, относящиеся к рабочей области или проекту, хранятся в .github/agents/ репозитория. Рассмотрим пример.

your-repo/
└── .github/
    └── agents/
        └── code-reviewer.agent.md

Агенты пользовательского уровня по умолчанию размещаются в %USERPROFILE%/.github/agents/. Это расположение можно изменить в Tools → Параметры → Copilot Chat → каталог пользовательских агентов.

Чтобы создать пользовательский агент, создайте .agent.md файл непосредственно в одном из расположений выше или нажмите + кнопку в средстве выбора агента и следуйте инструкциям.

Средство выбора агента, показывающее пользовательского агента-эксперта по C#

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

Несколько замечаний:

  • При отсутствии указания модели агент использует модель, выбранную в средстве выбора модели.
  • Имена инструментов зависят от GitHub Copilot платформ. Проверьте средства, доступные в Visual Studio, чтобы убедиться, что агент работает должным образом.
  • Репозиторий awesome-copilot содержит конфигурации агентов, внесённые сообществом, которые вы можете использовать в качестве начальных точек. Проверьте имена инструментов перед их использованием в Visual Studio.

📣 Посмотрите feature ticket, чтобы поделиться отзывами и продолжить разговор.

Настраиваемые сочетания клавиш Copilot📣

Настройте сочетания клавиш на клавиатуре для принятия встроенных предложений от Copilot.

Теперь можно настроить сочетания клавиш для принятия встроенных предложений Copilot. Доступна настройка клавиш для принятия полного предложения, следующего слова или следующей строки в стандартных параметрах клавиатуры.

Процедура установки предпочтительных сочетаний клавиш:

  1. Перейдите в раздел "Средства → параметры → среда → клавиатуры".
  2. Выполните поиск команды, которую вы хотите настроить:
    • Edit.AcceptSuggestion
    • Edit.AcceptNextWordInSuggestion
    • Edit.AcceptNextLineInSuggestion
  3. Удалите существующую привязку клавиши.
  4. Назначьте новое сочетание клавиш в области Inline Suggestion Active.

Настройки клавиатуры с сочетаниями клавиш Copilot

Например, на приведенном ниже изображении изменяется сочетание клавиш по умолчанию с Tab на Ctrl+Tab. Новое сочетание клавиш отображается на панели подсказок.

Панель подсказок редактора с обновленным сочетанием клавиш Copilot

📣 Посмотрите feature ticket, чтобы поделиться отзывами и продолжить разговор.

IntelliSense имеет приоритет над Copilot 📣

IntelliSense теперь имеет приоритет над завершениями Copilot, и вы видите только одно предложение за раз.

Мы получили ваш отзыв: одновременное отображение автозавершения IntelliSense и Copilot может отвлекать. Теперь редактор приоритизирует список IntelliSense и отображает только одно предложение за раз.

список IntelliSense, отображаемый при отключении автозавершения Copilot

Если IntelliSense активен, Visual Studio временно подавляет завершения Copilot, чтобы вы могли сосредоточиться на текущем выборе. После закрытия или подтверждения выбора IntelliSense, завершения Copilot возобновляются. Данный механизм активирован по умолчанию. Обновите вашу VS до последней версии и продолжайте писать код, как обычно. Сообщите нам о ваших отзывах!

📣 Посмотрите feature ticket, чтобы поделиться отзывами и продолжить разговор.

Новая панель истории чата📣

Просматривайте и выполняйте навигацию по сеансам чата Copilot с помощью новой панели истории чата.

Функционал истории чата перенесен из выпадающего списка в отдельную специализированную панель. Реализовано отображение заголовка чата, предварительного просмотра последнего сообщения и времени последнего обновления сеанса для быстрого поиска и повторного открытия предыдущих диалогов.

Панель журнала чата с заголовками чата, предварительным просмотром сообщений и временем обновления

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

📣 Посмотрите feature ticket, чтобы поделиться отзывами и продолжить разговор.

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

Авторасшифровка в текстовом визуализаторе

Легко декодировать текст с помощью Copilot.

Мы представляем функцию автоматического обнаружения и форматирования в визуализаторе текста. Это улучшение предназначено для упрощения рабочего процесса отладки, автоматически определяя формат кодирования или сжатия строки и применяя необходимые преобразования в одном щелчке мыши.

Gif, показывающий декодирование текста в визуализаторе текста

Просто нажмите кнопку автообнаружения и форматирования в правом верхнем углу визуализатора текста. Работает на базе Copilot, эта функция мгновенно определяет и преобразует сложные данные (например, GZip-сжатые Base64) в удобочитаемый текст, устраняя необходимость ручного декодирования или использования внешних инструментов.

Проблема агента для решения

Решение ошибок агентического типа помогает находить и устранять ошибки с помощью интерактивного руководства ИИ с доказательством на этапе выполнения.

Мы представляем новый рабочий процесс агента отладчика в Visual Studio, который проверяет ошибки в реальном поведении среды выполнения вместо того, чтобы полагаться на статический анализ предположений. Этот процесс включает в себя весь цикл работы агента, от понимания и воспроизведения проблемы до инструментирования приложения, выявления первопричины проблемы и проверки исправления путем внедрения решения в реальном времени.

Вы можете начать с проблемы в GitHub или Azure DevOps, или просто описать ошибку или поведение кода на естественном языке. Используя эти данные, агент отладчика сопоставляет проблему непосредственно с локальным источником и предлагает шаги для ее устранения. В отличие от статических подходов, в процессе отладки предусмотрена возможность взаимодействия с агентом, благодаря чему вы можете предоставить дополнительную информацию, обсудить свою теорию или доработать исправление в реальном времени.

Видео, показывающее проблему агентивности и её разрешение

Как работает агентный цикл:

  • Context Injection — укажите ссылку на проблему или опишите ошибку в режиме отладчика в Copilot Chat (вы можете переключать режимы с помощью раскрывающегося списка в левом нижнем углу чата). Агент связывает отчет с вашим локальным кодом.
  • Автономный дубликатор — агент анализирует описание ошибки, а при отсутствии шагов для ее воспроизведения создает минимальный сценарий, чтобы автоматически запустить проблему.
  • Гипотезы и инструментирование — генерирует гипотезы об отказах и снабжает ваше приложение точками трассировки и условными точками останова для фиксации состояния во время выполнения программы.
  • Проверка при выполнении — агент запускает сеанс отладки и анализирует данные телеметрии в реальном времени для выявления причины возникновения проблемы.
  • Целенаправленная коррекция — предлагает точное решение проблемы в конкретной точке сбоя вместо обширного рефакторинга.
  • Завершающая проверка человеком — вы еще раз запускаете сценарий и подтверждаете внедрение исправления в рабочей среде вместе с агентом.

C++

C++ средства редактирования кода для режима агента

Средства редактирования кода C++ для режима агента GitHub Copilot теперь доступны по умолчанию.

Мы рады поделиться тем, что средства редактирования кода C++ для режима GitHub Copilot агента теперь доступны по умолчанию. Эти средства помогают Copilot более эффективно перемещать базу кода C++ при рефакторинге или изменении кода.

Copilot может с включением этих средств:

  • Сопоставление иерархий наследования классов
  • Следуйте цепочкам вызовов функций

Чтобы приступить к работе, выполните приведенные действия.

  1. Откройте проект C++ и убедитесь, что IntelliSense настроен.
  2. Включите определенные средства с помощью значка Tools в Copilot Chat.

Список доступных средств C++ в параметрах Copilot Chat

После включения Copilot автоматически использует эти средства при ответе на вопросы или предложения изменения кода.

Copilot, использующий инструменты C++ для анализа и изменения кода в нескольких файлах

Для получения наилучших результатов используйте модели ИИ, поддерживающие вызовы инструментов. Узнайте больше о сравнении моделей ИИ в документации GitHub

Основные исправления ошибок От сообщества
VS 2026 зависает во время выгрузки проектов Запрос обратной связи
Copilot терминал иногда не запускает команды из очереди, пока вкладка терминала не будет выведена на передний план. Запрос обратной связи
ASan supression не работает
Улучшена производительность среды выполнения ASan в приложениях, которые в значительной степени используют COM, смешанные языковые привязки и API распределителя Win32

Версия 18.4.4

Выпущено 14 апреля 2026 г.

Устранены проблемы безопасности, указанные в рекомендациях CVE Описание
уязвимость .NET к отказу в обслуживании CVE-2026-26171 Уязвимость существует в классе EncryptedXml, где неконтролируемое потребление ресурсов может дать злоумышленнику возможность выполнять атаку типа "отказ в обслуживании".
Уязвимость спуфинга .NET CVE-2026-32178 Неправильная нейтрализация специальных элементов в .NET позволяет неавторизованному злоумышленнику выполнять спуфинг через сеть.
Уязвимость к повреждению памяти SQLite CVE-2025-6965 Существует уязвимость в версиях SQLite до 3.50.2, где количество статистических терминов может превышать количество доступных столбцов. Это может привести к повреждению памяти.
Уязвимость раскрытия информации в Visual Studio CVE-2026-32631 Уязвимость раскрытия информации существует в MinGit из-за утечки хэша NTLM на ненадежный сервер.

Версия 18.4.3

Выпущено 31 марта 2026 г.

Основные исправления ошибок От сообщества
Copilot чат завершается ошибкой с invalid_request_body: для схемы github_push_files требуется дополнительное значениеProperties=false Запрос обратной связи
Исправлена ошибка Visual Studio при загрузке проекта VS

Версия 18.4.2

Выпущено 24 марта 2026 г.

Основные исправления ошибок От сообщества
Исправлена страница поддержки прокси для Visual Studio 2026 Запрос обратной связи

Версия 18.4.1

Выпущено 17 марта 2026 г.

Основные исправления ошибок От сообщества
Vs многократно необходимо обновить учетные данные при входе в учетную запись GitHub с лицензией Copilot Запрос обратной связи
Переключатели командной строки Devenv /Run on /Runexit не работают. Запрос обратной связи
Исправлена проблема совместимости AddressSanitizer с Xbox Game OS Запрос обратной связи
Добавление поддержки Agent Skills для режима агента Copilot

Обновление за март 18.4.0

Выпущено 10 марта 2026 г.

Интегрированная среда разработки (IDE)

Улучшения редактора JSON

Редактор JSON теперь является частью редактора Core.

Улучшения в редакторе JSON

Редактор JSON устанавливается вместе с основным редактором

В предыдущих версиях для получения редактора JSON требовалось установить рабочую нагрузку "Веб-разработка". В этом выпуске редактор JSON уже является частью основного редактора, что позволяет использовать возможности редактирования JSON без установки рабочей нагрузки "Веб-разработка". Это изменение упрощает процесс установки для тех пользователей, которым необходимы функции редактирования JSON, но не нужен полный набор инструментов для веб-разработки.

Продуктивность

Обогащенные копирование/вырезание HTML

Копирование и вырезание фрагментов кода с расширенным форматированием.

Visual Studio теперь поддерживает формат буфера обмена HTML при вырезании или копировании кода из редактора. Вы можете вставить цветной код в веб-версии приложений Office, Azure DevOps рабочие элементы или другие элементы управления на основе HTML.

Code, скопированный из Visual Studio в PowerPoint с выделением синтаксиса и форматированием

Функция сохраняет подсветку синтаксиса и форматирование при вставке кода в HTML-приложения, упрощая демонстрацию и обмен фрагментами кода. Он включен по умолчанию. Чтобы настроить его, перейдите в раздел "Средства → параметры" → текстовый редактор → "Дополнительно ", где можно проверить или снять флажок "Копировать форматированный текст" при копировании или вырезать и задать максимальную длину.

GitHub Copilot

Создание собственных пользовательских агентов 📣

Определите настраиваемые агенты, адаптированные к рабочему процессу вашей команды, с помощью файлов agent.md.

Пользовательские агенты позволяют создавать специализированных агентов Copilot, адаптированных к рабочему процессу вашей команды. Они имеют полный доступ к осведомленности рабочей области, пониманию кода, средствам, предпочитаемой модели и подключениям MCP к внешним источникам знаний, таким как внутренняя документация, системы проектирования, API и базы данных.

Пользовательские агенты задаются как файлы типа .agent.md в репозитории. Например,

your-repo/
└── .github/
    └── agents/
        └── code-reviewer.agent.md

Пользовательские агенты в средстве выбора агента Visual Studio

Успешно созданные пользовательские агенты будут отображаться в средстве выбора агента в любое время.

Несколько замечаний:

  • Если модель не указана, агент использует все, что выбрано в средство выбора моделей.
  • Имена инструментов зависят от GitHub Copilot платформ. Проверьте средства, доступные в Visual Studio, чтобы убедиться, что агент работает должным образом.
  • Репозиторий awesome-copilot содержит конфигурации агентов, внесённые сообществом, которые вы можете использовать в качестве начальных точек. Проверьте имена инструментов перед их использованием в VS.

📣 Посмотрите feature ticket, чтобы поделиться отзывами и продолжить разговор.

Инструмент Find_symbol для режима агента

Новое средство Find_symbol для режима агента GitHub Copilot помогает получить доступ к сведениям о символах в базе кода.

Мы представляем новое средство find_symbol для режима агента GitHub Copilot, обеспечивающее навигацию по символам с учетом языковых особенностей непосредственно в агенте. Средство find_symbol позволяет:

  • Поиск всех ссылок на символы в проекте
  • Доступ к метаданным, таким как сведения о типах, объявлениях и области видимости

Инструмент Find symbol выбран в панели Copilot Chat

После включения инструментов Copilot автоматически использует их, как при ответах на вопросы, так и при предложении изменений кода.

Copilot, используя средство find_symbol, анализирует и изменяет код в нескольких файлах

Поддерживаемые языки включают C++, C#, Razor и TypeScript, а также любой другой язык, для которого установлено поддерживаемое расширение протокола LSP.

Для получения наилучших результатов напишите четкие запросы и используйте модели ИИ, поддерживающие вызовы инструментов. Узнайте больше о сравнении моделей ИИ в документации GitHub

Управление MCP корпоративного уровня

Легко защитить данные с помощью расширенных функций управления MCP.

Использование сервера MCP в Visual Studio теперь учитывает политики списка разрешений, заданные GitHub. Администраторы могут указать, какие серверы MCP разрешены в своих организациях.

При настройке списка разрешений можно подключиться только к утвержденным серверам MCP. Если вы пытаетесь подключиться к неавторизованному серверу, появится сообщение об ошибке, объясняющее, что сервер не разрешен.

Это помогает организациям контролировать, какие серверы MCP обрабатывают конфиденциальные данные и поддерживают соответствие политикам безопасности.

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

Рекомендации по умным часам

Copilot теперь предлагает выражения с учетом контекста в окне Watch.

Copilot теперь предлагает предложения с поддержкой контекста непосредственно в окнах "Watch". Просто поместите курсор в текстовое поле, и Copilot предлагает соответствующие выражения на основе текущего контекста отладки.

Видео, в котором Copilot предлагает выражения для наблюдения в окне

Это позволяет быстрее создавать отслеживаемые параметры, уменьшить количество догадок и упростить контроль наиболее важных значений во время выполнения, тем самым обеспечивая большую скорость и точность процесса отладки.

Тесты профиля с Copilot

Легко протестировать профиль с помощью Copilot.

Мы добавили новую команду Profile с помощью команды Copilot в контекстное меню Test Explorer, что упрощает профилирование определенного теста только щелчком мыши.

Video с тестом профилирования с помощью Copilot

При выборе агента профилирования он автоматически запускает выбранный тест и проводит анализ его производительности, в котором для получения полезной аналитики сочетаются данные об использовании ЦП и данные инструментирования.

По умолчанию команда использует Instrumentation профилирование и в настоящее время поддерживается в .NET. Если требуется более глубокий анализ, можно запустить выбранный тест непосредственно из окна чата Copilot и выбрать дополнительные средства профилирования.

Советы по производительности, основанные на профилировании в реальном времени

Советы по улучшению производительности при отладке с агентом профилировщика.

Оптимизация производительности теперь выполняется во время отладки, а не после нее. Советы относительно производительности при проведении отладки и агент профилировщика позволяют быстро проанализировать производительность в процессе выполнения кода, благодаря чему ценная аналитика предоставляется в нужное время.

Видео, демонстрирующее советы по повышению производительности в режиме отладки с метриками выполнения, встроенными по времени, и предложениями по оптимизации Copilot

По мере пошагового выполнения кода, Visual Studio показывает время выполнения и сигналы производительности в инлайне для каждого шага. При обнаружении медленной линии или метода , например вялого запроса LINQ, вспомогательного средства с большим количеством вычислений или любого шага, который занимает больше времени, чем ожидалось, просто щелкните Perf Tip и попросите Copilot предложения по оптимизации на месте.

В процессе отладки агент профилировщика автоматически собирает данные о времени выполнения: затраченное время, использование ЦП и особенности работы памяти. Copilot использует эти данные для точного определения горячих точек производительности и предлагает целевые исправления, делая оптимизацию частью вашего регулярного процесса отладки, вместо того, чтобы откладывать ее на потом.

.NET

Исправление уязвимостей с помощью Copilot

Устраняйте уязвимости в пакетах NuGet легко и точно с помощью Copilot.

Исправьте уязвимости пакета NuGet без усилий с помощью Copilot непосредственно из Обозреватель решений. Когда Copilot обнаруживает уязвимость, вы получите немедленное уведомление. Перейдите, и Copilot автоматически обновляет зависимости нужным образом.

Больше не нужно вручную анализировать уязвимости или искать подходящие версии пакетов. Copilot анализирует уязвимость и рекомендует целевые исправления, которые обеспечивают безопасность зависимостей, не нарушая рабочий процесс. Вы можете устранить проблемы, связанные с безопасностью, сразу же после их обнаружения, а не в какое-то другое время.

Это позволяет напрямую интегрировать инструменты обеспечения безопасности в ваши повседневные рабочие процессы. Меньше отвлекайтесь на анализ уязвимостей и уделите больше времени безопасной разработке.

Скриншот, показывающий ссылку уведомления 'Исправить с помощью Copilot' под пакетом NuGet с предупреждением об уязвимости в обозревателе решений

C++

MSVC Build Tools версии 14.51 Preview

Средства сборки Microsoft C++ версии 14.51 Preview теперь доступны для разработчиков C++.

Первая предварительная версия 14.51 средств сборки Microsoft C++ (MSVC) теперь доступна для разработчиков C++. Этот выпуск включает несколько новых функций и улучшений производительности среды выполнения. Мы рекомендуем ознакомиться с предварительными версиями MSVC, чтобы адаптироваться к критическим изменениям и проблемам с отчетами. Предварительные версии MSVC не получают исправления обслуживания, поэтому не следует использовать в рабочих средах.

Установка средств сборки MSVC версии 14.51 (предварительная версия)

Чтобы установить, выберите MSVC Build Tools for x64/x86 (preview) или MSVC Build Tools for ARM64/ARM64EC (preview) в зависимости от целевой архитектуры установщика Visual Studio. Эти компоненты находятся в рабочей нагрузке Разработка классических приложений на C++ и на вкладке Индивидуальные компоненты.

MSVC версии 14.51 в составе рабочей среды

В разделе "Отдельные компоненты" можно дополнительно установить библиотеки с защитой от Spectre, а также MFC, ATL или поддержку C++/CLI для MSVC версии 14.51 Preview.

MSVC версии 14.51 в отдельных компонентах

Интерфейс компилятора

MSVC продвигается в соответствии с C++23, и исправлено 133 ошибки из Сообщество разработчиков. Дополнительные сведения будут представлены в будущих записях блога и заметках о выпуске.

Внутренний код компилятора

Средства сборки MSVC версии 14.51 улучшили производительность среды выполнения по сравнению с версией 14.50 в наборе тестов SPEC CPU 2017 на следующую величину в различных сценариях сборки:

  • +6.5% целое число, Arm64, PGO
  • +1.1% числа с плавающей запятой, Arm64, PGO
  • +4.4% целое число, Arm64, VS Defaults
  • +1.4% с плавающей запятой, Arm64, параметры по умолчанию VS
  • +5.0% целое число, X64, PGO
  • +1.9% с плавающей запятой, X64, PGO
  • +4.3% Целое число, X64, VS Defaults
  • +1.8% Floating Point, X64, VS Настройки по умолчанию

Улучшения оптимизации:

  • Улучшен векторизатор SLP, чтобы рассмотреть более альтернативные варианты, например использование частичных векторов или использование размера вектора больше целевой ширины перед сопоставлением с целевой шириной вектора позже.
  • Улучшена обработка SROA непрямого доступа, крупных структур и преобразования типов.
  • Разрешено векторизатору цикла выполнять проверки среды выполнения.
  • Добавлена ликвидация логического или короткого замыкания при безопасном режиме.
  • Улучшено использование инструкций условного перемещения.
  • Улучшена оптимизация встроенных векторов AVX.
  • Более агрессивное встраивание по умолчанию для функций с небольшим количеством использования.
  • Улучшенная компиляторная оптимизация memset/memcpy для AVX.
  • Улучшено распространение копирования по границам блоков.
  • Добавлена развёртка внешних циклов и циклов с несколькими выходами.
Обновления стандартной библиотеки
  • Полный список изменений стандартной библиотеки для Инструментов сборки MSVC версии 14.51 можно найти в журнале изменений STL. Журнал изменений отслеживает все изменения, объединённые в microsoft/STL main, хотя недавно объединённые изменения могут ещё не отражаться в этой конкретной предварительной версии. Эти изменения по-прежнему будут отражены в будущих предварительных версиях или последнем выпуске 14.51.
AddressSanitizer
  • Улучшено качество нашей экспериментальной поддержки ASan ARM64 путем устранения нескольких проблем с созданием кода и средой выполнения.
Известные проблемы

Issue #1: Существует ошибка при настройке целевых объектов CMake с помощью генератора Visual Studio (MSBuild).

Решение:

  1. Откройте командную строку разработчика для инсайдеров VS (или командную строку разработчика для используемой вами версии Visual Studio) от имени администратора.
  2. Выполните следующие команды, которые создают новую папку и копируют файл из другого расположения в него:
pushd %VCINSTALLDIR%\Auxiliary\Build
mkdir 14.51
copy .\v145\Microsoft.VCToolsVersion.VC.14.51.props .\14.51\Microsoft.VCToolsVersion.14.51.props
copy .\v145\Microsoft.VCToolsVersion.VC.14.51.txt .\14.51\Microsoft.VCToolsVersion.14.51.txt
  1. Запустите сборку, чтобы убедиться, что она работает

Проблема 2. Сборки командной строки в PowerShell еще не настроены для предварительной версии. Исправление будет развернуто в будущей предварительной версии.

Основные исправления ошибок

Основные исправления ошибок От сообщества
Серьезная задержка IntelliSense после обновления до Visual Studio 2026 Билет обратной связи
VS2026 создает неправильный код FP Билет обратной связи
"Операция недопустима из-за текущего состояния объекта" при открытии файла с расширением "неизвестно" Билет обратной связи
NoWarn в PackageReference игнорируется. Начиная с Visual Studio 18.3.0. Билет обратной связи
В некоторых случаях Visual Studio 2026 не отображает значения переменных при наведении во время отладки. Запрос обратной связи
Исправление ошибки в оптимизаторе MSVC, ведущее к неправильной генерации ассемблерного кода
VisualCppTools. 4.50.35724 PdbCopy.Exe Arm64 Pdb Copy аварийное завершение Билет обратной связи
Обновите MinGit и Git для Windows для поддержки нового параметра allowNTLMAuth

Версия 18.3.3

Выпущено 10 марта 2026 г.

Основные исправления ошибок От сообщества
Исправление ошибки в оптимизаторе MSVC, ведущее к неправильной генерации ассемблерного кода
Устранены проблемы безопасности, указанные в рекомендациях CVE Descritpion
уязвимость .NET к отказу в обслуживании CVE-2026-26130 Уязвимость типа "отказ в обслуживании" существует в ASP.NET Core из-за неконтролируемого потребления ресурсов.
Уязвимость повышения привилегий в .NET CVE-2026-26131 Уязвимость повышения привилегий существует в .NET из-за неправильной авторизации.
Уязвимость раскрытия информации в Visual Studio CVE-2025-66413 Уязвимость раскрытия информации существует в MinGit из-за утечки хэша NTLM на ненадежный сервер.

Версия 18.3.2

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

Основные исправления ошибок От сообщества
Оптимизация компилятора и генерация кода, вызывающие нарушение доступа, появились с инструментарием версии 145. Запрос обратной связи
Исправление ошибки в оптимизаторе MSVC, ведущее к неправильной генерации ассемблерного кода

Версия 18.3.1

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

Основные исправления ошибок От сообщества
Исправление значения переменной при наведении курсора во время отладки Запрос обратной связи
Исправление для отображения отсутствующих связанных xaml-файлов в обозревателе решений Запрос обратной связи
Терминал GitHub Copilot перехватывает фокус Запрос обратной связи
Добавление поддержки создания и анализа с помощью агента производительности сборки для конкретных проектов
Исправлена ошибка в оптимизаторе MSVC, которая вызывает плохое создание кода сборки

Обновление 18.3.0 февраля

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

Интегрированная среда разработки (IDE)

Выполнить проверки отзыва сертификата

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

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

При обнаружении проблемы вы увидите диалоговое окно с подробными сведениями об ошибке сертификата. Вы можете отменить или продолжить подключение.

Диалоговое окно об ошибке сертификата с параметрами отмены и продолжения

Мы рекомендуем включить эту функцию, но ее можно отключить в параметрах → tools → Environment → Security → Certificates.

Диалоговое окно

Компактное размещение в Обозреватель решений

Интервал между элементами в Обозреватель решений теперь можно настроить в соответствии с вашими предпочтениями для улучшения удобочитаемости.

В 2026 году в Visual Studio был введен дополнительный интервал между элементами в Обозреватель решений для улучшения доступности. Это упрощает работу с мышью, снижая вероятность случайных кликов. Однако мы понимаем, что некоторые предпочитают более компактное отображение, чтобы видеть больше элементов сразу.

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

На изображении ниже показана разница между стандартным расположением (слева) и компактным (справа):

Интервалы в обозревателе решений

Перейдите к Tools → Options → Environment → Visual Experience и включите Использовать компактный интервал в Обозреватель решений, чтобы перейти в компактное представление. Изменения вступают в силу сразу после активации этого параметра.

Набор средств M365 Agent

2 новых шаблона добавлены в набор средств агентов M365.

Мы добавили новый шаблон агента Совместной работы Teams, чтобы помочь вам создавать агенты, которые повышают совместную работу в Microsoft Teams. Эти агенты используют Teams SDK и безопасные RSC-шаблоны для помощи в повседневной работе: в чатах Teams, каналах и на собраниях. Они могут резюмировать беседы, автоматизировать процессы, извлекать задачи, отвечать на вопросы и повышать продуктивность прямо в рабочем пространстве команды. Шаблон включает готовую основу и лучшие практики для поддержания организованности и продуктивности вашей команды.

шаблон Teams Collaborator Agent в Visual Studio

Также добавлен шаблон Travel Agent, демонстрирующий создание интеллектуального туристического ассистента. Агент отвечает на вопросы о путешествиях, помогает разобраться в корпоративных правилах поездок и находит рейсы и отели, соответствующие требованиям организации. Эти новые примеры доступны в разделе Просмотр примеров меню ATK.

Агент путешествий использует Azure OpenAI и API получения Microsoft 365 для доступа к корпоративным документам и политикам, хранящимся в SharePoint или OneDrive для бизнеса, предоставляя контекстные и соответствующие политике рекомендации по путешествиям непосредственно в Microsoft Teams.

шаблон турагента в приложении Visual Studio

Продуктивность

Быстрая прокрутка 📣

Теперь вы можете прокручиваться быстрее, удерживая клавишу ALT при прокрутке колесика мыши.

Прокрутка больших файлов теперь быстрее и проще. Удерживайте клавишу ALT при прокрутке колесика мыши, чтобы быстро перемещаться при просмотре кода или чтении документации.

Вы можете настроить скорость быстрой прокрутки в Средства → Параметры → Текстовый редактор → Дополнительно → Чувствительность сенсорной панели и колесика мыши.

Окно редактора с удерживаемой клавишей ALT, показывающее быструю прокрутку в большом файле

Эта функция помогает перейти к разделу, который вам нужен без большого количества прокрутки. Попробуйте!

Благодарим Aymen Hamadi за предложение этой функции и всех, кто проголосовал за нее!

📣 Посмотрите feature ticket, чтобы поделиться отзывами и продолжить разговор.

Hide-символы в файлах 📣

Вы теперь можете отключить отображение символов под файлами в Обозреватель решений.

Проводник решений (Обозреватель решений) отображает символы, такие как классы, методы и свойства, под файлами, чтобы помочь вам навигировать по коду. Некоторым пользователям это загромождало представление, так как каждый файл имеет значок развертывания (например, папки и проекты). Теперь эту функцию можно отключить для более чистого внешнего вида.

Вот как символы отображались раньше:

Проводник решений с символами под файлами

Чтобы скрыть символы под файлами, перейдите в раздел Инструменты → Параметры → Проекты и решения → Общие и снимите флажок Показывать символы в файлах обозревателя решений. Обозреватель решений затем будут отображаться только файлы без дополнительных символов:

Обозреватель решений с показом только файлов

Благодарим Escalante Adriano за предложение этой функции и всех, кто проголосовал за нее!

📣 Посмотрите feature ticket, чтобы поделиться отзывами и продолжить разговор.

Новые функции предварительного просмотра в Markdown 📣

Просмотр содержимого, доступного только для предварительного просмотра, и увеличение/уменьшение масштаба в редакторе Markdown Visual Studio.

Visual Studio редактор Markdown предоставляет больше контроля над предварительным просмотром.

  • Вы можете переключаться между несколькими режимами: Разделенный экран (отображается и редактор, и предварительный просмотр), Предварительный просмотр (открывается только предварительный просмотр) и Редактирование в Markdown (показывается только редактор). Режим "Предварительный просмотр" помогает сосредоточиться на отображаемом содержимом, что особенно удобно для больших изображений и сложных схем Mermaid.
  • При предварительном просмотре схемы Mermaid используйте элементы управления масштабом, расположенные в левом верхнем углу экрана. Эти функции упрощают просмотр больших схем и дополнительных сведений.

Элементы управления предпросмотром Markdown, показывающие разделенный вид, только просмотр и параметры масштабирования

Протестируйте новые элементы управления и поделитесь своими впечатлениями!

📣 Посмотрите feature ticket, чтобы поделиться отзывами и продолжить разговор.

Незначительное сжатие строк

Включите синтаксическое сжатие строк, чтобы более эффективно использовать вертикальное пространство экрана.

Сжатие строк Syntactic дает больше вертикального пространства в редакторе. Строки без букв или чисел сжимаются на 25%, что позволяет одновременно видеть больше кода без ущерба для удобочитаемости. Регулярные линии остаются одинаковой высотой. На правой стороне рисунка показано включенное сжатие. Обратите внимание, как можно увидеть больше строк на том же пространстве по сравнению с левой стороной.

Сравнение, показывающее сжатие синтаксической линии слева с более видимыми строками кода и обычным представлением справа

Включите эту функцию в Сервис → Параметры → Текстовый редактор → Дополнительно, отметив сжатие пустых строк и сжатие строк, не содержащих буквенно-цифровых символов. Эта популярная функция в Power Tools для производительности теперь встроена в Visual Studio.

Прокрутка средней кнопкой мыши 📣

Нажмите вниз на колесико прокрутки и переместите мышь, чтобы быстро прокручивать документ.

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

Курсор с четырьмя стрелками, указывающий на активную прокрутку средней кнопкой мыши, активен в редакторе кода

Эта функция отключена по умолчанию в версии 18.3 Insiders 2 и должна быть включена с помощью инструментов → параметров → текстовый редактор → расширенный → средний щелчок для прокрутки. Попробуйте поделиться своими отзывами с нами!

Спасибо всем, кто проголосовал за эту функцию!

📣 Посмотрите feature ticket, чтобы поделиться отзывами и продолжить разговор.

Уже левый отступ в редакторе 📣

Уменьшите пространство левого поля, вырезав пространство, занятое значком быстрых действий.

Левое поле в редакторе кода уменьшилось, благодаря чему у вас будет больше горизонтального пространства, в котором можно разместить код. Мы переместили значок "Быстрые действия" (в виде лампочки или отвертки) из этого поля в редактор, в котором он появляется в строке с кодом, если его можно исправить или выполнить рефакторинг.

Значок лампочки отображается вместе с кодом, а не в левом поле Слева: более узкое левое поле со значком быстрых действий, справа: предыдущее положение

Чтобы попробовать работу, перейдите к разделу "Сервис" → параметры → текстового редактора → "Дополнительно" и проверьте значок "Показать быстрые действия" в редакторе.

📣 Посмотрите feature ticket, чтобы поделиться отзывами и продолжить разговор.

GitHub Copilot

Управление MCP корпоративного уровня

Легко защитить данные с помощью расширенных функций управления MCP.

Использование сервера MCP в Visual Studio теперь учитывает политики списка разрешений, заданные GitHub. Администраторы могут указать, какие серверы MCP разрешены в своих организациях.

При настройке списка разрешений можно подключиться только к утвержденным серверам MCP. Если вы пытаетесь подключиться к неавторизованному серверу, появится сообщение об ошибке, объясняющее, что сервер не разрешен.

Это помогает организациям контролировать, какие серверы MCP обрабатывают конфиденциальные данные и поддерживают соответствие политикам безопасности.

Сервер NuGet MCP

Provides способ обновления пакетов с известными уязвимостями и может получать сведения о пакетах в режиме реального времени для GitHub Copilot.

MCP сервер NuGet встроен в систему, но требует однократной активации для использования. Дополнительные сведения см. в документации по MCP серверу NuGet.

Начало работы

Чтобы включить сервер NuGet MCP, выполните следующие действия в Visual Studio 2026:

  1. Откройте окно GitHub Copilot Chat и убедитесь, что вы вошли в систему.
  2. Щелкните значок инструментов на нижней панели инструментов, чтобы открыть меню "Инструменты".
  3. Найдите сервер MCP с именем Nuget и установите флажок, чтобы включить его.

Найдите сервер MCP с именем Nuget и установите флажок, чтобы включить его.

Устранение уязвимостей пакета

Сервер NuGet MCP помогает выявлять и устранять уязвимости пакетов в проекте. Чтобы использовать сервер MCP для устранения уязвимостей, введите следующий запрос в окне Copilot Chat GitHub:

Исправление уязвимостей пакета

Сервер MCP анализирует зависимости проекта и предлагает обновления пакетов с известными уязвимостями.

Обновление всех пакетов

Сервер NuGet MCP также может обновить пакеты до последних совместимых версий. Чтобы использовать сервер MCP для обновления всех пакетов, введите следующий запрос в окне Copilot Chat GitHub:

Обновите все мои пакеты до последних совместимых версий

Сервер MCP анализирует целевые платформы проекта и предлагает обновления последней версии пакетов, совместимых с вашим проектом.

Обновление пакета до определенной версии

Сервер NuGet MCP может обновить определенный пакет до указанной версии. Для этого введите следующий запрос в окне Copilot Chat GitHub:

Обновите пакет [PackageName] до версии [VersionNumber]

Support

Если у вас возникли проблемы с сервером NuGet MCP или есть другие отзывы, откройте проблему в репозитории NuGet GitHub. Укажите запрошенную информацию в шаблоне проблемы, чтобы лучше понять и решить проблему или предложение.

Предпросмотр markdown из Copilot Chat

Просматривайте любое содержимое Markdown, созданное в Copilot Chat, непосредственно в редакторе Markdown Visual Studio.

Теперь вы можете просмотреть любое содержимое Markdown, созданное Copilot Chat непосредственно в редакторе Markdown Visual Studio. Ранее эта функция была доступна только для схем русалок.

Кнопка

Когда Copilot Chat создает содержимое markdown, нажмите кнопку Preview в правом верхнем углу окна чата, чтобы просмотреть отрисованный предварительный просмотр. После этого можно изменить и сохранить содержимое markdown по мере необходимости. Это позволяет быстро визуализировать и работать с файлами markdown без ручного копирования и вставки.

Щелкните, чтобы принять завершение кода

Примите завершение кода до позиции курсора с помощью одного щелчка мыши.

Хотели ли вы когда-нибудь принять автодополнение одним щелчком мыши? Новая функция Принятие щелчком позволяет щелкнуть мышью на предложении автозаполнения и принять его в позиции курсора. При наведении курсора на автодополнение, фрагмент кода подсвечивается, демонстрируя, что он будет принят.

Щелкните, чтобы принять завершение

Эта функция дает вам больше контроля над тем, насколько автодополнения вы хотите принять, что упрощает интеграцию предложений в ваш код. Если вы предпочитаете использовать клавиатуру, вы можете нажать CTRL + +, чтобы принять по одному слову, или CTRL + СТРЕЛКА ВНИЗ+ по одной строке.

Попробуйте функцию принятия по щелчку и поделитесь своим мнением.

Цветные завершения кода

Теперь завершения кода цветируются с выделением синтаксиса для повышения удобочитаемости.

Завершение кода из GitHub Copilot или IntelliCode теперь окрашено с выделением синтаксиса, чтобы быстро проанализировать предлагаемый код. Раньше завершение отображалось одним цветом, из-за чего было сложнее различать переменные, функции и другие элементы кода. Чтобы попробовать цветовую настройку, можно перейти к разделу "Сервис" → параметры → текстового редактора → завершения кода и проверить использование цветного текста для завершения кода.

Цветные завершения кода, показывающие выделение синтаксиса с различными цветами переменных, функций и других элементов кода

Чтобы отличить предложения от реального кода, автодополнения отображаются с пониженной прозрачностью и курсивом. Чтобы настроить стили, перейдите в раздел "Средства → параметры → среда → шрифты и цвета" и измените элемент завершения кода .

Поделитесь своим мнением о новой подсветке!

Обновления памяти Copilot 📣

Сделайте Copilot адаптируемым под ваши нужды, обучив его вашим стандартам кодирования и лучшим практикам - создавая согласованность, которая сохраняется между сеансами!

Научите Copilot стандартам вашего программирования и лучшим практикам проекта при помощи памяти. После сохранения Copilot последовательно применяет ваши предпочтения во всех сеансах чата, что делает его действительно ориентированным на проект.

Уведомление об обнаружении предпочтений, показывающее параметры сохранения воспоминаний на уровне пользователя или репозитория

Как работают воспоминания Copilot

Памяти используют интеллектуальную технологию для обнаружения ваших предпочтений, когда вы общаетесь в чате. Когда вы исправляете поведение Copilot, укажите стандарт или попросите помнить что-то, появится запрос на подтверждение. Выберите сохранить настройки в личных инструкциях (%USERPROFILE%/copilot-instructions.md) или в инструкциях вашего репозитория (/.github/copilot-instructions.md).

Каждый раз, когда вы общаетесь, вы обучаете Copilot лучше реагировать и документируете лучшие практики для себя и вашей команды.

Благодарим Peter Matthews за предложение этой функции и всех, кто проголосовал за нее!

📣 Посмотрите feature ticket, чтобы поделиться отзывами и продолжить разговор.

Доступ к пользовательским подсказкам с помощью слэш-команд

Быстро используйте свои избранные пользовательские подсказки с помощью слэш-команд в Copilot Chat.

Теперь вы можете быстрее вызывать ваши любимые пользовательские запросы с помощью команд с косой чертой в Copilot Chat. Вместо того, чтобы вводить # и искать нужный вариант среди всех доступных упоминаний, введите /, и ваши пользовательские запросы появятся в верхней части списка IntelliSense. Запросы пользователя отмечены значком закладки, а у системных запросов по умолчанию нет значка, и они отображаются ниже.

Список IntelliSense, вызываемый командами с косой чертой

Мы также добавили две новых команды с косой чертой, благодаря которым вам будет проще создавать пользовательские инструкции и запросы:

  • /generateInstructions: генерирование для вашего проекта пользовательских инструкций на уровне репозитория. Не знаете, как написать файл пользовательских инструкций для своего репозитория? Эта команда предоставляет всё необходимое. Она автоматически генерирует файл copilot-instructions.md для вашего проекта, используя его контекст, например стиль написания кода и настройки.
  • /savePrompt: извлечение из текущего потока запроса, предназначенного для многократного использования, и его сохранение в файле с запросами. Используйте эту команду при вводе запроса, который хотите использовать многократно, чтобы в дальнейшем без труда обращаться к нему посредством команд /.

Попробуйте новые слэш-команды уже сегодня и поделитесь своими впечатлениями!

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

Подсказки данных в визуализаторе IEnumerable

Глубокая инспекция объектов непосредственно в визуализаторе IEnumerable.

Теперь в визуализаторе IEnumerable для проверки объектов при отладке можно использовать подсказки по данным. Наведите курсор на любую ячейку в сетке, чтобы увидеть весь объект, соответствующий этому значению, пользуясь таким же инструментом подсказок по данным, как в окне редактора и окне наблюдения.

При наведении указателя мыши на ячейку сетки отображается подсказка с полными свойствами объекта

Благодаря этому вам будет намного проще выполнять отладку коллекций со сложными или вложенными типами. Независимо от того, работаете ли вы с List<T> объектов домена или со словарем, включающим структурированные значения, достаточно один раз навести курсор, чтобы отобразить все свойства объекта.

Анализ стека вызовов

Анализ стека вызовов по одному щелчку, чтобы понять состояние среды выполнения приложения.

Мы вводим функцию "Анализ стека вызовов с помощью Copilot", которая поможет ответить на простой, но критически важный вопрос при отладке: что сейчас делает мой поток или приложение? Новая кнопка Analyze Call Stack в окне стека вызовов позволяет отправлять текущее состояние отладки в Copilot одним щелчком, открыв окно чата с помощью анализа состояния приложения. Без догадок.

Видео, демонстрирующее, как Copilot анализирует стек вызовов и предоставляет объяснения асинхронного состояния исполнения

Copilot понимает синхронные и асинхронные стеки вызовов и аннотирует соответствующие кадры. Независимо от того, ожидает ли ваше приложение асинхронную задачу или при асинхронном выполнении в нем произошел сбой, если вы щелкните по кадру с аннотацией, то отобразится четкое объяснение, почему выполнение приостановлено, чего ожидает поток и почему это произошло.

Благодаря этому из статического списка фреймов стек вызовов превращается в интерактивный инструмент для отладки. Вместо ручного восстановления асинхронных потоков Copilot помогает быстро понять поведение среды выполнения и вернуться к устранению реальной проблемы.

Агент профилировщика с поддержкой модульного теста

Агент профилировщика расширяется до рабочих процессов модульного тестирования.

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

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

Visual Studio Агент профилировщика, выполняющий модульные тесты для измерения производительности

Благодаря подходу, в основе которого лежит модульное тестирование, агент профилировщика также поддерживает сценарии C++, в которых тесты на соответствие эталонным показателям не всегда практичны, но модульные тесты уже имеются.

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

Рабочий стол

Агент WinForms Expert

Агент кода теперь включает специальные инструкции по разработке WinForms, созданные экспертами в команде.

Агент WinForms Expert — это комплексное руководство, которое помогает решить сложные проблемы разработки WinForms. Она охватывает несколько критически важных областей:

Код конструктора и обычный код: проекты WinForms имеют два разных контекста кода — созданный конструктором код сериализации и современную бизнес-логику. Агент знает, какие функции C# можно использовать в каждом контексте.

Современные шаблоны .NET: агент полностью обновлён для .NET 8-10, включая:

  • Шаблоны привязки данных MVVM с помощью комплекта инструментов сообщества.
  • Шаблоны Async/await с правильными перегрузками метода InvokeAsync.
  • Поддержка темного режима и готовность к высокому DPI.
  • Ссылочные типы, допускающие значение NULL (NRT), находятся в нужных местах.

Рекомендации по макету. Получите рекомендации по использованию TableLayoutPanel и FlowLayoutPanel для адаптивных макетов с поддержкой DPI, которые работают в разных размерах экрана и коэффициентах масштабирования.

Управление сериализацией CodeDOM: изучите критические правила сериализации свойств в конструкторе WinForms, чтобы избежать распространенных ошибок с [DefaultValue] атрибутами и ShouldSerialize*() методами.

Обработка исключений. Используйте правильные шаблоны для асинхронных обработчиков событий и обработки исключений на уровне приложения, чтобы предотвратить сбои процесса.

Инструкции агента подробно описаны, охватывая все соглашения об именовании элементов управления и требования к специальным возможностям. Это похоже на то, что старший архитектор WinForms просматривает каждую строку кода.

.NET

источники аудита NuGet

Visual Studio теперь поддерживает источники аудита для обнаружения уязвимостей пакетов с помощью NuGet Audit.

Необходимо провести аудит пакетов NuGet на наличие уязвимостей без использования nuget.org в качестве источника пакетов? Теперь можно настроить отдельные источники аудита.

Visual Studio теперь позволяет настроить источники аудита для аудита NuGet. Эти источники обнаруживают уязвимости пакетов независимо от источников пакетов. Дополнительные сведения см. в документации по источникам аудита.

Пользовательский интерфейс NuGet диспетчер пакетов

В пользовательском интерфейсе NuGet диспетчер пакетов отображаются уязвимости, обнаруженные из настроенных источников аудита.

В этом примере частный фид используется в качестве источника пакетов, но обнаружена известная уязвимость, так как настроен источник проверок.

Менеджер пакетов NuGet показывает уязвимость, обнаруженную в ходе аудита из настроенного источника

Настройка источников аудита

Чтобы настроить источники аудита, перейдите к Tools → Options → NuGet диспетчер пакетов → Sources.

Источники аудита предоставляют данные уязвимости в процессе восстановления, не выступая в качестве источников пакетов. Если вы не настраиваете источники аудита, NuGet Audit использует вместо этого источники пакетов.

Чтобы настроить источник аудита, выберите "Использовать отдельные источники для аудита уязвимостей". В этой таблице отображается таблица для управления источниками аудита, аналогичной таблице источников пакетов.

Параметры NuGet Sources с таблицей конфигурации источников аудита

Чтобы использовать nuget.org в качестве источника аудита, используйте стандартный URL-адрес индекса: https://api.nuget.org/v3/index.json

Источник аудита, настроенный с помощью URL-адреса nuget.org

Устаревание функции Web Live Preview

Предварительная версия веб-трансляции устарела и удалена.

Мы признали устаревшей и удалили веб-просмотр в реальном времени в Visual Studio 2026. Если необходимо изменить ASP.NET Web Forms, используйте встроенный конструктор веб-форм.

Дополнительные сведения см. в документации ASP.NET Web Forms Designer.

Улучшения для Горячая перезагрузка

Более быстрый и надёжный Razor Горячая перезагрузка с поддержкой автоматического перезапуска для неполных изменений.

Мы внесли несколько улучшений в работу функции Горячая перезагрузка в Visual Studio.

Улучшена производительность и надежность Горячая перезагрузка для файлов Razor.

Благодаря совместному размещению компилятора Razor внутри процесса Roslyn, редактирование .razor-файла во время Горячая перезагрузка стало гораздо быстрее и эффективнее (учитывая предыдущие отзывы о том, что Blazor Горячая перезагрузка мог занимать десятки секунд). Это изменение также повышает общую надежность при использовании Горячая перезагрузка.

Меньше заблокированных изменений (уменьшение «грубого редактирования»)

Мы расширили, какие изменения кода разрешены во время Горячая перезагрузка. Некоторые изменения, которые ранее запускали грубое редактирование (изменения, требующие перестраивания и перезапуска), теперь внедряются без проблем. Ниже приведены некоторые примеры изменений, которые больше не являются грубым изменением:

  • Переименование файла
  • Редактирование кода, содержащего лямбда-выражения со значениями параметров по умолчанию
  • Редактирование спецификаторов доступа к свойствам с помощью ключевого слова field
Автоматический перезапуск при «грубом редактировании»

Горячая перезагрузка теперь может автоматически перезапустить процесс приложения, если производится неподдерживаемое изменение ("грубое редактирование"), вместо завершения всего сеанса отладки.

Чтобы включить эту возможность, отредактируйте файл проекта и добавьте в него это объявление свойства.

<PropertyGroup>
    <HotReloadAutoRestart>true</HotReloadAutoRestart>
</PropertyGroup>

Это также можно указать в файле Directory.Build.props. Эта оптимизированная функция автоматического перезапуска применяется для тех типов проектов, в которых возможен быстрый перезапуск процесса (например, некоторые проекты Aspire или веб-проекты), что позволяет продолжить выполнение отладки с минимальными перерывами.

Это перезапуск, основанный на процессе. Если выполняется отладка 4 проектов, то будут перестроены и повторно запущены только проекты с внесенными изменениями, а также все связанные с ними проекты.

Улучшения редактора Razor

Более быстрый и интеллектуальный редактор Razor в Visual Studio, ко-хостинг повышает скорость и надежность, а также многое другое.

Список серьезных изменений, реализованных в редакторе Razor, приведен ниже.

Производительность & надежность (совместное размещение)

Теперь компилятор Razor и инструменты работают совместно на сервере Roslyn LSP, что значительно ускоряет процесс обновления файлов Razor (например, изменения Горячая перезагрузка применяются гораздо быстрее) и повышает надежность во время редактирования.

Упрощение действия кода тега (вклад сообщества)

Добавлено новое исправление кода, которое позволяет преобразовать пустой тег компонента в самозакрывающийся тег при отсутствии контента или обязательных дочерних элементов (предоставлено Питером Юхасом). Например, <Component Attribute="Value"> </Component> можно упростить до <Component Attribute="Value" />.

Извлечение блока стилей в файл .razor.css

Теперь вы можете использовать действие кода, чтобы перенести встроенный раздел <style> из компонента Razor в отдельный файл .razor.css. Это упрощает изоляцию специфичных для компонента стилей Изоляция CSS платформы Blazor путем автоматического создания или обновления соответствующего файла .razor.css для компонента.

@bind:event Intellisense

Повышена эффективность функции Razor IntelliSense для предоставления подсказок по завершению для значений @bind:<event> (предоставлено Питером Юхасом). В процессе использования двусторонней привязки данных с пользовательскими событиями (например, @bind="Value" @bind:event="oninput" в Blazor) редактор теперь автоматически дополняет действительные имена событий, такие как oninput или onchange.

Усовершенствования форматирования

Реализованный в редакторе Razor новый механизм форматирования был значительно улучшен и расширен. Редактор Razor теперь лучше учитывает параметры стилей форматирования для C# (например, интервалы и отступы из конфигурации Visual Studio) внутри файлов Razor и разрешает различные причуды форматирования, которые существовали в предыдущих версиях (особенно вокруг смешанного содержимого HTML/C#).

Усовершенствования подсказок при отладке

Улучшены всплывающие подсказки отладчика в файлах Razor. Visual Studio теперь более надежно отображает значения переменных и предварительные версии объектов при наведении указателя мыши на переменные или компоненты в файле Razor во время сеанса отладки, что упрощает проверку данных во время выполнения.

Переход к определению для Тег-хелперов

Используя новые возможности совместной работы, теперь можно перейти к определениям помощников тегов ASP.NET Core MVC и их атрибутов прямо из файлов Razor. Нажав на клавишу F12 (или Ctrl+Click) на вспомогательной функции тега (например, <input asp-for=" "> или любом использовании вспомогательной функции тега MVC), вы перейдете к определению его исходного кода. Эта давно ожидаемая функция значительно упрощает понимание и изучение работы тег-хелперов в проектах.

Общие исправления для IntelliSense

Устранены несколько проблем, возникавшие при использовании IntelliSense в редакторе Razor. Фрагменты HTML (например, ввод div + Tab для расширения блока <div>) теперь стабильно отображаются в файлах Razor (ранее они в некоторых случаях не отображались). Автозавершение для атрибутов и параметров компонентов с дефисами (например, атрибутов data-* или параметров компонентов Blazor с дефисами) стало более надежным, поэтому в таких случаях предложения и дополнения работают так, как и ожидалось.

Оптимизация компилятора Razor

Значительно улучшена производительность компилятора и оптимизировано использование памяти для проектов Razor и Blazor. Решения с большим количеством компонентов Razor должны компилироваться быстрее и потреблять меньше памяти. Эти улучшения ускоряют редактирование и создание страниц Razor и являются ответом на предыдущие замечания, которые касались чрезмерного потребления памяти и невысокой скорости инкрементного компилирования в крупных приложениях Blazor.

Устаревший редактор Razor для ASP.NET Core

Устаревший редактор Razor для ASP.NET Core полностью заменен современным редактором Razor, работающим в режиме совместного размещения. Устаревший редактор больше недоступен.

Параметр в разделе "Инструменты" > "Параметры" для включения устаревшего редактора Razor больше не используется и будет удален в одной из будущих версий Visual Studio.

Умная генерация тестов .NET

Создавайте и усовершенствуйте модульные тесты быстрее с помощью интеллектуального создания тестов GitHub Copilot.

Visual Studio теперь включает более интеллектуальное создание тестов с GitHub Copilot. Вы можете быстро создавать и настраивать тесты, чтобы увеличивать охват и уровень доверия к вашему коду. Этот процесс целенаправленного тестирования работает с C# и такими популярными платформами, как xUnit, NUnit и MSTest.

GitHub Copilot Chat интерфейс, создающий модульные тесты с помощью агента тестирования

Независимо от того, запускаете ли вы новый проект или улучшаете существующий, тестирование с GitHub Copilot помогает быстрее писать тесты и упрощает их интеграцию в ваш рабочий процесс. Просто введите @Test в Copilot Chat GitHub, опишите, что необходимо проверить, и Copilot создает тестовый код.

C++

Модернизация Приложения для C++

Модернизация приложения GitHub Copilot для C++ теперь доступна в публичной предварительной версии.

Мы рады сообщить, что приложение GitHub Copilot для модернизации C++ теперь доступно в Общедоступном Предварительном Просмотре.

Модернизация приложения GitHub Copilot для C++ обновляет ваши проекты C++ для использования последних версий MSVC и устраняет проблемы, связанные с обновлением.

Нашу документацию user можно найти в Microsoft Learn.

Начало работы
  1. Установите Visual Studio 2026 версии 18.3 или более поздней версии с выбранной рабочей нагрузкой C++.
  2. Откройте проект MSBuild (.sln) или CMake, использующий MSVC для создания Windows.
  3. Попросите @Modernize в окне Copilot Chat GitHub обновить ваш проект для использования MSVC версии 14.50. Запустите агент Modernize через контекстное меню, щелкнув правой кнопкой мыши по решению в Обозревателе решений, или выберите Project → Перенастроить решение в верхнем меню.

Copilot обновляет проекты и код, чтобы использовать последнюю версию MSVC и создает подробный отчет

Модернизация Приложения

Модернизация приложения GitHub Copilot для C++ теперь доступна в закрытом предварительном просмотре.

Мы рады сообщить, что модернизация приложения GitHub Copilot для C++ теперь находится в приватной предварительной версии. Модернизация GitHub приложение Copilot для C++ помогает перенести проекты C++ в последнюю версию средств сборки Microsoft C++ (MSVC).

окно GitHub Copilot Chat с планом, созданным для устранения предупреждений и ошибок после обновления до последней версии MSVC

Хотите попробовать? Зарегистрируйтесь в закрытой предварительной версии на aka.ms/cppagents.

Код для режима редактирования агента

Инструменты редактирования кода C++ для режима агента GitHub Copilot теперь доступны в предварительном частном просмотре.

Мы с радостью сообщаем, что инструменты редактирования кода C++ для Режима Агента GitHub Copilot теперь находятся в общедоступной предварительной версии. Эти средства помогают Copilot более эффективно перемещать базу кода C++, поэтому при рефакторинге или изменении кода вы получаете лучшие предложения. Теперь Copilot может:

  • Поиск всех ссылок на символы в проекте
  • Доступ к метаданным, таким как сведения о типах, объявлениях и области видимости
  • Сопоставление иерархий наследования классов
  • Следуйте цепочкам вызовов функций

Чтобы приступить к работе, выполните приведенные действия.

  1. Убедитесь, что режим агента GitHub Copilot включен в интегрированной среде разработки.
  2. Откройте проект C++ .
  3. Перейдите к Tools → Options → GitHub → Copilot и включите средства Enable C++ для использования Copilot.
  4. Перезапустите интегрированную среду разработки или решение.
  5. Включите определенные средства с помощью значка Tools в Copilot Chat.

Список доступных средств C++ в параметрах Copilot Chat

Примечание. Имена инструментов и пользовательский интерфейс могут изменяться во время общедоступной предварительной версии.

После включения инструментов Copilot автоматически использует их при ответах на вопросы или при предложении изменений в коде.

Copilot, использующий инструменты C++ для анализа и изменения кода в нескольких файлах

Для получения наилучших результатов напишите четкие запросы и используйте модели ИИ, поддерживающие вызовы инструментов. Узнайте больше о сравнении моделей ИИ в документации GitHub

Производительность сборки для Windows

GitHub Copilot производительность сборки для Windows теперь доступна в общедоступной предварительной версии.

Мы рады сообщить, что производительность GitHub Copilot для Windows теперь доступна в публичной предварительной версии.

GitHub Copilot производительность сборки для Windows

GitHub Copilot производительность сборки для Windows использует Build Insights для выявления и устранения проблем с производительностью сборки в проектах C++ с помощью MSVC. Этот агент анализирует процесс сборки, подсказывает, что можно оптимизировать, и вносит нужные изменения, тем самым ускоряя данный процесс:

  1. Ускорьте синтаксический анализ заголовков за счет создания предварительно скомпилированных заголовков и оптимизации путей включения (например, удаления неиспользуемых включений).
  2. Рефакторинг функций для ускорения синтаксического анализа функций или упразднения потребности в нем.
  3. Модернизация кода C++, чтобы использовать новые функции языка, ускоряющие компиляцию.
  4. Оптимизация параметров сборки для параллельного создания нескольких сборок и использования оптимальных параметров компоновщика.
Начало работы
  1. Убедитесь, что режим агента GitHub Copilot включен в интегрированной среде разработки.
  2. Откройте проект C++ .
  3. Попросите @BuildPerfCpp в окне GitHub Copilot Chat для оптимизации времени сборки.

Примечание. Build Insights должна быть запущена для сбора данных о производительности сборки. Ей также необходимо получить разрешения, необходимые для того, чтобы собирать данные о трассировке ETL. Один раз примите запрос UAC, чтобы разрешить технологии Build Insights собирать из MSVC данные о событиях ETW.

Попросите @BuildPerfCpp в чате GitHub Copilot, чтобы оптимизировать время сборки.

Extensibility

Экспериментальный экземпляр перемещен

Добавлены команды "Запуск экспериментального экземпляра" и "Сброс экспериментального экземпляра" в меню "Расширения".

Команды запуска и сброса экспериментального экземпляра теперь находятся в меню "Расширения" → "Разработка расширений". Вам больше не нужно использовать сочетания клавиш меню "Пуск" Windows для запуска или сброса экспериментального экземпляра Visual Studio.

Параметры меню экспериментального экземпляра в Visual Studio

Эти команды проще найти и они помогают вам избежать случайного запуска экземпляров с корневыми суффиксами, предназначенных только для разработки расширений Visual Studio.

При желании вы можете по-прежнему использовать старые ярлыки по ссылке [installdir\vssdk].

Основные исправления ошибок

Основные исправления ошибок От сообщества
Обновлен установщик Visual Studio, чтобы включить последний выпуск пакета SDK для Windows версии 10.0.26100 (10.0.26100.7705). Запрос обратной связи
Столбцы таблиц в репозитории Git больше не изменяются Запрос обратной связи
Элементы TFVC в папках проекта не находятся под управлением версий. Запрос обратной связи

Версия 18.2.2

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

Основные исправления ошибок От сообщества
Исправлена ошибка в оптимизаторе MSVC, вызвавшей плохое создание кода сборки.
Устранены проблемы безопасности, указанные в рекомендациях CVE Descritpion
Уязвимость удаленного выполнения кода в Github Copilot и Visual Studio CVE-2026-21256 Это обновление безопасности устраняет уязвимость, вызванную ненадлежащей нейтрализацией специальных элементов, используемых в команде ('внедрение команд') в GitHub Copilot и Visual Studio, что позволяет несанкционированному злоумышленнику выполнять код по сети.
Уязвимость обхода компонентов безопасности Github Copilot и Visual Studio CVE-2026-21257 Это обновление системы безопасности устраняет уязвимость, где ненадлежащая нейтрализация специальных элементов, используемых в команде ('инъекция команд') в GitHub Copilot и Visual Studio, позволяет авторизованному злоумышленнику повысить уровень привилегий через сеть.
Уязвимость обхода функции безопасности .NET CVE-2026-21218 Это обновление системы безопасности устраняет уязвимость, при которой неправильная обработка отсутствующего специального элемента в .NET и Visual Studio позволяет авторизованному злоумышленнику выполнять подмену по сети.

Версия 18.2.1

Выпущено 20 января 2026 г.

Основные исправления ошибок От сообщества
Отсутствует компонент Microsoft.VCRedistVersion.v143.default.props в VS2026. Запрос обратной связи
Неустранимая ошибка C1001: внутренняя ошибка компилятора Запрос обратной связи

Обновление за январь 18.2.0

Выпущено 13 января 2026 г.

GitHub Copilot

Сервер NuGet MCP

Provides способ обновления пакетов с известными уязвимостями и может получать сведения о пакетах в режиме реального времени для GitHub Copilot.

MCP сервер NuGet встроен в систему, но требует однократной активации для использования. Дополнительные сведения см. в документации по MCP серверу NuGet.

Начало работы

Чтобы включить сервер NuGet MCP, выполните следующие действия в Visual Studio 2026:

  1. Откройте окно GitHub Copilot Chat и убедитесь, что вы вошли в систему.

  2. Щелкните значок инструментов на нижней панели инструментов, чтобы открыть меню "Инструменты".

  1. Найдите сервер MCP с именем Nuget и установите флажок, чтобы включить его.

Найдите сервер MCP с именем Nuget и установите флажок, чтобы включить его.

Устранение уязвимостей пакета

Сервер NuGet MCP помогает выявлять и устранять уязвимости пакетов в проекте. Чтобы использовать сервер MCP для устранения уязвимостей, введите следующий запрос в окне Copilot Chat GitHub:

Исправление уязвимостей пакета

Сервер MCP анализирует зависимости проекта и предлагает обновления пакетов с известными уязвимостями.

Обновление всех пакетов

Сервер NuGet MCP также может обновить пакеты до последних совместимых версий. Чтобы использовать сервер MCP для обновления всех пакетов, введите следующий запрос в окне Copilot Chat GitHub:

Обновите все мои пакеты до последних совместимых версий

Сервер MCP анализирует целевые платформы проекта и предлагает обновления последней версии пакетов, совместимых с вашим проектом.

Обновление пакета до определенной версии

Сервер NuGet MCP может обновить определенный пакет до указанной версии. Для этого введите следующий запрос в окне Copilot Chat GitHub:

Обновите пакет [PackageName] до версии [VersionNumber]

Support

Если у вас возникли проблемы с сервером NuGet MCP или есть другие отзывы, откройте проблему в репозитории NuGet GitHub. Укажите запрошенную информацию в шаблоне проблемы, чтобы лучше понять и решить проблему или предложение.

.NET

Модернизация приложения GitHub Copilot

Динамический трехэтапный рабочий процесс для обновлений .NET.

Мы представили трехэтапный подход, который поможет вам оценить, спланировать и выполнить обновление .NET с более подробными сведениями и видимостью. В файле Assessment перечислены устаревшие пакеты NuGet, целевые версии, количество проектов, а также изложена информация о сложности обновления и анализе API.

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

Все три файла полностью динамические, редактируются и синхронизируются на всех этапах данного процесса, благодаря чему модернизация выполняется более прозрачно и совместно от начала до конца.

C++

Версии MSVC начиная с Visual Studio 2022

MSVC Build Tools версии 14.30-v14.43 теперь доступны в Visual Studio 2026.

Чтобы упростить перенос существующих проектов C++ в Visual Studio 2026, теперь мы включаем Microsoft средства сборки C++ (MSVC) версии 14.30-14.43 в установщике Visual Studio 2026 на вкладке Individual components. Эти версии первоначально поставляются в Visual Studio 2022 года.

В результате этого изменения пользователи Visual Studio 2022 (версия 17.0-v17.14) могут продолжать использовать существующую версию компилятора при обновлении до Visual Studio 2026. Просто установите нужную версию и загрузите проект в последнюю версию интегрированной среды разработки, чтобы приступить к работе.

Поддержка новых версий MSVC также будет добавлена в помощник по настройке Visual Studio в будущем обновлении.

Основные исправления ошибок

Основные исправления ошибок От сообщества
В публикации веб-сайтов отсутствует опция FTP. Запрос обратной связи
Окно форматирования документа для печати не закрывается (VS2026) Запрос обратной связи
Исправлена проблема, из-за которой некоторые тернарные выражения с функциями преобразования к ссылочному типу считаются rvalues вместо lvalues. Запрос обратной связи
Отладчик и Visual Studio 18.1.1 завершаются аварийно Запрос обратной связи

Версия 18.1.1

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

Основные исправления ошибок От сообщества
Внутренняя ошибка компилятора в msvc 14.50.35717 Запрос обратной связи
VS2026 (18.0.0) отсутствует возможность установки средств LTSC C++ Запрос обратной связи
После обновления расширения VS2026 не работают Запрос обратной связи
Исправлена эта проблема, из-за которой пользователи ReSharper испытывают более длительное время запуска в Visual Studio 2026, чем в Visual Studio 2022. Запрос обратной связи
В окнах инструментов нет пункта "Закрыть" в контекстном меню. Запрос обратной связи
Наблюдение за недетерминированными выходными данными при создании UCRT для сборок CHPE Запрос обратной связи
Поиск нарушается в окне реестров MCP Запрос обратной связи
Исправлена проблема, из-за которой ARM64 Enclave VCRuntime не удавалось связать правильно.
Обновлен установщик Visual Studio, чтобы включить последний выпуск обслуживания пакета SDK 10.0.26100 Windows (10.0.26100.7175).

Обновление за декабрь 18.1.0

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

Интегрированная среда разработки (IDE)

Управление проверкой подлинности MCP

Теперь вы можете управлять учетными данными аутентификации для серверов MCP в единой среде в Visual Studio.

Теперь вы можете управлять учетными данными проверки подлинности для серверов MCP в одном месте в Visual Studio, включая учетные данные из хранилища ключей Visual Studio, такие как учетные записи Microsoft и GitHub. Доступ к этой возможности осуществляется в новом интерфейсе управления серверами MCP.

Окно управления сервером MCP с параметрами проверки подлинности

Инструкции по серверу MCP

Теперь вы можете просматривать файлы инструкций, которые могут поставляться с серверами MCP, непосредственно в Visual Studio.

Инструкции сервера MCP — это быстрый системный ответ, который сервер отправляет на хост, показывая вам, как использовать инструменты данного сервера. Теперь эти файлы инструкций можно просмотреть непосредственно в Visual Studio. Просто откройте новый интерфейс работы с управлением серверами MCP, чтобы ознакомиться с ними.

Окно инструкций сервера MCP в Visual Studio

Запросы MCP и выборка

Поддержка запросов MCP и новый пользовательский интерфейс для проведения опросов и выборки в чате.

MCP в Visual Studio теперь поддерживает запросы. Протокол контекста модели (Model Context Protocol, MCP) позволяет серверам запрашивать у вас дополнительные сведения через клиент во время взаимодействия. Этот поток помогает управлять взаимодействием с пользователем и общим доступом к данным, пока серверы собирают требуемые сведения.

Теперь вы можете реагировать на запросы выборки и элиситации MCP прямо в окне чата — это упрощает и облегчает работу.

Окно чата с запросом выявления MCP

Окно чата с параметрами ответа на выборку MCP

Управление серверами MCP

Более простой, более унифицированный UX для управления серверами MCP в Visual Studio.

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

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

Для начала работы щелкните "Настроить" во всплывающем элементе для любого из серверов в окне выбора инструментов.

Пользовательский интерфейс управления сервером MCP, отображающий статус сервера и аутентификацию пользователей

GitHub Copilot

Предварительная версия GitHub Cloud-агента

Делегируйте задачи облачному агенту, а Copilot пусть обрабатывает рутинную работу, пока вы сосредоточены.

Теперь GitHub Cloud Agent доступен в предварительной версии. Вы можете выгрузить повторяющиеся или трудоемкие задачи, такие как очистка пользовательского интерфейса, рефакторинг, обновление документов и многофайловые изменения, в облачный агент и просмотреть изменения позже.

Включение облачного агента

Чтобы включить облачный агент, выполните следующие действия.

  1. Щелкните раскрывающийся список значков Copilot.

  2. Выберите Настройки и параметры → Кодирующий агент (Предварительный просмотр).

  1. Перезапустите Visual Studio.

Note: Агент облака требует подключения решения к репозиторию GitHub.

Принцип работы

После включения можно делегировать задачи непосредственно из Visual Studio. Облачный агент подготавливает изменения для вашего рассмотрения, поэтому вы можете сосредоточиться на создании и отладке ядра проекта вместо утомительной обработки изменений.

Мы активно совершенствуем этот интерфейс на основе ваших отзывов. Скоро в Visual Studio появятся прямые ссылки на pull request, что позволит проще проверять изменения, внесенные агентом, не нарушая ваш рабочий процесс.

Это важно

Активируйте GitHub Copilot бесплатно и разблокируйте эту и другие функции ИИ. Никаких пробных периодов. Не нужна кредитная карта. Только ваша учетная запись GitHub.

Активируйте GitHub Copilot бесплатно прямо сейчас.


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

Умное устранение неполадок точек останова

Copilot теперь автоматически исправляет несвязанные точки останова, чтобы ускорить отладку.

Поддержка Copilot для свободных точек останова была доступна в течение некоторого времени, используя возможность выбрать Спросить Copilot в всплывающей подсказке, но в Dev18 она получает значительное обновление. Ранее Copilot считывает сообщение об ошибке и предлагает следующие действия.

Скриншот, показывающий кнопку Copilot для несвязанной точки останова на полях редактора

Теперь он выполняет более глубокую автоматическую проверку файла, проверку загруженных модулей и символов, определение правильного модуля и загрузку нужных символов.

Скриншот, на котором представлен ответ Copilot в чате Copilot для устранения неполадок при нажатии на кнопку

Это улучшение также расширяет охват за рамки проблем с символами. Copilot теперь помогает устранить проблемы, вызванные неправильной подсистемой отладки, точками останова, отключенными JMC или управляемыми оптимизациями, устаревшими двоичными файлами и т. д. Большинство проблем с непривязанными точками останова теперь можно исправить с помощью одного щелчка, что делает весь процесс работы более быстрым и надежным.

Debugger Copilot использует окно Output

Помощь Debugger Copilot использует контекст окна вывода для интеллектуальной отладки.

В Dev 18 помощь Copilot в отладчике была обновлена, чтобы использовать данные о выполнении программы из окна вывода во время отладки. При анализе исключения Copilot запрашивает разрешение на доступ к контексту окна вывода по мере необходимости.

В примере ниже помощник по работе с исключениями использует контекст окна вывода для обеспечения более точных и полезных ответов.

Видео, показывающее вспомогательный элемент исключения, использует контекст окна вывода

Этот контекст теперь доступен в режиме отладки, включив более широкие аналитические сведения для вспомогательного средства исключения, анализа переменных, проверки кода и других сценариев отладки. Объединяя аналитические сведения о коде и среде выполнения, это обновление повышает качество ответов вспомогательных исключений, помогает быстрее определить первопричины, рекомендует точные исправления и выделяет соответствующий код. Результатом является более надежная, эффективная и контекстная отладка в нескольких рабочих процессах отладки.

.NET счетчики для агента профилировщика

Profiler Agent предоставляет более глубокую аналитику ASP.NET благодаря поддержке новых счетчиков .NET.

Агент профилировщика Copilot теперь использует счетчики .NET для сценариев ASP.NET, что дает более подробную информацию о производительности приложения. Наряду с анализом ЦП и памяти теперь вы получаете:

  • Проект обнаружения черт для более умной и контекстно-зависимой диагностики

  • Анализ, управляемый счетчиками, позволяет быстрее устранять проблемы с производительностью ASP.NET

  • Расширенная сквозная аналитика для определения узких мест с большей точностью

Пример результатов с помощью средства счетчиков:

Profiler Agent, отображающий метрики счетчиков .NET, включая частоту запросов, неудачные запросы и использование памяти для приложения ASP.NET

Это обновление делает агент профилировщика более мощным для приложений ASP.NET, помогая выявлять проблемы рано, понимать первопричины и принимать меры уверенно.

Анализ исключений в контексте репозитория GitHub

Exception Analysis теперь использует контекст репозитория GitHub для предоставления интеллектуальной аналитики отладки с учетом контекста.

Мы усовершенствовали помощник исключений с контекстом репозитория, что предоставляет более богатые сведения для более быстрой и точной отладки. Средство помощи при исключениях теперь осуществляет перекрестные ссылки на ваш открытый репозиторий, включая прошлые ошибки, проблемы, pull requests и исторические исправления, чтобы предоставить рекомендации, непосредственно относящиеся к вашей базе исходного кода.

Эта функция поддерживает как GitHub, так и репозитории Azure DevOps.

Видео, на котором помощник по исключениям анализирует исключение, используя контекст из проблем GitHub, пул-реквестов и истории коммитов, для предоставления соответствующих предложений по отладке

Теперь вы получите интерфейс отладки с высокой точностью с учетом контекста, адаптированный к репозиторию.

Рабочий стол

Агент WinForms Expert

Агент кода теперь включает специальные инструкции по разработке WinForms, созданные экспертами в команде.

Агент WinForms Expert — это комплексное руководство, которое помогает решить сложные проблемы разработки WinForms. Она охватывает несколько критически важных областей:

Код конструктора и обычный код: проекты WinForms имеют два разных контекста кода — созданный конструктором код сериализации и современную бизнес-логику. Агент знает, какие функции C# можно использовать в каждом контексте.

Современные шаблоны .NET: агент полностью обновлён для .NET 8-10, включая:

  • Шаблоны привязки данных MVVM с помощью комплекта инструментов сообщества.

  • Шаблоны Async/await с правильными перегрузками метода InvokeAsync.

  • Поддержка темного режима и готовность к высокому DPI.
  • Ссылочные типы, допускающие значение NULL (NRT), находятся в нужных местах.

Рекомендации по макету. Получите рекомендации по использованию TableLayoutPanel и FlowLayoutPanel для адаптивных макетов с поддержкой DPI, которые работают в разных размерах экрана и коэффициентах масштабирования.

Управление сериализацией CodeDOM: изучите критические правила сериализации свойств в конструкторе WinForms, чтобы избежать распространенных ошибок с [DefaultValue] атрибутами и ShouldSerialize*() методами.

Обработка исключений. Используйте правильные шаблоны для асинхронных обработчиков событий и обработки исключений на уровне приложения, чтобы предотвратить сбои процесса.

Инструкции агента подробно описаны, охватывая все соглашения об именовании элементов управления и требования к специальным возможностям. Это похоже на то, что старший архитектор WinForms просматривает каждую строку кода.

Основные исправления ошибок

Основные исправления ошибок От сообщества
Обозреватель решений больше не отображает узел решения Запрос обратной связи
Исправлена проблема, блокирующая установку расширения в пользовательском действии MSI. Запрос обратной связи
Комплект CompletionsPackage не всегда удавалось загрузить, при этом пользователю показывалось диалоговое окно с ошибкой. Запрос обратной связи
Исправлена генерация Ad Hoc Android APK с помощью диспетчера архивов. Запрос обратной связи
Сообщение о фиксации, сгенерированное ИИ, приводит к сбою VS при изменении макета окна Запрос обратной связи
Неустранимая ошибка C1001: внутренняя ошибка компилятора Запрос обратной связи
В редких случаях появлялось сообщение об ошибке с объявлением "Пакет 'GlobalHubClientPackage' не был загружен правильно", что приводило к сбоям в работе различных функций Visual Studio. Запрос обратной связи
Запуск установщика VsixInstaller и установщика Visual Studio после завершения работы системы. Запрос обратной связи
Исправлен сценарий, в котором восстановление NuGet завершается сбоем при использовании централизованного управления пакетами с плавающими версиями и фильтрами решений.
Создание DesktopWindowXamlSource в приложении Win32 прерывается внешним образом при запуске приложения Запрос обратной связи
Visual Studio 2026 Code Analysis не поддается настройке Запрос обратной связи
Сбой эмулятора x64, когда поток ARM64EC вызывает корутину x64, которая вызывает другую корутину ARM64EC. Запрос обратной связи
Исправлена ошибка в автоматическом векторизаторе, когда может показаться, что только часть цикла была достоверно выполнена.
Не удается найти средства сборки VS2026 версии 143 Запрос обратной связи
Средний щелчок, чтобы закрыть вкладку, не работает, если вкладка не загружена Запрос обратной связи

Версия 18.0.2

Выпущено 24 ноября 2025 г.

Основные исправления ошибок От сообщества
Исправлен сбой, который повлиял на программы C++, использующие OpenMP. Запрос обратной связи
Visual Studio 2026 Insiders DataTips нечитаемы Запрос обратной связи
Изменение плагина системы управления версиями вызывает всплывающее окно Запрос обратной связи
Сообщение с информацией о переименовании зависает на экране Запрос обратной связи

Версия 18.0.1

Выпущено 19 ноября 2025 г.

Основные исправления ошибок От сообщества
Проблемы с обновлением Visual Studio 2022 17.14.15 — LINK: неустранимая ошибка LNK1000 Запрос обратной связи
(2026) Настройка переноса слов постоянно сбрасывается после открытия просмотра различий. Запрос обратной связи
Исправлена ошибка некорректной генерации кода с тернарными выражениями, содержащими выражения с массивами различных типов. Запрос обратной связи
[VS18] Отладчик не закрывает поток std, перенаправленный в файл Запрос обратной связи
Существенное зависание отладчика на первой точке останова в решении, содержащем множество элементов. Запрос обратной связи
Блоклист покрытия санитайзера неисправен Запрос обратной связи
Неверные инструкции, созданные в AVX2 Запрос обратной связи
C4319 не генерируется при компиляции кода C Запрос обратной связи
C++/CLI — встроенное пространство имен не работает Запрос обратной связи
Профилировщик производительности не загружает символы правильно для неуправляемого кода в C++/CLI Запрос обратной связи
Добавляет поддержку Xcode 26.1 для .NET для рабочих нагрузок iOS/ tvOS/ macOS/ MacCatalyst / MAUI. См. заметки о выпуске версии 26.1.10494 для рабочей нагрузки.
Индекс Columnstore, содержащий ошибку векторного столбца Запрос обратной связи

Обновление 18.0.0 ноября

Выпущено 11 ноября 2025 г.

Интегрированная среда разработки (IDE)

Вы имели в виду? 📣

Вы больше не будете путаться в файлах! Copilot интеллектуально обнаруживает намерение и предлагает лучшие совпадения при поиске в Visual Studio.

Вы когда-либо забывали имя файла, когда писали код? Новая функция Did You Mean в Visual Studio поможет вам! При поиске с помощью All-In-One Search, если Copilot обнаруживает лучшее совпадение, чем верхний результат, возможно, из-за опечатки или нечеткой памяти, он предложит, что вы имели в виду.

Правильное написание отлично работает с поиском «всё в одном», который вы можете открыть, нажав CTRL+SHIFT+P. При вводе термина поиска Copilot анализирует ваш запрос и предлагает более релевантный термин, если находит такой, который более точно соответствует вашему намерению. Эта функция полезна, если поиск не дает результатов или если первые результаты не соответствуют вашему намерению.

Скриншот предложения Скриншот, показывающий предложение альтернативного результата, если верхний результат не соответствует намерениям пользователя

Функция Возможно, вы имели в виду ускоряет поиск за счет того, что вам не приходится тратить время на исправление опечаток или в точности вспоминать имена, благодаря чему поиск становится проще и интуитивнее.

Did You Mean (preview) теперь доступен в Visual Studio и автоматически включен для всех применимых пользователей. В настоящее время эта функция работает с общедоступными GitHub репозиториями, и мы активно работаем над расширением его охвата в будущих обновлениях. Попробуйте эту функцию прямо сейчас и сообщите нам свое мнение! Вы также можете изменить параметр в Сервис → Параметры → GitHub → Copilot → Поиск → Включить поддержку поиска кода 'Вы имели в виду' в универсальном поиске (предварительная версия).

📣 Посмотрите feature ticket, чтобы поделиться отзывами и продолжить разговор.

Код покрытия 📣

Впервые покрытие кода доступно в изданиях Visual Studio Community и Professional — гарантия того, что ваш код хорошо протестирован, стала проще как никогда!

Теперь вы можете проанализировать, какие фрагменты вашего кода выполняются тестами, прямо в интегрированной среде разработки! Раньше эта функция была доступна только в выпуске Enterprise Edition, но теперь мы также добавили ее в редакции Community и Professional, благодаря чему убедиться в том, что код хорошо протестирован, стало как никогда просто.

Снимок экрана: окно

Что нового
  • Встроенные инструменты для анализа покрытия кода помогают выяснить, насколько эффективно тестирование, показывая, какая часть вашего кода покрывается модульными тестами и другими тестами кода.

  • Интеграция CI/CD позволяет автоматически анализировать покрытие в рамках непрерывных интеграционных рабочих процессов.

Как использовать эту возможность
  1. Чтобы выполнить анализ покрытия для вашего набора тестов, в меню Тест выберите Анализ покрытия кода для всех тестов.

  2. Можно также выполнить анализ покрытия кода по отношению к выбранным тестам. Для этого необходимо щелкнуть правой кнопкой мыши в Обозревателе тестов.

  1. В окне Результаты покрытия кода будут представлены результаты — процентная доля, соответствующая каждой сборке, каждому классу и методу.
  2. Visual Studio выделяет проверенные строки непосредственно в редакторе, что позволяет быстро определить, какие из них покрыты, а какие нет.

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

📣 Посмотрите feature ticket, чтобы поделиться отзывами и продолжить разговор.

Новый внешний вид и ощущения 📣

Visual Studio теперь имеет обновленный интерфейс, выровненный с системой проектирования пользовательского интерфейса Fluent. Это обновление привносит современную и целостную эстетику в интегрированную среду разработки, улучшая удобство использования, восприимчивость и визуальную четкость.

Visual Studio IDE обновлен, чтобы согласоваться с системой дизайна Fluent UI, создавая более современный и гармоничный вид. Эти изменения повышают удобство использования и доступность без нарушения привычных рабочих процессов.

В дополнение к обновленному языку проектирования мы представили 11 новых цветовых тем, благодаря чему у пользователей есть больше возможностей настроить внешний вид своей среды разработки.

Screenshot с различными цветовыми темами пользовательского интерфейса Fluent, доступными в Visual Studio с различными параметрами оттенка

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

Снимок экрана: новый редактор пользовательского интерфейса Fluent с улучшенными типографиями и визуальными элементами

Наконец, мы переработали значки, сделав их более визуально привлекательными и легко узнаваемыми, что призвано упростить навигацию и повысить общее удобство для пользователей.

Снимок экрана: новый набор значков пользовательского интерфейса Fluent с улучшенной наглядностью и современным дизайном

📣 Посмотрите feature ticket, чтобы поделиться отзывами и продолжить разговор.

Современные настройки предоставляют 📣

Новый опыт настройки предлагает упрощенный, удобный интерфейс для Visual Studio, заменяя меню > Параметры современным дизайном, интеллектуальной организацией и повышенной надежностью.

Современный интерфейс параметров теперь используется по умолчанию, заменив устаревшие средства → диалоговое окно "Параметры". Эта обновленная платформа предлагает интерфейс, соответствующий Fluent, централизованную регистрацию и улучшенную устойчивость данных, что обеспечивает четкость, согласованность и расширяемость процесса настройки конфигурации.

Снимок экрана: современный интерфейс параметров, показывающий новый дизайн пользовательского интерфейса Fluent с упорядоченными категориями и улучшенной навигацией

Параметры будут перенесены из старых версий Visual Studio с поддержкой роуминга. Однако параметры больше не будут синхронизироваться со старыми продуктами. Это обеспечивает прямую совместимость и более чистый путь миграции.

Чаще всего используемые параметры уже перемещены на новую платформу. Вы по-прежнему можете получить доступ к оставшимся параметрам с помощью устаревших ссылок, обеспечивая непрерывность при переходе на новый интерфейс.

Снимок экрана: ссылки на устаревшие параметры в современном интерфейсе для доступа к параметрам, которые еще не перенесены

📣 Посмотрите feature ticket, чтобы поделиться отзывами и продолжить разговор.

Обновление набора инструментов M365 для агентов

Вы теперь можете использовать GitHub Copilot и инструментарий агентов Microsoft 365 для того, чтобы быстрее создавать, персонализировать и отлаживать приложения и агентов M365.

1. Теперь вы можете использовать GitHub Copilot для повышения уровня приложения Microsoft 365 и разработки агент Copilot!

Вы можете быстро создавать, персонализировать и отлаживать ваши приложения и агентов M365 при поддержке Copilot.

2. Агенты Teams и шаблоны приложений, обновленные до Библиотеки ИИ Teams версии 2

Все агенты Teams и шаблоны проектов приложений Teams теперь используют новую библиотеку ИИ Teams версии 2.

Эти обновленные шаблоны позволяют вам:

  • Подключитесь к большим языковым моделям (LLMs), таким как OpenAI или Azure OpenAI, не изменяя логику основного бота.

  • Подключитесь к внешним источникам данных, чтобы приложения оставались текущими и адаптивными.

  • Используйте адаптивные карточки, экспрессивные эмодзи и богатые интерактивные элементы, которые выглядят привычно в Teams.

Теперь вы можете создавать полностью функциональные агенты Teams быстрее, наслаждаться более плавным процессом разработки и предоставлять пользовательские возможности, которые по-настоящему нативные.

3. В этом выпуске добавлена поддержка .NET 10 для шаблонов агентов M365.

4. Важные заметки об обновлениях регистрации бота

В этом выпуске внедрены изменения, связанные с переходом от многопользовательской к однопользовательской регистрации ботов в соответствии с требованиями безопасности Azure Служба Bot (ABS). Microsoft не поддерживает регистрацию ботов с несколькими клиентами. Все новые регистрации ботов теперь должны использовать конфигурацию с одним клиентом. Это изменение повышает безопасность и соответствие Microsoft 365 службам. Многопользовательская регистрация будет полностью блокироваться. Существующие многопользовательские боты будут продолжать функционировать правильно, но в конечном итоге будут постепенно перенесены на регистрацию для одного клиента. Следуйте руководству по миграции, чтобы переключить регистрацию Azure Служба Bot на однопользовательскую.

Помощник по настройке

Легко устранить отсутствующие зависимости и ускорить сборку с помощью помощника по настройке.

Помощник по настройке помогает начать работу быстрее после обновления Visual Studio. Он находит отсутствующие наборы инструментов и пакеты SDK, а затем позволяет установить их или перенацелить решения прямо из интегрированной среды разработки.

Для разработчиков C++: Помощник по настройке отображает отсутствующие инструментарии MSVC и пакеты SDK Windows. Их можно установить одним щелчком в установщике Visual Studio.

Параметры установки, перенастройки или игнорирования отсутствующего инструментария MSVC и пакетов Windows SDK

Для разработчиков .NET: Если в вашем проекте используется зафиксированный global.json, Мастер настройки связывает вас с соответствующим .NET SDK для быстрой установки в браузере.

Ссылка для скачивания .NET SDK на основе global.json

Продуктивность

Адаптивная вставка

Copilot адаптирует вставленный код к контексту файла, поэтому вы тратите меньше времени на исправление имен, форматирование и незначительные ошибки.

Вставка кода обычно означает очистку — переименование символов, исправление ошибок, изменение форматирования или преобразование между языками.

Адаптивная вставка выполняет эту работу за вас. Он анализирует место вставки и предлагает код, соответствующий файлу. Ее можно использовать в следующих целях:

  • Заполните отсутствующий интерфейс или абстрактные элементы.

  • Исправьте небольшие ошибки.

  • Применение согласованного стиля и форматирования.
  • Перевод между людьми или языками программирования — например, C++ на C#.
  • Продолжить шаблон или заполнить пустые поля.

Например, если у вас есть класс, который реализует Math, и вы вставляете метод IMath, адаптивная вставка может превратить его в Ceiling, если он все еще не реализован.

Видео, демонстрирующее, как адаптивная вставка изменяет вставленный метод для завершения реализации интерфейса.

Он также помогает с переводом текста. Здесь Copilot адаптирует код C++ к эквиваленту C# во время вставки.

Видео, в котором адаптивная вставка переводит код C++ в C# во время вставки

Как использовать его:

  1. Вставьте код как обычно {KeyboardShortcut:Edit.Paste}.

  2. Нажмите Tab, когда отображается адаптивная панель буфера, чтобы запросить рекомендацию.

  1. Просмотрите различия между исходным и скорректированным кодом и примите или отклоните.

Вы также можете активировать его напрямую:

  • Нажмите клавиши SHIFT+ALT+V , чтобы вставить и сразу же отобразить предложение.

  • Используйте Правка → Специальная вставка → Вставка с помощью Copilot.

Снимок экрана, показывающий 'Вставка с Copilot' в разделе 'Изменить → Вставка специальная'

Адаптивная вставка включена по умолчанию. Его можно переключить в Tools → Параметры → GitHub → Copilot → Редактор → Включить адаптивную вставку.

Действия кода на вашем пальце📣

Получите быструю помощь с Copilot одним щелчком правой кнопки мыши из контекстного меню в Visual Studio.

Теперь вы можете взаимодействовать с Copilot непосредственно из контекстного меню в Visual Studio! Эта новая функция позволяет быстро получить справку от Copilot для распространенных задач с одним щелчком, не требуя ввода каких-либо запросов.

В настоящее время в контекстном меню доступны пять действий Copilot, каждый из которых работает по-разному в зависимости от того, выбран ли код:

Screenshot контекстного меню Visual Studio с пятью действиями Copilot, включая описание, оптимизацию выделения, создание комментариев, создание тестов и добавление в чат

Попробуйте действия Copilot и дайте нам знать, что вы думаете! Мы будем признательны за ваши отзывы, а также за предложения по другим действиям, которые вы хотели бы видеть в контекстном меню.

📣 Посмотрите feature ticket, чтобы поделиться отзывами и продолжить разговор.

Рендеринг диаграмм Mermaid 📣

Отображение диаграмм Mermaid в редакторе Markdown и Copilot Chat.

Мы рады сообщить, что Visual Studio теперь поддерживает отрисовку диаграмм Mermaid в редакторе Markdown, где вы можете использовать свой собственный синтаксис Mermaid или позволить Copilot сгенерировать его для вас! Эта новая функция позволяет визуализировать сложные рабочие процессы и структуры данных прямо в редакторе кода. Например, в файле Markdown с помощью синтаксиса Mermaid можно создавать блок-схемы и диаграммы, и они автоматически отображаются в окне предварительного просмотра.

Если в файле Markdown присутствует синтаксис Mermaid, его можно просмотреть, если нажать кнопку Предварительный просмотр, расположенную в левом верхнем углу редактора. Диаграмма Mermaid визуализируется в области предварительного просмотра, чтобы вы могли просмотреть свои данные в визуальной форме.

Диаграмма русалки, отрисоченная в редакторе Markdown

Вы также можете попросить Copilot Chat создавать диаграммы и схемы, чтобы объяснить сложные базы кода или логику с помощью визуальных средств. Copilot ответит с созданным синтаксисом Mermaid, который можно просмотреть непосредственно для просмотра отрисоченной схемы.

Диаграмма Mermaid, сгенерированная Copilot Chat

Попробуйте уже сегодня сгенерировать диаграмму Mermaid! Мы будем рады вашим отзывам и любым предложениям по улучшению этой функции.

📣 Посмотрите feature ticket, чтобы поделиться отзывами и продолжить разговор.

Расширенные элементы управления редактором 📣

Ознакомьтесь с расширенными параметрами для максимизации вашего опыта редактирования с новыми возможностями работы с полями.

Для ускорения разработчикам необходимо обращать внимание на малозаметные подсказки и легкодоступный контекст. Вот почему для них большое значение имеет нижнее поле редактора. Однако до сих пор этот элемент предлагал ограниченную аналитику и мало возможностей для настройки, из-за чего полезная информация оставалась за пределами досягаемости.

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

Снимок экрана: поле редактора с подсказкой по выбору, отображаемой при наведении указателя мыши на несколько выделенных текстовых блоков

Теперь в этом поле отображается кодировка файла в качестве быстрой справки. У вас также есть возможность сохранить или повторно открыть файл в определенной кодировке. Это позволяет правильно отображать специальные символы, обеспечивает поддержку нескольких языков и делает файл одинаково читаемым в разных системах.

Если нажать поле с кодировкой, откроется контекстное меню, в котором вы сможете сохранить или снова открыть файл. Если вы выберете какой-либо параметр, откроется диалоговое окно с информацией о кодировке, где вы сможете выбрать кодировку в раскрывающемся списке доступных вариантов кодировки.

Снимок экрана: контекстное меню с параметрами сохранения и повторного открытия при щелчке поля кодирования в редакторе

Снимок экрана: диалоговое окно выбора кодирования с доступными параметрами кодирования в раскрывающемся списке

В это поле добавлено новое контекстное меню, позволяющее вам полностью контролировать отображаемую информацию. В это меню включены все нижние поля в редакторе, от управления масштабом до нового поля кодировки.

Снимок экрана: контекстное меню полей редактора со всеми доступными параметрами отображения полей для настройки

Эти параметры можно управлять с помощью инструментов → параметров → текстового редактора → общие → отображение → показать контекст редактирования в редакторе. Для ускорения корректировки щелкните нижнее поле правой кнопкой мыши, чтобы открыть новое контекстное меню и изменить отображаемые элементы, не прерывая рабочий процесс.

📣 Посмотрите feature ticket, чтобы поделиться отзывами и продолжить разговор.

Исключения файлов в поиске 📣

Избегайте лишнего шума, исключив из поиска файлы, которые вам никогда не нужно искать.

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

Теперь их можно исключить из результатов поиска в разделах Поиск в файлах и Быстрый поиск, чтобы сосредоточиться на том, что действительно важно.

Чтобы настроить его, перейдите к разделу "Сервис" → "Параметры → среда → поиск" и найдите новые файлы исключения из раздела результатов поиска . В этом разделе можно добавлять, редактировать и удалять шаблоны glob, чтобы точно указать, какие файлы не включать в результаты поиска.

Снимок экрана: диалоговое окно параметров с разделом

Эти исключения автоматически применяются при использовании команды Быстрый поиск.

При использовании функции Поиск в файлах эти исключения применяются вместе с настройками, которые вы задали в разделе Типы файлов. Исключения на уровне настроек легко включать и выключать с помощью кнопки, которая находится справа от раздела Типы файлов.

Снимок экрана: диалоговое окно

📣 Посмотрите feature ticket, чтобы поделиться отзывами и продолжить разговор.

Знакомые сочетания клавиш 📣

Используйте Ctrl+W для закрытия вкладок и Ctrl+P поиска кода — сочетания клавиш, которые соответствуют тому, к чему вы привыкли из других редакторов.

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

Что нового
  • CTRL+W теперь закрывает текущую вкладку (помимо клавиш CTRL+F4)

  • CTRL+P теперь открывает поиск кода (в дополнение к CTRL+T)

Эти дополнения приводят Visual Studio в соответствие с популярными редакторами, такими как VS Code, облегчая переключение между инструментами без нарушения моторной памяти. Существующие сочетания клавиш по-прежнему работают точно так же, как и раньше.

Примечание для разработчиков C#

Горячая клавиша CTRL+W не была добавлена в профиль разработчика C# из-за существующих конфликтов. Если вы хотите использовать CTRL+W для закрытия вкладок на C#, вам потребуется вручную переназначить его в разделе "Сервис" → параметры → среда → дополнительные параметры → клавиатуры.

Часть более широких усилий

Это продолжает нашу работу, чтобы сделать Visual Studio сочетания клавиш более согласованными с отраслевыми стандартами. Ранее мы добавили CTRL+SHIFT+P , чтобы открыть поиск функций и CTRL+/, чтобы переключить примечания к строке, чтобы соответствовать другим редакторам. Мы постепенно добавляли сочетания клавиш для снижения трения при перемещении между разными средами разработки, сохраняя все сочетания клавиш, на которые Visual Studio пользователи полагаются.

Вы всегда можете просматривать или настраивать сочетания клавиш, перейдя в раздел "Инструменты → параметры → среда → дополнительные параметры → клавиатуры".

📣 Посмотрите feature ticket, чтобы поделиться отзывами и продолжить разговор.

GitHub Copilot

Copilot контекст URL

Вставьте URL в Copilot Chat для получения содержимого страницы и улучшения ответов.

Когда вы чувствовали себя в тупике, если казалось, что какая-то тема не охвачена в обучающих данных Copilot? Теперь вы можете ссылаться на URL-адреса в Copilot Chat, чтобы предоставить дополнительный контекст для ваших вопросов, помогая Copilot дать вам лучшие ответы.

Указание URL-адресов в вопросах

Вставьте URL-адрес в поле запроса и Copilot извлекнет информацию из Интернета. Это помогает заполнить пустые поля, если данные обучения Copilot не охватывают раздел или когда требуется ссылаться на определенный ресурс.

Например, можно попросить Copilot помочь вам написать файл readme.md на основе рекомендаций по GitHub.

Снимок экрана Copilot Chat с запросом о помощи в написании файла readme.md с URL-адресом GitHub, вставленным для справки

Помните, что Copilot может ссылаться только на содержимое предоставленного общедоступного URL-адреса. Он не будет получать доступ к другим ресурсам или ссылкам на этой странице или страницам, требующим аутентификации. Кроме того, он может извлекать только статическое HTML-содержимое, поэтому если вы ссылаетесь на динамическую страницу, Copilot не сможет получить доступ к содержимому.

Это важно

Активируйте GitHub Copilot бесплатно и разблокируйте эту и другие функции ИИ. Никаких пробных периодов. Не нужна кредитная карта. Только ваша учетная запись GitHub.

Активируйте GitHub Copilot бесплатно прямо сейчас.


Лучшие ответы Copilot 📣

Испытайте значительно улучшенные ответы Copilot с расширенным контекстом поиска кода, распознаванием внешних символов и точной ссылкой на номер строки!

Copilot Chat становится умнее и улучшает контекст для ваших повседневных задач! Благодаря этому вы можете рассчитывать на то, что сможете получить более точные результаты при поиске по базе кода, более эффективно анализировать зависимости с внешними символами, а также на то, что вам будет проще добавлять ссылки на конкретные строки в коде.

возможности поиска кода Copilot Chat были улучшены, чтобы обеспечить более релевантные результаты. Это означает, что вы получаете более точные предложения, так как Copilot еще лучше умеет получать правильные фрагменты кода, связанные с поведением, понятиями или функциями, описанными на естественном языке. Эти улучшения благодаря использованию удаленных индексов баз кода.

Снимок экрана с расширенными результатами поиска семантического кода, с улучшенной релевантностью и точностью, в интерфейсе Copilot Chat

Осведомленность о внешних символах

Теперь Copilot Chat может выходить за рамки проекта и помогать вам с внешними символами, импортированными вашими зависимостями в C#. Более широкая область анализа позволит вам найти для ваших проектов более эффективные решения.

Скриншот, демонстрирующий, как Copilot Chat понимает внешние символы из зависимостей проекта и делает предложения по коду

Более точные номера строк

При ссылке на определенную строку в коде Copilot Chat теперь будет предоставлять более точные ответы. Это означает, что при запросе Copilot взглянуть на определенный раздел кода на естественном языке, он сможет дать более точные сведения.

Скриншот, показывающий улучшенную точность номеров строк при ссылке на определенные участки кода в Copilot Chat

📣 Посмотрите feature ticket, чтобы поделиться отзывами и продолжить разговор.

Это важно

Активируйте GitHub Copilot бесплатно и разблокируйте эту и другие функции ИИ. Никаких пробных периодов. Не нужна кредитная карта. Только ваша учетная запись GitHub.

Активируйте GitHub Copilot бесплатно прямо сейчас.


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

Агент отладчика для модульных тестов

Автоматизация исправлений в модульных тестах от неудачи до разрешения.

Новый агент отладчика упрощает отладку модульного теста, сочетая возможности обозревателя тестов, Copilot Chat и отладчика Visual Studio в полностью автоматизированный рабочий процесс.

Вот как это работает: когда модульный тест завершается сбоем, просто щелкните тест правой кнопкой мыши и выберите "Отладка с помощью Copilot". После этого будет вызван агент отладчика, который:

  • Собирает контекст из вашей рабочей области (тестовый код, связанный исходный код, последние правки).

  • Составляет предположение о первопричине сбоя.

  • Применяет специальные правки кода на основе его анализа.
  • Запускает тест в отладчике для проверки внесенных исправлений.
  • Выполняет итерацию интеллектуально, если проблема сохраняется, уточняя свою гипотезу с помощью аналитических сведений отладчика и повторяя цикл до тех пор, пока тест не пройдет.

Видеодемонстрация агента отладчика, который автоматически отлаживает и исправляет неудачные модульные тесты с помощью нескольких итераций

Устранив проблему, агент предоставляет подробный отчет о своих действиях и внесенных изменениях, что позволяет вам легко просмотреть и понять, что именно было изменено. Автоматизируя тяжелую работу, агент отладчика сокращает циклы проб и ошибок и обратной связи, а также помогает быстрее поставлять более надежный код — все время обеспечивая контроль над окончательным рассмотрением.

Расширенный анализ исключений

Анализ исключений теперь использует контекст репозитория.

Анализ исключений Visual Studio с Copilot теперь использует контекст репозитория для более эффективной отладки. Copilot осуществляет перекрестные ссылки на ваш открытый репозиторий, включая прошлые ошибки, проблемы, запросы на вытягивание и исторические исправления, чтобы предоставить значимые советы, которые имеют значение в базе кода.

Анализ исключений с демонстрацией видео контекста репозитория

В этом обновлении Copilot:

  • Определять вероятные первопричины, затронутые компоненты и потенциальные исправления.

  • Показывает аналогичные прошлые проблемы, чтобы вы могли учиться на существующих решениях.

  • Анализировать исключения в полном контексте, связывая поведение во время выполнения с историей репозитория, чтобы объяснить неожиданные значения.
  • Экономить время за счет сокращения ручного анализа, проб и ошибок при сложной отладке.

Вы получаете высокоточную отладку с учетом контекста. Сейчас это доступно для Azure DevOps с поддержкой GitHub в ближайшее время.

Встроенный оператор if-

Отлаживайте if-операторы быстрее с встроенными значениями и Аналитика Copilot.

Отладка заключается в быстром понимании поведения вашего кода, и теперь новый встраиваемый опыт для if-операторов в .NET упрощает этот процесс как никогда раньше. Благодаря этому обновлению вам больше не придется наводить курсор на переменные или переходить по нескольким строкам, чтобы выяснить, почему условие оценивается как true или false и вообще определяется ли как таковое. Вместо этого Visual Studio встроенно отображает результат оценки прямо рядом с условием.

Демонстрация видео, показывающая встроенную оценку if-statement с результатами true/false, отображаемыми непосредственно рядом с условными выражениями во время отладки

Как и существующие встроенные переменные и возвращаемые значения, вы можете навести указатель мыши на условие и выбрать Анализировать с использованием Copilot. При этом будет не только отображен конечный результат, но и выполнено разбиение условия на его подвыражения.

Copilot объясняет, как каждая часть способствовала общему результату, предоставляя вам четкое пошаговое объяснение.

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

Встроенные значения теперь показывают параметры метода и циклы с помощью Copilot Insights.

Visual Studio теперь отображает значения параметров метода и переменные цикла во время отладки. Данные моментально отображаются в контексте — непосредственно в редакторе.

Вам не нужно наводить курсор или «проходить» по строкам, чтобы увидеть значения параметров и переменных цикла. Чтобы глубже изучить сложные переменные или объекты, по-прежнему можно использовать подсказки, визуализаторы и другие инструменты.

Встроенные переменные цикла и значения параметров метода, отображаемые рядом с условными выражениями во время отладки

Наведите указатель мыши на любое встроенное значение и выберите Анализировать с Copilot. Copilot объясняет значение в контексте и помогает исследовать непредвиденные или неверные результаты, давая представление о том, почему результат может отличаться от ожидаемого.

Inline значения после возврата

Умнее отлаживайте с помощью инлайновых значений после возврата и аналитики Copilot.

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

Снимок экрана: встроенные значения после возврата, отображаемые в отладчике рядом с вызовами функций

Вы можете настраивать отображение встроенных значений (возвращаемых, возвращенных или обоих типов) через контекстное меню, открывающееся щелчком правой кнопкой мыши, в зависимости от ваших предпочтений.

Снимок экрана контекстного меню с опциями настройки, позволяющими выбирать, какие встроенные значения отображаются во время отладки

С помощью интеграции GitHub Copilot можно навести указатель мыши на значение и использовать Спросить Copilot для анализа непредвиденных результатов, выявления потенциальных первопричин или получения предложений по устранению проблем - все без нарушения потока.

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

Быстрая отладка с улучшенной производительностью F5.

Запуск отладчика с помощью F5 является одним из наиболее распространенных рабочих процессов в Visual Studio, и теперь это быстрее, чем когда-либо. Мы с особым вниманием отнеслись к повышению производительности, стремясь сократить время, необходимое для запуска отладчика, чтобы вы могли максимально быстро приступить к отладке и выполнить больше кодирования.

В приведенной ниже демонстрации вы увидите разницу: Visual Studio 2026 с .NET 10 достигает времени запуска до 30% быстрее по сравнению с Visual Studio 2022 с .NET 9 при использовании F5.

Эти преимущества поступают из оптимизации как в отладчике, так и в среде выполнения .NET, обеспечивая заметно более плавное взаимодействие.

Видеодемонстрация сравнения времени запуска использования F5 между Visual Studio 2026 с .NET 10 и Visual Studio 2022 с .NET 9, демонстрирующая значительные улучшения производительности

Поиск в визуализаторе текста 📣

Быстро найти текст внутри длинных строк во время отладки.

Теперь в средстве визуализации текста можно искать строковые значения при помощи новой функции быстрого поиска! Просто нажмите клавиши CTRL+F , пока визуализатор открыт, чтобы открыть поле поиска. Ваши поисковые запросы будут выделены в строке, что упростит вам поиск важного текста, ошибок или закономерностей.

Снимок экрана: визуализатор текста с функциями поиска с выделенными терминами поиска в длинной строке

Нужен доступ к содержимому за полем поиска? Удерживайте клавиши CTRL и пользовательский интерфейс поиска становится прозрачным, поэтому вы никогда не упускаете из виду данные под ним.

Благодаря этому навигация по журналам, BLOB-объектам JSON, сообщениям об ошибках и другим длинным строкам во время отладки станет быстрее и интуитивно понятнее.

📣 Посмотрите feature ticket, чтобы поделиться отзывами и продолжить разговор.

Агент профилировщика Copilot📣

Агент профилировщика ИИ, который анализирует производительность, предлагает исправления и помогает быстро выполнять итерацию.

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

Модуль профилировщика работает вместе с GitHub Copilot:

  • Анализ использования ЦП, выделения памяти и поведения среды выполнения

  • узкие места в производительности устройства Surface

  • Создавать новые тесты BenchmarkDotNet или оптимизировать существующие
  • Рекомендации по оптимизации и помощь в их применении
  • Проверять улучшения в управляемом цикле.

Начать работу просто. Просто задайте свой вопрос в Copilot Chat (режим агента):

  • Вариант 1. Пример тега @profiler : @profiler почему мое приложение медленно?

  • Вариант 2. Прямые запросы без тегов (включите агент профилировщика в меню "Выбор инструментов")

Пример. Почему частота кадров снижается?

Агент Copilot для профилировщика

Независимо от того, новичок вы или профи в профилировании, этот опыт предоставит вам доступ к диагностике на основе ИИ всего в одном клике. Углубленные знания не требуются — достаточно воспользоваться актуальной аналитикой.

В настоящее время поддерживается анализ высокого уровня использования ЦП и выделения объектов в .NET, а вскоре будут добавлены дополнительные сценарии.

📣 Посмотрите feature ticket, чтобы поделиться отзывами и продолжить разговор.

CodeLens для оптимизации выделения памяти

Оптимизация выделения памяти одним кликом для ваших бенчмарков.

Ранее можно активировать оптимизацию ЦП для тестовых показателей производительности .NET непосредственно из редактора с помощью CodeLens. Теперь у вас также будет возможность одним кликом улучшить управление памятью для тестов производительности.

Не нужно вручную запрашивать агент Профилировщика; Просто щелкните CodeLens над тестом, и вы увидите параметр Optimize Allocations with Copilot.

Это обновление позволяет настраивать производительность быстрее и оптимальнее, благодаря чему вы сможете находить и устранять проблемы с выделением памяти непосредственно там, где вы пишете код.

Снимок экрана, показывающий CodeLens над методом тестирования производительности с выделенной опцией

Сводка потока агента профилировщика

Интеллектуальная сводка агента профилировщика с гладким продолжением выполнения потока.

В последнем обновлении агента профилировщика реализовано интеллектуальное обобщение с продолжением потока, которое позволяет обеспечить непрерывность работы без достижения предела токенов. Когда количество токенов в чате достигнет своего предела, вам будет предложено выполнить обобщение и продолжить в новой ветке.

Сводка по потоку агента профилировщика

Агент автоматически создает краткое, насыщенное контекстными данными обобщение всего важного на настоящий момент и использует его в новом разговоре. Вы ничего не теряете — все важные детали, шаги и решения останутся с вами.

Это обновление не только позволяет использовать меньше токенов, делая взаимодействие более простым и быстрым, но и упрощает отслеживание прогресса посредством краткого обобщения действий агента. И что самое важное, оно обеспечивает абсолютную непрерывность, благодаря чему вы можете продолжить с того места, в котором остановились, без необходимости вновь выполнять свои действия.

Шаблон проекта BenchmarkDotNet

Ускорьте настройку производительности с помощью нового шаблона проекта Benchmark и встроенной поддержки профилирования— получайте аналитические сведения быстрее, чем когда-либо!

Начните тестирование производительности с помощью полностью интегрированного шаблона проекта BenchmarkDotNet, который включает встроенную поддержку профилирования загрузки ЦП и аналитические сведения Copilot.

Добавьте новый project в Visual Studio и выберите BenchmarkDotNet Project из категории Profiling. Выберите целевую .NET версию и шаблон автоматически выравнивается.

Visual Studio создает полностью настроенный проект с установками для проведения тестов производительности и диагностическими средствами для ЦП.

Снимок экрана диалогового окна

После проведения тестов профилировщик автоматически запускает сеанс диагностики, и вы можете мгновенно просматривать использование ЦП, данные дерева вызовов и узкие места производительности с дополнительными аналитическими сведениями Copilot, не покидая IDE.

Диагностика CMake только что вышла на новый уровень

Профилирование ЦП, анализ ввода-вывода файлов и трассировка событий — теперь полностью поддерживаются для проектов CMake.

Проекты CMake теперь получают встроенную поддержку для использования ЦП, средства просмотра событий, использования памяти и инструментов ввода-вывода файлов в Visual Studio. Никаких обходных путей, никакой дополнительной настройки. Инструмент использования ЦП также включает аналитические сведения о производительности с использованием Copilot, которые помогают обнаруживать и устранять узкие места в производительности еще быстрее.

Снимок экрана: интерфейс средств профилирования, показывающий использование ЦП, средство просмотра событий и средства ввода-вывода файлов, доступные для проектов CMake

Это обновление, специально адаптированное к потребностям разработчиков игр и рабочих процессов, для которых важна высокая производительность, дает вам следующие возможности:

  • Определите "узкие места", из-за которых снижается производительность, и воспользуйтесь инструментом анализа использования ЦП, чтобы оптимизировать код, потребляющий много вычислительных ресурсов.

  • Используйте средство просмотра событий для отслеживания событий в среде выполнения: исключений, журналов, запросов HTTP и т. д.

  • Используйте инструмент File IO для анализа шаблонов доступа к файлам, продолжительности и пропускной способности.
Новый опыт запуска профайлера

Более упорядоченная и удобная стартовая страница с более интеллектуальными наборами инструментов и рекомендациями Copilot.

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

В новом лаконичном ом интерфейсе четко разграничены инструменты, которые можно использовать одновременно, и инструменты, которые можно запускать только по отдельности, чтобы вы всегда знали, какие из них совместимы.

Страница запуска профилировщика

Интеграция с Copilot предоставляет контекстные рекомендации прямо на странице, помогая выбрать оптимальный профилировщик для вашего сценария. Если предложения по умолчанию не соответствуют, просто опишите проблему на простом английском языке и Copilot поможет вам.

Благодаря этому обновлению и новичкам, и опытным разработчикам теперь будет проще повысить производительность приложения.

Оптимизировать массивы нулевой длины

Превратите массивы нулевой длины в действие с помощью интеллектуальной помощи Copilot в средстве выделения .NET — оптимизируйте использование памяти, как никогда раньше!

Теперь средство выделения .NET интегрирует помощь Copilot при выделении массивов нулевой длины, предоставляя вам интеллектуальные и практические рекомендации именно там, где это нужно больше всего!

Видео-демонстрация инструмента выделения в .NET с информацией об массиве нулевой длины и Copilot, предоставляющим подробные рекомендации по анализу и оптимизации

При запуске инструмента выделения памяти .NET вкладка "Аналитика" обращает внимание на выделение памяти для массивов нулевой длины — тонкий, но часто упускаемый из виду источник ненужной нагрузки на память.

Наряду с описанием аналитических сведений вы увидите кнопку Спросить Copilot. Щелкните, и Copilot предоставит подробный анализ паттернов распределения и предложит конкретные исправления кода для оптимизации использования памяти — так же, как автоматические функции Copilot, которые вы уже любите в инструменте использования ресурсов ЦП!

Средства работы с Git

Инлайн-комментарии к pull-запросу

Теперь вы можете видеть комментарии к запросам на внесение изменений непосредственно в режиме сравнения изменений и видеть их с форматированием в стиле Markdown, что делает обратную связь более удобной для чтения и понимания в контексте.

Опыт работы с pull request в Visual Studio стал лучше.

Встроенные комментарии в представлении диффа запроса на включение изменений

По умолчанию ваши комментарии к пулл-реквесту отображаются в представлении рабочего файла. Теперь вы также можете увидеть их в диффе, чтобы увидеть полную картину изменений.

Примечания в рабочем представлении файла

В режиме сравнения (diff view) вы можете видеть комментарии рядом с исходным и обновленным кодом. Благодаря этому вам будет проще заметить, что именно изменилось и почему. В этом представлении также можно напрямую внести изменения в рабочий файл.

Комментарии в режиме просмотра изменений, включая удаленный код

Например, если в комментарии предложено добавить тесты после рефакторинга, просмотр разницы в коде поможет вам понять, какая функциональность была перемещена. Отображение исходного кода в представлении для сравнения помогает быстрее понять смысл комментария, поскольку вам не придется выяснять, куда был перемещен метод.

Комментарии в diff поддерживаются в различных типах файлов, включая файлы .cs. Мы работаем над тем, чтобы расширить поддержку, поэтому если вы заметите, что комментарии для определенного типа файлов не отображаются в диффе, сообщите нам об этом.

Поддержка визуализации Markdown в комментариях к pull-запросам

Комментарии теперь визуализируются с использованием форматирования Markdown, благодаря чему ваши отзывы проще читать и форматировать.

Комментарий pull request отображается с помощью форматирования Markdown

Попробуйте его

Включите эту функцию с помощью СредстваПараметрыПредварительные функцииКомментарии к запросам на вытягивание.

Лучшие обзоры кода 📣

Получайте улучшенные предложения от GitHub Copilot по изменениям кода, которые помогут вам обнаруживать потенциальные проблемы на ранних стадиях и улучшать качество кода.

Благодаря последним обновлениям моделей вы сможете получать еще более лучшие комментарии для проверки кода на ваши локальные изменения, еще до того, как вы их зафиксируете!

Тот же интерфейс с ключевыми улучшениями
  1. Более качественные комментарии — за счет новых моделей рассуждений проверка кода становится более точной и тщательной, позволяя выявлять малозаметные ошибки и проблемы с производительностью, которые легко пропустить при использовании традиционных методов проверки.

  2. Оптимизированная генерация контента — одновременная генерация комментариев по всему набору изменений сразу, а не отдельно по каждому файлу, улучшает производительность и способствует полноте проверки.

  3. Обновленные запросы — более четкие и непосредственные запросы обеспечивают более точную и релевантную обратную связь.

Начало работы

Если подписка Copilot включена в Visual Studio и активированы следующие флажки функций, вы увидите кнопку комментария Sparkle в окне "Изменения Git". После щелчка Copilot изучает наборы изменений и предлагает рекомендации непосредственно в вашем редакторе.

Кнопка проверки локального кода 17.14

Убедитесь, что у вас включены оба следующих флага функций:

  • СредстваПараметрыПредварительные версииКомментарии запроса на вытягивание.

  • ToolsOptionsGitHubCopilotИнтеграция с системой управления версиямиВключить предварительные функции Git.

📣 Просмотрите тикет функции, чтобы поделиться своими отзывами и продолжить беседу.А пройдите этот опрос, чтобы сделать эту функцию еще лучше.

Замечание

Эта функция должна быть включена в разделе Tools → Manage Preview Features


Контекст Git в Copilot Chat

Ссылайтесь на ваши фиксации и изменения в чате Copilot.

Copilot Chat теперь поддерживает упоминание коммитов и изменений в окне изменений Git. Вы можете попросить Copilot суммировать ваши изменения, объяснить конкретный коммит и многое другое!

Укажите свои изменения

#changes отслеживает незафиксированные изменения. Например, вы можете попросить Copilot напомнить вам о том, что вы сделали до сих пор, ссылаясь на ваш #changes.

Снимок экрана поля ввода Copilot Chat с использованием ссылки #changes для анализа незафиксированных изменений

Укажите на ваши коммиты

Когда вы начинаете вводить текст #commit:, Copilot отобразит список последних фиксаций, из которого вы сможете выбрать. Если вы хотите упомянуть более старый коммит, вы также можете сослаться на его идентификатор коммита.

Скриншот с Copilot Chat и #commit: список автозаполнения, отображающий последние фиксации для выбора

Затем можно попросить чат использовать данный коммит для таких задач, как написание модульных тестов для покрытия изменений в этом коммите или поиск возможных проблем в этом коммите.

Опробуйте эту функцию

Убедитесь, что для использования этих ссылок включен следующий флаг компонента: ToolsOptionsGitHubCopilotSource Control IntegrationEnable Git preview features.

Упрощенная навигация по комментариям в локальном анализе кода

Обзоры кода теперь еще проще с обновленным представлением списка комментариев.

Теперь легче просматривать ваш код перед коммитом.

При просмотре созданных Copilot примечаний к незафиксированным изменениям вы увидите список примечаний в окне изменений Git. Вы можете дважды щелкнуть любой комментарий в списке, чтобы перейти к этой строке кода в редакторе.

Комментарии к просмотру кода для каждого файла в окне

Следите за списком комментариев для пулл-реквестов!

Начало работы

Если подписка Copilot включена в Visual Studio и активированы следующие флажки функций, вы увидите кнопку комментария Sparkle в окне "Изменения Git". После щелчка Copilot изучает наборы изменений и предлагает рекомендации непосредственно в вашем редакторе.

Кнопка проверки локального кода 17.14

Чтобы использовать проверку локального кода, убедитесь, что вы включили оба следующих флага функций:

  • СредстваПараметрыПредварительные версииКомментарии запроса на вытягивание.

  • ToolsOptionsGitHubCopilotИнтеграция с системой управления версиямиВключить предварительные функции Git.

📣 Возьмите этот опрос , чтобы помочь сделать эту функцию еще лучше.

Замечание

Эта функция должна быть включена в разделе Tools → Manage Preview Features


Примените предложения к PR

Избегайте этапа копирования и вставки — применяйте изменения кода, предложенные человеком или ИИ, прямо в вашей интегрированной среде разработки.

Есть комментарий, запрашивающий изменение кода?

Теперь вы можете применить предлагаемые изменения непосредственно из комментария PR в интегрированной среде разработки, не нужно копировать и вставлять! Просмотрите исходный код, предлагаемое изменение и окружающий контекст в одном месте, чтобы вы могли оценить, настроить и проверить исправление немедленно.

Примените предложенное изменение из комментария PR

Как и в случае с PR-опытом в браузере, теперь вы можете мгновенно применить предложения комментариев к вашему коду. Просто щелкните значок сверка в правом верхнем углу комментария, чтобы включить предложение в код, который затем можно изменить и проверить по мере необходимости перед фиксацией.

Примените предложение из комментария

Запрос рекомендованного изменения от Copilot

Если нет предложений, вы можете запросить Copilot предложить изменение на основе комментария. Он будет учитывать сам комментарий и контекст документа.

Создайте предложение кода на основе комментария к запросу PR

Получайте предложения кода перед коммитом

Copilot также может предлагать изменения кода на основе комментариев из локального интерфейса проверки кода, помогая исправлять замечания и быстрее подготавливаться к фиксации.

Сгенерируйте предложение кода на основе комментария к локальному обзору кода

Начало работы

Чтобы испытать полный интерфейс, убедитесь, что вы включили оба следующих флага функций:

  • СредстваПараметрыПредварительные версииКомментарии запроса на вытягивание.

  • ToolsOptionsGitHubCopilotИнтеграция с системой управления версиямиВключить предварительные функции Git.

Замечание

Эта функция должна быть включена в разделе Tools → Manage Preview Features


Устаревание рабочих элементов Team Explorer

Устаревшие рабочие элементы в Team Explorer заменяются новым, более современным интерфейсом.

Возможность работы с устаревшими элементами в Team Explorer Visual Studio была исключена. В будущем рабочие элементы больше не будут открываться внутри Visual Studio, а вместо этого на веб-портале, где вы найдете современный, более согласованный интерфейс. Это изменение соответствует обновлениям, представленным в Visual Studio 2019 и 2022 годах, и гарантирует, что все функции рабочих элементов доступны через веб-интерфейс.

Дополнительные сведения см. в записи блога о рабочих элементах в Visual Studio.

Облако

Устаревание облачных служб (расширенная поддержка)

Важные сведения о предстоящем выходе из эксплуатации облачных служб (расширенная поддержка) и руководстве по миграции, которые помогут вам подготовиться.

Модель развертывания облачных служб (расширенная поддержка) будет прекращена 31 марта 2027 г. Следовательно, вспомогательные средства облачных служб будут недоступны в Visual Studio 2026 году.

До 31 марта 2027 средства облачных служб (расширенная поддержка) будут функционировать в Visual Studio 2022 и получать общее обслуживание. Мы настоятельно советуем начать планирование миграции, чтобы гарантировать простой переход.

Дополнительные сведения и подробные инструкции по переносу приложений в современные службы Azure см. в разделе оффичные объявления.

Обновление инструментов Service Fabric

Инструменты Service Fabric больше не встроены - установите их как расширение для Visual Studio.

Средства Service Fabric больше не входят в состав Visual Studio. Вы можете установить инструменты Service Fabric для Visual Studio из Visual Studio Marketplace, которые будут доступны в ближайшее время.

Поддержка Podman в контейнерных инструментах 📣

Теперь средства контейнеров поддерживают Podman, позволяя запускать контейнеры и управлять ими с помощью интерфейса командной строки Podman.

В этой новой версии Visual Studio, контейнерные инструменты теперь поддерживают Podman, популярное средство управления контейнерами, которое предоставляет бездемонный контейнерный движок. Это позволяет запускать контейнеры и управлять ими с помощью интерфейса командной строки Podman непосредственно из Visual Studio. Все ваши обычные рабочие процессы остаются прежними, просто с соответствующей поддержкой вашей в данный момент активной среды выполнения контейнера.

Начать сейчас

Чтобы приступить к работе, просто запустить Podman и открыть решение в Visual Studio. Инструменты контейнеров автоматически обнаружат среду Podman, после чего можно начинать работу.

Podman в окне инструментов для контейнеров

При необходимости можно вручную выбрать Podman в качестве среды выполнения контейнера, перейдя в раздел "Сервис → параметры → средства контейнеров" → "Общие" → среды выполнения контейнеров и выбрав Podman в раскрывающемся меню.

Примечания.
  • При внедрении этого изменения мы обновили некоторые настройки, чтобы не допустить путаницы и использовать более нейтральный язык. Например, DockerfileContext в ContainerBuildContext.

  • В этом выпуске поддержка Compose для Podman не предусмотрена.

📣 Посмотрите feature ticket, чтобы поделиться отзывами и продолжить разговор.

.NET

.NET 10 и C# 14

Поддержка для .NET 10 и C# 14 уже включена, так что вы можете воспользоваться новейшими функциями и улучшениями в ваших проектах.

Мы рады предоставить вам полную поддержку .NET 10 и C# 14 в этой последней версии Visual Studio! Это значит, что вам сразу же доступны все последние языковые функции, улучшения производительности и усовершенствования платформы без какой-либо дополнительной настройки или изменения конфигурации.

Скриншот, показывающий создание проекта .NET 10 с выбранной версией новой версии фреймворка

Интеграция удобна . Просто создайте проект, предназначенный для .NET 10 или обновите существующие проекты, и у вас будет доступ ко всем последним функциям языка C# 14 прямо в редакторе. Технология IntelliSense, возможности отладки и все остальные полюбившиеся разработчикам инструменты оптимизации продуктивности отлично взаимодействуют с новым синтаксисом и различными API. Независимо от того, создаете ли вы веб-приложения, настольные приложения или облачные службы, вы можете использовать передовые возможности, которые .NET 10 предлагает.

компилятор и средства Visual Studio были обновлены, чтобы обеспечить полную поддержку новых конструкций языка C# 14, обеспечивая точное выделение синтаксиса, обнаружение ошибок и завершение кода. Эта жесткая интеграция означает, что вы можете быть уверены в том, что ваш опыт разработки будет гладким и продуктивным, так как вы изучаете возможности с последней версией платформы .NET.

Готовы приступить к работе? Создайте проект и выберите .NET 10 в качестве целевой платформы или обновите существующие проекты, чтобы начать использовать эти интересные новые возможности сегодня!

C++

Средства сборки MSVC версии 14.50

Новые средства C++ с улучшенным соответствием C++23/26 и производительностью среды выполнения

Средства сборки Microsoft C++ (MSVC) версии 14.50 теперь доступны, предлагая новые функции C++23 и C++26, исправления ошибок и улучшения производительности во время выполнения.

Новые функции C++ в компиляторе (также см. запись блога о объявлении):

  • P0849R8 - auto(x): разложение копирования на языке

  • P2437R1 - Внедрение C++23 #warning

  • Проблема CWG 2586 — явный параметр объекта для назначения и сравнения
  • P2280R4 — разрешение ссылок на неизвестные значения во время константной оценки
  • CWG2635 ограниченные структурированные привязки
  • CWG2465 — параметры Coroutine, переданные конструктору обещаний
  • P2360R0 - Расширяет определение init-statement, чтобы разрешить alias-declaration.
  • CWG2496 ref-квалификаторы и виртуальное переопределение
  • CWG2506 — структурированные привязки и квалификаторы cv-массива
  • CWG2507 — аргументы по умолчанию для operator[]
  • CWG2585 — изменения в поведении не требуются
  • P2290R3 — поддержка C++23 шестнадцатеричных/восьмеричных последовательностей с разделителями в строковых литералах
  • CWG2521 — Устаревший оператор "строковый литерал идентификатор"
  • CWG2528 - Смягчение правил преобразования для оператора космического корабля
  • P2797R0 - Предлагаемое разрешение для CWG2692 для статических и явных методов членов объектов с теми же списками типов параметров.
  • P2266R3 — простое неявное перемещение
  • Многие исправления ошибок

Новые функции и исправления ошибок в стандартной библиотеке:Changelog — microsoft/STL Wiki

Улучшения производительности времени выполнения в компиляторе Back-end (по сравнению с последним выпуском в Visual Studio 2022 версии 17.14):

  • До +6% улучшений на основе теста производительности RenderThread из City Sample Unreal Engine

  • До +3% улучшения на основе теста City Sample GameThread в Unreal Engine


Поддержка MSVC Build Tools для Windows

Средства сборки MSVC теперь требуют Windows 10 или Windows Server 2016 в качестве минимально поддерживаемых операционных систем.

Средства сборки MSVC обновили свои минимальные поддерживаемые операционные системы. В этом выпуске средства сборки больше не поддерживают нацеливание:

  • Windows 7 / Windows Server 2008 R2

  • Windows 8 / Windows Server 2012

  • Windows 8.1 / Windows Server 2012 R2

Чтобы создавать приложения с помощью последних средств C++, целевая платформа должна быть Windows 10 или Windows Server 2016 (или более поздней версии).

Эти изменения позволяют повысить производительность, улучшенную безопасность и выравнивание с последними возможностями платформы Windows.

Отмена и удаление функций C++

Уведомления об удалении C++AMP, ARM32, и /DEBUG:FASTLINK, а также о признании устаревшим /await.

Изменения в поддержке функций и удаление возможностей C++ затрагивают разработчиков, использующих C++AMP, инструменты сборки MSVC для ARM32 и параметр компоновщика /DEBUG:FASTLINK. Если вы используете /DEBUG:FASTLINK, рекомендуется переключиться на /DEBUG:FULL улучшенную поддержку отладки. Разработчики, которые хотят создавать приложения для ARM32, могут продолжать использовать инструменты сборки Visual Studio 2022 версии v143, как описано в этом блоге Microsoft.

Кроме того, /await переключатель устарел и будет удален в будущей версии. Разработчикам рекомендуется использовать стандартные корутины C++ по умолчанию, доступные по умолчанию в C++20 или более поздней версии. Для проектов в более ранних языковых режимах рекомендуется использовать /await:strict для обеспечения совместимости до удаления коммутатора.

Обновления STL C++

Свежие улучшения стандартной библиотеки — особенно в области <regex>. Узнайте, что нового.

Мы сделали большой набор обновлений и улучшений нашей стандартной библиотеки C++, особенно в области <regex>. Полный список изменений см. в нашем журнале изменений STL .

Улучшение представления классов 📣

Поиск подстроки в представлении классов.

Окно Представление классов теперь поддерживает функцию поиска подстрок.

Снимок экрана: окно представления классов с строкой поиска, которая соответствует подстрокам в именах классов и методах

📣 Посмотрите feature ticket, чтобы поделиться отзывами и продолжить разговор.

Обновления шаблонов проекта

Используйте C++20 по умолчанию в новых проектах C++.

Многие шаблоны проектов C++ обновлены, чтобы они поддерживали сборку, в которой по умолчанию применяется стандарт C++20. Сюда входят консольное приложение, классическое приложение Windows, библиотека Dynamic-Link и статическая библиотека.

Снимок экрана: диалоговое окно свойств проекта с выбранным C++20 в качестве стандартного языка C++ по умолчанию

Выделение синтаксиса для атрибутов 📣

Атрибуты C++ теперь сияют в редакторе с красивым синтаксисом, что делает код более читаемым и визуальным!

В редактор добавлена функция стильного цветового выделения атрибутов C++, благодаря чему код лучше различим и легче читается! По умолчанию для этой функции используется та же цветовая схема, что и для типов, определенных пользователем, поэтому она полностью интегрируется с существующей цветовой схемой.

Снимок экрана: код C++ с устаревшим атрибутом, выделенным цветом, демонстрируя новую функцию выделения синтаксиса

📣 Посмотрите feature ticket, чтобы поделиться отзывами и продолжить разговор.

Улучшения clang-tidy 📣

Ускорьте анализ кода C++ с помощью расширенных параметров конфигурации clang-tidy для более быстрых сборок и настройки рабочих процессов.

В анализ кода clang-tidy добавлены захватывающие новые варианты конфигурации! Теперь вы можете выделить больше процессоров для выполнения анализа кода в рамках сборки, что ускорит ваш рабочий процесс. Кроме того, вы можете добавлять настраиваемые аргументы в командную строку, которая используется для вызова clang-tidy. Таким образом вы получите полный контроль над настройками анализа.

Доступ к этим мощным новым параметрам из Свойства проекта → Code Analysis → Clang-Tidy.

Снимок экрана диалогового окна свойств проекта с параметрами конфигурации clang-tidy, включая выделение процессора и аргументы пользовательской командной строки

📣 Посмотрите feature ticket, чтобы поделиться отзывами и продолжить разговор.

Переименование рабочей нагрузки C++ Linux

Рабочая нагрузка C++ Linux переименована в Linux, Mac и внедренную разработку с помощью C++.

Рабочая нагрузка C++ Linux в установщике Visual Studio переименована в Linux, Mac и внедренная разработка с помощью C++. Это более точно отражает свои расширенные возможности.

Скриншот установщика Visual Studio с переименованной нагрузкой для разработки под Linux, Mac и встраиваемых систем на C++

Описание рабочей нагрузки также было обновлено соответствующим образом.

Аргументы командной строки отладчика

Легко задать аргументы командной строки отладчика для любого проекта C++.

Возможность установки аргументов командной строки для отладчика из панели инструментов была расширена и теперь включает в себя все проекты .vcxproj, CMake и Unreal Engine. Кроме того, для этой функции были реализованы следующие улучшения:

  • Перейдите напрямую к настройке аргумента командной строки базового отладчика для вашего типа проекта.

Снимок экрана: раскрывающийся список аргументов командной строки с журналом и параметром открытия соответствующих параметров

  • Четкое обозначение пустой настройки аргумента командной строки, позволяющее легко идентифицировать и находить раскрывающийся список панели инструментов.

Снимок экрана: четкий текст, указывающий на отсутствие аргументов командной строки в настоящее время

Эта функция более не привязана к рабочей нагрузке «Разработка игр на C++» и может быть использована всеми разработчиками на C++ без необходимости установки каких-либо дополнительных рабочих нагрузок или компонентов.

Подробнее см. в документации Передача аргументов командной строки.

Созданные предварительно обработанные выходные данные

Создайте предварительно обработанные выходные данные для любого файла C++.

Меню предварительной обработки одного файла в Visual Studio позволяет щелкнуть правой кнопкой мыши файл C++ для мгновенного создания предварительно обработанных выходных данных, что упрощает отладку макросов и включает в себя, просматривать ошибки немедленно и избегать ручного изменения параметров проекта или прерываний для полной сборки проекта.

Снимок экрана: контекстное меню правой кнопкой мыши для файла C++ с выделенным параметром предварительной обработки

Поддержка IncrediBuild

Добавлена поддержка IncrediBuild для Visual Studio 2026, включая последнюю версию движка IncrediBuild и обновленное расширение.

Этот выпуск содержит обновление до поддержки IncrediBuild, которая включает последнюю версию обработчика IncrediBuild и обновленное расширение, которое работает с Visual Studio версии 18.0.

Поддержка CMake для генератора Visual Studio 2026

Visual Studio 2026 поставляется с последними версиями CMake, чтобы обеспечить наши последние возможности системы сборки для проектов CMake.

Visual Studio 2026 теперь включает CMake 4.1.2 по умолчанию. Теперь можно использовать CMake с последними проектами генератора Visual Studio 2026 и SLNX. Это обновление позволяет создавать с помощью набора инструментов и пакетов SDK Visual Studio 2026 непосредственно из CMake, что упрощает обновление.

Поддержка AddressSanitizer для ARM64

Построение с помощью MSVC и /fsanitize=address для целевых платформ ARM64.

В течение некоторого времени средства сборки Microsoft C++ (MSVC) поддерживают сборку проектов, предназначенных для x64 и x86, с интегрированным AddressSanitizer, который позволяет выявлять труднообнаружимые ошибки без ложных срабатываний во время выполнения, а также повышает безопасность памяти.

Теперь AddressSanitizer с MSVC можно использовать для ARM64. Пока доступна только предварительная версия данной функции, в которой возможны ошибки. Если это сделать, сообщите об этом с помощью Help → отправить отзыв → сообщить о проблеме в Visual Studio.


От всей команды спасибо за выбор Visual Studio! Чтобы ознакомиться с последними обновлениями, ресурсами и новостями, посетите Visual Studio Hub и оставайтесь на связи.

Удачного программирования!
Команда Visual Studio


Замечание

Это обновление может включать новое Microsoft или стороннее программное обеспечение, лицензированное отдельно, как указано в 3rd Party Notices или в соответствующей лицензии.

Замечание

Мы можем использовать инструмент на основе ИИ для анализа диагностических данных (таких как дампы и трассировки), собранных через Visual Studio и Visual Studio Feedback, чтобы повысить удобство работы пользователей. Если вы хотите отказаться, выполните действия, описанные здесь.